diff options
author | Ronan Waide <waider@waider.ie> | 2000-07-21 16:39:02 +0000 |
---|---|---|
committer | Ronan Waide <waider@waider.ie> | 2000-07-21 16:39:02 +0000 |
commit | c745283442cec70dbfe355a0363ac6f4aeb49877 (patch) | |
tree | ec0cdb4d95f9bd251cca503e005741b386b56e44 | |
parent | 9fedb52d8210aaf66f67977394bb2e617bf4abb7 (diff) |
Fixed some badness on the web page
New version of the bbdb manual, split per section.
-rw-r--r-- | html/bbdb.css | 3 | ||||
-rw-r--r-- | html/bbdb.html | 6074 | ||||
-rw-r--r-- | html/bbdb_1.html | 5026 | ||||
-rw-r--r-- | html/bbdb_2.html | 75 | ||||
-rw-r--r-- | html/bbdb_3.html | 253 | ||||
-rw-r--r-- | html/bbdb_4.html | 150 | ||||
-rw-r--r-- | html/bbdb_abt.html | 201 | ||||
-rw-r--r-- | html/bbdb_fot.html | 76 | ||||
-rw-r--r-- | html/bbdb_ovr.html | 54 | ||||
-rw-r--r-- | html/bbdb_toc.html | 215 | ||||
-rw-r--r-- | html/index.html | 269 |
11 files changed, 6233 insertions, 6163 deletions
diff --git a/html/bbdb.css b/html/bbdb.css new file mode 100644 index 0000000..98b81d3 --- /dev/null +++ b/html/bbdb.css @@ -0,0 +1,3 @@ +body { + background-color: #faebd7; +} diff --git a/html/bbdb.html b/html/bbdb.html index f029f79..53bf696 100644 --- a/html/bbdb.html +++ b/html/bbdb.html @@ -1,6045 +1,61 @@ -<A NAME="SEC1"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H1> 1. BBDB </H1> -<!--docid::SEC1::--> -<P> - -<B>BBDB</B> is a rolodex-like database program for GNU Emacs. <B>BBDB</B> stands -for <B><I>Insidious Big Brother Database</I></B>, and is not, repeat, <EM>not</EM> an -obscure reference to the Buck Rogers TV series. -</P><P> - -It provides the following features: -</P><P> - - -<UL> -<LI> - -Integration with mail and news readers, with little or no -interaction by the user: <P> - - -<UL> -<LI> - -easy (or automatic) display of the record corresponding to the sender of -the current message; <P> - -<LI> - -automatic creation of records based on the contents of the current -message; <P> - -<LI> - -automatic addition of data to arbitrary fields of the record -corresponding to the sender of the current message. </UL> - -<LI> - -Listing all records which match a regular expression; -<P> - -<LI> - -Listing all records which match a regular expression in a particular -field (<SAMP>`company'</SAMP> or <SAMP>`notes,'</SAMP> for example); </UL> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC2">Installation</A></TD><TD ALIGN="left">Installation</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC16">The BBDB</A></TD><TD ALIGN="left">Overview</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC21">BBDB Mode</A></TD><TD ALIGN="left">BBDB Mode</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC24">Interfaces</A></TD><TD ALIGN="left">Interfaces to various readers</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC28">Reader-specific Features</A></TD><TD ALIGN="left">Features only available to specific readers</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC35">Other Packages</A></TD><TD ALIGN="left">Using the BBDB with other packages</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC40">Options</A></TD><TD ALIGN="left">Options</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC44">Utilities</A></TD><TD ALIGN="left">Utilities</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC49">Internals</A></TD><TD ALIGN="left">BBDB Internals</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC57">Mailing Lists</A></TD><TD ALIGN="left">The BBDB mailing lists</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC58">Changes</A></TD><TD ALIGN="left">New in this version</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC61">The Latest Version</A></TD><TD ALIGN="left">Where to Get It</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC62">The Future</A></TD><TD ALIGN="left">Known Bugs, the TODO list and EOL statements</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC66">Thanks</A></TD><TD ALIGN="left">to the Ministry of Bugs</TD><TR> - -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC68">Concept Index</A></TD><TD ALIGN="left">Concept Index</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC69">Variable Index</A></TD><TD ALIGN="left">Variable Index</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC2"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC1"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC3"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.1 Installation </H2> -<!--docid::SEC2::--> -<P> - -This program consists of several groups of files, organized by -directory: -</P><P> - - -<PRE> - lisp - the main program code for the <B>BBDB</B> - tex - TeX support files for See section <A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A>, the <B>BBDB</B> - printing utility - texinfo - the documentation files for the <B>BBDB</B> - utils - miscellaneous external utility programs -</PRE> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC3">General Prerequisites</A></TD><TD ALIGN="left">General <B>BBDB</B> requirements</TD><TR> - -File Installation -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC4">Normal User</A></TD><TD ALIGN="left">"Normal" Installations</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC5">XEmacs Package</A></TD><TD ALIGN="left">Installing as an XEmacs package</TD><TR> - -Initial Configuration -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC6">Initial Configuration</A></TD><TD ALIGN="left">How to initially set up the <B>BBDB</B></TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC3"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC4"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.1.1 General Prerequisites </H3> -<!--docid::SEC3::--> -<P> - -Various parts of the <B>BBDB</B> require extra packages to be available -that are not part of the <B>BBDB</B> distribution. Please note that with -one exception no extra packages (beyond those which ship with both GNU -Emacs and XEmacs) are required for the use of <B>BBDB</B> core -functionality.<A NAME="DOCF1" HREF="bbdb.html#FOOT1">(1)</A> This one exception -applies to XEmacs 20.5 users - the <CODE>xemacs-base</CODE> package must be -installed for the correct operation of the core <B>BBDB</B> functionality. -The table below lists the requirements of the various portions of the -<B>BBDB</B>. Please note that the absence of any of the below optional -packages will not affect core <B>BBDB</B> functionality. -</P><P> - -<TABLE> - -<TR><TD><BR> BBDB file</TD> - -</TD><TD> <BR> Package needed -</TD><TD> <BR> GNU 19.34 -</TD><TD> <BR> GNU 20.2 -</TD><TD> XEmacs<BR> @center >=20.4 -</TD><TD> XEmacs<BR> @center 20.5 - -</TR> -<TR><TD><CODE>bbdb-ftp</CODE></TD> - -</TD><TD> EFS or <BR> Ange-FTP -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center P - -</TR> -<TR><TD><CODE>bbdb-gnus</CODE></TD> - -</TD><TD> Gnus[1] -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center P - -</TR> -<TR><TD><CODE>bbdb-mhe</CODE></TD> - -</TD><TD> MH-E -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center P - -</TR> -<TR><TD><CODE>bbdb-reportmail</CODE></TD> - -</TD><TD> Reportmail -</TD><TD> -</TD><TD> -</TD><TD> @center B -</TD><TD> @center P[2] - -</TR> -<TR><TD><CODE>bbdb-sc</CODE></TD> - -</TD><TD> Supercite -</TD><TD> @center B -</TD><TD> -</TD><TD> @center B -</TD><TD> @center P - -</TR> -<TR><TD><CODE>bbdb-srv</CODE></TD> - -</TD><TD> <CODE>gnuserv</CODE> and <BR> <CODE>itimer</CODE> -</TD><TD> -</TD><TD> -</TD><TD> @center B -</TD><TD> @center B - -</TR> -<TR><TD><CODE>bbdb-vm</CODE></TD> - -</TD><TD> VM -</TD><TD> -</TD><TD> -</TD><TD> @center B -</TD><TD> @center P - -</TR> -<TR><TD><CODE>bbdb-w3</CODE></TD> - -</TD><TD> <CODE>browse-url</CODE> -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center B -</TD><TD> @center P[3] -</TR></TABLE> -<P> - -<BR> <B>NOTES:</B> - -<OL> -<LI>The three year old GNUS mail/newsreader should still - -work. Please keep in mind that you have a relatively recent Emacs (GNU -19.34 or later, XEmacs 19.15 or later), you are probably using Gnus. -<LI>As of this writing, Reportmail is available as - -part of the <CODE>edit-utils</CODE> package. -<LI>As of this writing, <CODE>browse-url</CODE> is - -available as part of the <CODE>mail-lib</CODE> package. -</OL> - -Please also note that the XEmacs package locations are as of this -writing. As the XEmacs 20.5 package system is still in development, the -locations may change without warning. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC4"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC3"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.1.2 Normal User Installation </H3> -<!--docid::SEC4::--> -<P> - - -<H3>Byte Compiling the Lisp files</H3> -<P> - -First, you need to byte-compile the appropriate <B>BBDB</B> Lisp files. -While this is in theory an optional step, it is virtually required in -practice due to speed reasons. -</P><P> - -In order to successfully compile the <B>BBDB</B>, the build process needs -to know the location of the various optional packages. If the -directories containing these optional packages are in the default Emacs -search path (the <CODE>load-path</CODE> variable), no other changes need be -made for the build process to complete successfully. -</P><P> - -If the optional packages are not in the default search path, the build -process will not find them unless explicitly told of their location(s). -To tell the build process where to find Gnus, MH-E, and/or VM, set the -<CODE>GNUSDIR</CODE>, <CODE>MHEDIR</CODE>, and/or <CODE>VMDIR</CODE> variables, -respectively, in <TT>`Makefile'</TT>. To tell the build process where -to find any other package(s), add the directories containing the lisp -files for the package(s) to the <CODE>OTHERDIR</CODE> variable in -<TT>`Makefile'</TT>. If multiple directories are to be added, they should -be separated by spaces, and should <B>not</B> be quoted. For example, to -add the <TT>`/p/local/elisp/footnote'</TT> and <TT>`/p/local/elisp/sc'</TT> -directories, set <CODE>OTHERDIR</CODE> as follows: -</P><P> - - -<PRE> - <CODE>OTHERDIR=/p/local/elisp/footnote /p/local/elisp/sc</CODE> -</PRE> - -After setting the paths (if necessary), run one of the following commands: -<P> - - -<PRE> - <CODE>make bbdb</CODE> - Build the core, mailer independent, components - <CODE>make gnus</CODE> - Core components plus <CODE>Gnus</CODE> support - <CODE>make mhe</CODE> - Core components plus <CODE>MH-E</CODE> support - <CODE>make rmail</CODE> - Core components plus <CODE>RMAIL</CODE> support - <CODE>make vm</CODE> - Build the core components with <CODE>VM</CODE> support - <CODE>make all</CODE> - Core components plus support for all mailers - listed above -</PRE> - -You can also combine the above <CODE>make</CODE> commands. For example, to -build the <B>BBDB</B> with support for <CODE>Gnus</CODE> and <CODE>VM</CODE>, you can -do so by typing: -<P> - - -<PRE> -make gnus vm -</PRE> - - -<H3>Moving the files to their final destination</H3> -<P> - - -<H4>Lisp files</H4> -<P> - -As stated above, the <TT>`lisp'</TT> subdirectory contains the Emacs Lisp source -files for the <B>BBDB</B>. Therefore, these files must be in the Emacs -<CODE>load-path</CODE>. There are several ways of doing this, three of which are -described below: -</P><P> - - -<UL> -<LI> - -Add the <TT>`lisp'</TT> directory from the source distribution to the -<CODE>load-path</CODE>. This will allow you to run the <B>BBDB</B> in-place. This -method is recommended for normal users or <B>BBDB</B> developers, especially if -disk usage is an issue. It is <B>not</B> recommended for site-wide -installations. <P> - -<LI> - -Link the <TT>`lisp'</TT> directory into your <TT>`site-lisp'</TT> directory. This is -for a site-wide installation, but it is subject to the following caveat. If you -link the <TT>`lisp'</TT> directory into <TT>`site-lisp'</TT>, you will make life more -difficult for yourself down the road, as you will not be able to make changes to -the source directory (new versions, patches, etc) without having an effect on -other users who now depend on it. This directory will automatically be added to -the <CODE>load-path</CODE> when Emacs starts. <P> - -<LI> - -Make a directory whose sole purpose in life is containing the production copies -of the <B>BBDB</B> source and byte-compiled source files. Either put this -directory under <TT>`site-lisp'</TT> (or put it somewhere else and link it into -<TT>`site-lisp'</TT>). This directory will automatically be added to the -<CODE>load-path</CODE> when Emacs starts. This is the best of the three listed here, -as it allows for a degree of separation between the (possibly changing) source -tree and the production code. -</UL> - - -<H4>TeX files</H4> -<P> - -The <TT>`tex'</TT> subdirectory contains the TeX support files for -bbdb-print, the <B>BBDB</B> printing utility (See section <A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A>). -The three support files, <TT>`bbdb-cols.tex'</TT>, <TT>`bbdb-print.tex'</TT>, and -<TT>`bbdb-print-brief.tex'</TT>, must be placed in a directory that is -either on the default TeX search path or is listed in the -<CODE>TEXINPUTS</CODE> environment variable. If neither of these two options -is taken, TeX will not be able to process the file output by -<CODE>bbdb-print</CODE>. -</P><P> - - -<H4>texinfo files</H4> -<P> - -The <TT>`bbdb.info'</TT> file in this directory contains the documentation -for the <B>BBDB</B>. This file should either be linked or copied to a -directory on the default path for the <CODE>info</CODE> program or listed in -the <CODE>INFOPATH</CODE> environment variable. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC5"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC4"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.1.3 XEmacs Package Installation </H3> -<!--docid::SEC5::--> -<P> - -<B>NOTE:</B> XEmacs packages are currently supported only under XEmacs -20.5. If you are not running 20.5, you should install the <B>BBDB</B> -according to the instructions in section <A HREF="bbdb.html#SEC4">1.1.2 Normal User Installation</A>. -</P><P> - - -<H3>Byte Compiling the Lisp files</H3> -<P> - -The byte-compilation procedure is the same as that used in the Normal -User installation. See section <A HREF="bbdb.html#SEC4">1.1.2 Normal User Installation</A>. -</P><P> - - -<H3>Moving the files to their final destination</H3> -<P> - -Support is provided for the automatic installation of the <B>BBDB</B> in an -XEmacs package directory. Before installation, one or more variables -must be set in the <TT>`Makefile'</TT> as described below. -</P><P> - -<DL COMPACT> - -<DT><B><CODE>PACKAGEROOT</CODE></B> -<DD> -This variable sets the root of the XEmacs package directory. It is -<B>required</B> for XEmacs package - the installation will not even begin -unless this variable is set. -<DT><B><CODE>LINKPATH</CODE></B> -<DD> -If this variable is either undefined (commented out) or set to the empty -string, the <TT>`lisp'</TT> and <TT>`info'</TT> directories will be copied into -<CODE>PACKAGEROOT</CODE>. If <CODE>LINKPATH</CODE> is set, the <TT>`lisp'</TT> and -<TT>`info'</TT> directories will be linked into <CODE>PACKAGEROOT</CODE>. -<DT><B><CODE>LINKPATH</CODE></B> -<DD> -If this variable is either undefined (commented out) or set to the empty -string, the <TT>`lisp'</TT> and <TT>`info'</TT> directories will be linked in -with the output of <CODE>pwd</CODE> as the source directory. If something -else should be used as the source directory, <CODE>LINKPATH</CODE> should be set -to the 'something else'. If, for example, <CODE>pwd</CODE> returns -<TT>`/p/local/elisp/bbdb'</TT>, the <TT>`lisp'</TT>, <TT>`info'</TT> and <TT>`etc'</TT> -(which will include the files distributed in <TT>`tex'</TT> and -<TT>`utils'</TT>) directories -will be linked in from <TT>`/p/local/elisp/bbdb/{lisp,info,etc}'</TT>. If, -however, you prefer that they be linked in from -<TT>`/usr/local/elisp/bbdb/...'</TT>, set <CODE>LINKPATH</CODE> to -<TT>`/usr/local/elisp/bbdb'</TT>. This variable is ignored if -<CODE>LINKPATH</CODE> is not set. -</DL> -<P> - -To perform the installation, use the command <CODE>make install-pkg</CODE>. -This will compile the <TT>`lisp/auto-autoloads.el'</TT> file and will -install the source and documentation files as indicated by the variables -described above. The final installation tree will take the following form: -</P><P> - -<DL COMPACT> - -<DT><CODE>$PACKAGEROOT/</CODE> -<DD> -<DL COMPACT> - -<DT><CODE>etc/</CODE> -<DD> -<DL COMPACT> - -<DT><CODE>bbdb/</CODE> -<DD> -<DL COMPACT> - -<DT><CODE>tex/</CODE> -<DD> - <I>support files for bbdb-print, copied from the <TT>`tex'</TT> directory - in the source distribution</I> -<DT><CODE>utils/</CODE> -<DD> - <I>miscellaneous utilities, copied from the <TT>`utils'</TT> directory in - the source distribution</I> -</DL> -</DL> -<DT><CODE>info/</CODE> -<DD> -<DL COMPACT> - -<DT><CODE>bbdb/</CODE> -<DD> - <I><B>BBDB</B> documentation files, copied from the <TT>`info'</TT> directory - in the source distribution</I> -</DL> -<DT><CODE>lisp/</CODE> -<DD> -<DL COMPACT> - -<DT><CODE>bbdb/</CODE> -<DD> - <I><B>BBDB</B> lisp source files, copied from the <TT>`lisp'</TT> directory - in the source distribution</I> -</DL> -</DL> -</DL> -<P> - -After you install the package, you should probably redump XEmacs. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC6"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC7"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.1.4 Initial Configuration </H3> -<!--docid::SEC6::--> -<P> - -The simplest way to configure the <B>BBDB</B> is to include the following -forms in your Emacs configuration file: -</P><P> - - -<PRE> -<CODE>(require 'bbdb)</CODE> -<CODE>(bbdb-initialize)</CODE> -</PRE> - -<B>Note:</B> The forms above replace the autoloads needed for previous -versions of the <B>BBDB</B>. -<P> - -This will set up the <B>BBDB</B> for basic querying and record manipulation -(the Core Functionality referred to in the Prerequisites section). It -will not enable any of the mailreader-, newsreader- or other -package-specific <B>BBDB</B> features. To enable some or all of these -features, the <CODE>(bbdb-initialize)</CODE> form can be enable as shown -below. Alternatively, the features can be enabled manually as described -in the following sections. -</P><P> - - -<H3>Modifying <CODE>(bbdb-initialize)</CODE></H3> -<P> - -The <CODE>bbdb-initialize</CODE> function can be used to enable the various -package-specific <B>BBDB</B> functions. This feature activation is -accomplished through the passing of symbols which tell the function -which features to activate. These symbols are outlined below and in the -Emacs documentation for the <CODE>bbdb-initialize</CODE><A NAME="DOCF2" HREF="bbdb.html#FOOT2">(2)</A> -</P><P> - - -<H4>Initialization symbols for mail and news readers</H4> -<P> - -<DL COMPACT> - -<DT><CODE>gnus</CODE> -<DD> - Initialize support for Gnus<A NAME="DOCF3" HREF="bbdb.html#FOOT3">(3)</A>. If you pass the <CODE>gnus</CODE> symbol, you should - probably also pass the <CODE>message</CODE> symbol. -<DT><CODE>mh-e</CODE> -<DD> - Initialize support for the MH-E mail reader. -<DT><CODE>rmail</CODE> -<DD> - Initialize support for the RMAIL mail reader. -<DT><CODE>sendmail</CODE> -<DD> - Initialize support for sendmail (<KBD>M-x mail</KBD>) -<DT><CODE>vm</CODE> -<DD> - Initialize support for the VM mail reader.<A NAME="DOCF4" HREF="bbdb.html#FOOT4">(4)</A> -</DL> -<P> - - -<H4>Initialization symbols for other packages</H4> -<P> - -<DL COMPACT> - -<DT><CODE>message</CODE> -<DD> - Initialize support for Message mode (the mail composition program - included with Gnus). -<DT><CODE>reportmail</CODE> -<DD> - Initialize support for the Reportmail mail notification package. -<DT><CODE>sc</CODE> -<DD> - Initialize support for the Supercite message citation package. - Additional initialization is required for Supercite to work with the - <B>BBDB</B>. See section <A HREF="bbdb.html#SEC14">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A>. -<DT><CODE>w3</CODE> -<DD> - Initialize support for Web browsers. -</DL> -<P> - - -<H4>Initialization example</H4> -<P> - -To initialize support for Gnus 5.5, Message mode, Supercite, and Web -browsers, the following forms would be used: -</P><P> - - -<PRE> -(require 'bbdb) -(bbdb-initialize 'gnus 'message 'sc 'w3) -</PRE> - - -<H4>Manual initialization</H4> -<P> - -If your initialization needs exceed those provided by -<CODE>bbdb-initialize</CODE>, refer to the following sections for a -description of the procedures necessary for enabling <B>BBDB</B> support -for the packages listed above. The procedures described are the same as -those carried out by the <CODE>bbdb-initialize</CODE> function when passed the -appropriate symbols. That is, the procedure listed in the RMAIL Prep -section below is the same as than executed by <CODE>bbdb-initialize</CODE> -when the <CODE>rmail</CODE> symbol is passed. - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -Mail and News readers: - -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC7">Gnus Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Gnus</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC8">MH-E Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for MH-E</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC9">RMAIL Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for RMAIL</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC10">Sendmail Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Sendmail</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC11">VM Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for VM</TD><TR> - -Other packages: - -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC12">Message Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Message mode</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC13">Reportmail Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Reportmail</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC14">Supercite Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Supercite</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC15">Web Browser Prep</A></TD><TD ALIGN="left">Initializing <B>BBDB</B> support for Web Browsers</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC7"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC8"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.1 Initializing <B>BBDB</B> support for Gnus </H4> -<!--docid::SEC7::--> -<P> - -To take advantage of the <B>Gnus</B> features of the <B>BBDB</B>, add one of -the following forms to your Emacs configuration file: </P><P> - -For Gnus 3.14 or older: -</P><P> - -<CODE>(add-hook 'gnus-Startup-hook 'bbdb-insinuate-gnus)</CODE> -</P><P> - -For Gnus 3.15 or newer: -</P><P> - -<CODE>(add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)</CODE> -</P><P> - -<CODE>bbdb-insinuate-gnus</CODE> adds bindings for the default keys to -<B>Gnus</B> and configures <B>Gnus</B> to notify the <B>BBDB</B> when new -messages are loaded. This notification is required if the <B>BBDB</B> is -to be able to display <B>BBDB</B> entries for messages displayed in -<B>Gnus</B>. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC8"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC7"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC9"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.2 Initializing <B>BBDB</B> support for MH-E </H4> -<!--docid::SEC8::--> -<P> - -To take advantage of the <B>MH-E</B> features of the <B>BBDB</B>, add the -following form to your Emacs configuration file: </P><P> - - -<PRE> -(add-hook 'mh-folder-mode-hook 'bbdb-insinuate-mh) -</PRE> - -<CODE>bbdb-insinuate-mh</CODE> adds bindings for the default keys to -<B>MH-E</B> and configures <B>MH-E</B> to notify the <B>BBDB</B> when new -messages are loaded. This notification is required if the <B>BBDB</B> is -to be able to display <B>BBDB</B> entries for messages displayed in -<B>MH-E</B>. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC9"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC8"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC10"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.3 Initializing <B>BBDB</B> support for RMAIL </H4> -<!--docid::SEC9::--> -<P> - -To take advantage of the <B>RMAIL</B> features of the <B>BBDB</B>, add the -following form to your Emacs configuration file: </P><P> - - -<PRE> -(add-hook 'rmail-mode-hook 'bbdb-insinuate-rmail) -</PRE> - -<CODE>bbdb-insinuate-rmail</CODE> adds bindings for the default keys to -<B>RMAIL</B> and configures <B>RMAIL</B> to notify the <B>BBDB</B> when new -messages are loaded. This notification is required if the <B>BBDB</B> is -to be able to display <B>BBDB</B> entries for messages displayed in -<B>RMAIL</B>. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC10"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC9"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC11"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.4 Initializing <B>BBDB</B> support for Sendmail </H4> -<!--docid::SEC10::--> -<P> - -To take advantage of send-mail-mode (the one invoked with <CODE>M-x -mail</CODE>) features of the <B>BBDB</B>, add the following form to your Emacs -configuration file: </P><P> - - -<PRE> -(add-hook 'mail-setup-hook 'bbdb-insinuate-sendmail) -</PRE> - -<CODE>bbdb-insinuate-sendmail</CODE> enables auto-completion in -send-mail-mode. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC11"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC10"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC12"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.5 Initializing <B>BBDB</B> support for VM </H4> -<!--docid::SEC11::--> -<P> - -To take advantage of the <B>VM</B> features of the <B>BBDB</B>, add the -following form to your <TT>`~/.vm'</TT> file: -</P><P> - - -<PRE> -<CODE>(bbdb-insinuate-vm)</CODE> -</PRE> - -<CODE>bbdb-insinuate-vm</CODE> adds bindings for the default keys to <B>VM</B> -and configures <B>VM</B> to notify the <B>BBDB</B> when new messages are -loaded. This notification is required if the <B>BBDB</B> is to be able to -display <B>BBDB</B> entries for messages displayed in <B>VM</B>. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC12"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC11"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC13"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.6 Initializing <B>BBDB</B> support for Message mode </H4> -<!--docid::SEC12::--> -<P> - -To allow the <B>BBDB</B> to be used in Message mode, add the following form -to your Emacs initialization file: -</P><P> - - -<PRE> -<CODE>(bbdb-insinuate-message)</CODE> -</PRE> - -<CODE>bbdb-insinuate-message</CODE> adds a binding for <KBD>M-TAB</KBD> to Message -mode. This will enable completion of addressees based on <B>BBDB</B> -records. See section <A HREF="bbdb.html#SEC36">1.6.1 Using the <B>BBDB</B> with Message Mode</A> for more details on the operation -of Message mode <B>BBDB</B> record completion. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC13"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC12"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC14"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.7 Initializing <B>BBDB</B> support for Reportmail </H4> -<!--docid::SEC13::--> -<P> - -To allow the Reportmail package to report information from <B>BBDB</B> -records for new mail, add the following form to your Emacs -initialization file: -</P><P> - - -<PRE> -<CODE>(bbdb-insinuate-reportmail)</CODE> -</PRE> - -<CODE>bbdb-insinuate-reportmail</CODE> adds to the -<CODE>display-time-get-field</CODE> function to allow access to <B>BBDB</B> -records during new mail information display. See section <A HREF="bbdb.html#SEC37">1.6.2 Using the <B>BBDB</B> with Reportmail</A> -for more details on the operation of Reportmail with the <B>BBDB</B>. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC14"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC13"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC15"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.8 Initializing <B>BBDB</B> support for Supercite </H4> -<!--docid::SEC14::--> -<P> - -To allow the <B>BBDB</B> to assist in the storage of Supercite citations, -add the following form to your Emacs initialization file: -</P><P> - - -<PRE> -<CODE>(bbdb-insinuate-sc)</CODE> -</PRE> - -<CODE>bbdb-insinuate-sc</CODE> adds <B>BBDB</B> functions to two Supercite hooks -- <CODE>sc-post-hook</CODE> and <CODE>sc-attribs-postselect-hook</CODE>. See -section <A HREF="bbdb.html#SEC38">1.6.3 Using the <B>BBDB</B> with Supercite</A> for more details on the operation of Supercite -citation management using the <B>BBDB</B>. -<P> - -Three other Supercite variables must be set/modified to allow the -<B>BBDB</B> to work with it. These variables are not automatically set as -it would be impossible to reliably set them without interfering with -other user customizations. The modifications are: -</P><P> - -<DL COMPACT> - -<DT><CODE>sc-preferred-attribution-list</CODE> -<DD> -<CODE>"sc-consult"</CODE> should be added to the list. An example -configuration is: -<P> - - -<PRE> -(setq sc-preferred-attribution-list - '("sc-lastchoice" "x-attribution" "sc-consult" - "initials" "firstname" "lastname")) -</PRE> - -<DT><CODE>sc-attrib-selection-list</CODE> -<DD> -The following form should be added to <CODE>sc-attrib-selection-list</CODE>: -<P> - - -<PRE> - '(("sc-from-address" - ((".*" . (bbdb/sc-consult-attr - (sc-mail-field "sc-from-address")))))) -</PRE> - -<DT><CODE>sc-mail-glom-frame</CODE> -<DD> -The following form should be added to <CODE>sc-mail-glom-frame</CODE>, to -allow the retrieval of the name of a person who is a) in the <B>BBDB</B> -and b) has only included their net address in the message in question. -<P> - - -<PRE> - ("^$" (progn (bbdb/sc-default) - (list 'abort '(step . 0)))) -</PRE> - -An example configuration is as follows: -<P> - - -<PRE> -<CODE>(setq sc-mail-glom-frame</CODE> -<CODE> '((begin (setq sc-mail-headers-start (point)))</CODE> -<CODE> ("^x-attribution:[ \t]+.*$" (sc-mail-fetch-field t) nil t)</CODE> -<CODE> ("^\\S +:.*$" (sc-mail-fetch-field) nil t)</CODE> -<CODE> ("^$" (progn (bbdb/sc-default)</CODE> -<CODE> (list 'abort '(step . 0))))</CODE> -<CODE> ("^[ \t]+" (sc-mail-append-field))</CODE> -<CODE> (sc-mail-warn-if-non-rfc822-p (sc-mail-error-in-mail-field))</CODE> -<CODE> (end (setq sc-mail-headers-end (point)))))</CODE> -</PRE> - -</DL> -<P> - -The above is also documented in <TT>`bbdb-sc.el'</TT>. The -<CODE>bbdb/sc-setup-variables</CODE> function has been provided as an example for -Supercite variable initialization. Please note that while -<CODE>bbdb/sc-setup-variables</CODE> makes every attempt to safely configure -the Supercite variables, it will not always work. Specifically, the -variables <CODE>sc-attrib-selection-list</CODE> and <CODE>sc-mail-glom-frame</CODE> -will not be overridden if they have already been defined. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC15"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC14"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC5"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC6"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers </H4> -<!--docid::SEC15::--> -<P> - -To allow URLs to be added to <B>BBDB</B> records, add the following form to -your Emacs initialization file: -</P><P> - - -<PRE> -<CODE>(bbdb-insinuate-w3)</CODE> -</PRE> - -<CODE>bbdb-insinuate-w3</CODE> adds the definition of <KBD>:</KBD> to the W3 -keymap. -<P> - -The other <CODE>bbdb-w3</CODE> functions, specifically the passing of URLs -from <B>BBDB</B> records to Web browsers, do not require initialization -within the <B>BBDB</B>. They do, however, require the configuration of the -<CODE>browse-url</CODE> package so it knows to which Web browser URLs are to -be passed. For more details on the operation of <CODE>bbdb-w3</CODE>, see -section <A HREF="bbdb.html#SEC39">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC16"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC15"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC17"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC2"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.2 The <B>BBDB</B> </H2> -<!--docid::SEC16::--> -<P> - -This section discusses the basics of the <B>BBDB</B> - an overview of the -database's layout, and a discussion of the basic <B>BBDB</B> manipulation -commands. -</P><P> - -The database itself lives in a file which is named by the variable -<CODE>bbdb-file</CODE>. If this variable is not set, the database is assumed -to be in <TT>`~/.bbdb'</TT>. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC17">Database Fields</A></TD><TD ALIGN="left">Description of database fields</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC18">Basic Searching</A></TD><TD ALIGN="left">Basic database searching commands</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC19">Advanced Searching</A></TD><TD ALIGN="left">Advanced database searching commands</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC20">Manual Record Addition</A></TD><TD ALIGN="left">Adding records by hand</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC17"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC18"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.2.1 Database Fields </H3> -<!--docid::SEC17::--> -<P> - -The database is organized as a set of records, where each record -corresponds to one person or organization. Each record has several -fields, and each field is of one of several types. Below, the built-in -types are listed, followed by a description of how and why some types -can be used more than once in a single record: <A NAME="IDX1"></A> -</P><P> - -<TABLE> - -<TR><TD>Type</TD> - -</TD><TD> Description -</TD><TD> Notes - -</TR> -<TR><TD><CODE>name</CODE></TD> - -</TD><TD> The name of this person, or none if the record corresponds to an -organization. -</TD><TD> Single value, single instance. - -</TR> -<TR><TD><CODE>company</CODE></TD> - -</TD><TD> The name of this person's organization, or none. -</TD><TD> Single value, single instance. - -</TR> -<TR><TD><CODE>AKA</CODE></TD> - -</TD><TD> A list of other names for this person. -</TD><TD> Multiple values through commas. - -</TR> -<TR><TD><CODE>net</CODE></TD> - -</TD><TD> A list of this person's network addresses. -</TD><TD> Multiple values through commas. - -</TR> -<TR><TD><CODE>address</CODE></TD> - -</TD><TD> A list of postal (physical) addresses for this person. -</TD><TD> Multiple values through multiple occurences. - -</TR> -<TR><TD><CODE>phone</CODE></TD> - -</TD><TD> A list of telephone numbers for this person. -</TD><TD> Multiple values through multiple occurences. - -</TR> -<TR><TD><CODE>notes</CODE></TD> - -</TD><TD> Random commentary. -</TD><TD> Multiple values through multiple occurences. - -</TR></TABLE> -<P> - -The field types listed above can be classified into four categories, as -indicated by the comments in the `Notes' column. -</P><P> - -Field types marked as "Single value, single occurrence" may only occur -once per record. Each occurrence can only have a single value. For -example, there will be only one field of type <CODE>name</CODE> in a record. -It will be named <CODE>name</CODE>, and will contain a single value (the -person's name). -</P><P> - -The types marked as "Multiple values through commas" are essentially the -same as the single value, single occurrence field types, but with one -crucial difference: they can contain multiple values in the form of a -comma-separated list. So, for example, while a <CODE>name</CODE> field with a -value of "foo, bar" would be treated as if it contained the single value -"foo, bar", a <CODE>net</CODE> field with the same data would be thought of as -having two separate values - "foo" and "bar". As in the single -occurrence, single value field types, there will be only one occurrence -of each "Multiple values through commas" field type, and the occurrence -will have the same name as the type. -</P><P> - -The "Multiple values through multiple occurrences" field type is the -most flexible of the four listed here. There can be multiple -occurrences of each type. This type necessarily does not have the name -restriction imposed by the previous two types. For example, there can -be multiple fields of the <CODE>address</CODE> type, none of which have to be -named <CODE>address</CODE>. One could be named <CODE>home</CODE>, and the other -could be named <CODE>work</CODE>. -</P><P> - -Special properties of the <CODE>notes</CODE> field type: All user-defined -fields that don't fit into the other predefined field types -(<CODE>name</CODE>, <CODE>company</CODE>, <CODE>AKA</CODE>, <CODE>net</CODE>, <CODE>address</CODE>, -and <CODE>phone</CODE>) will be created as a <CODE>notes</CODE>-type field. In -addition, several of the user-defined field names are "special". That -is, the <B>BBDB</B> treats the values of these "special" fields differently -than it does other user-defined fields. The "special" fields are: -</P><P> - -<A NAME="IDX2"></A> -<DL COMPACT> - -<DT><CODE>attribution</CODE> -<DD> -<A NAME="IDX3"></A> -<I>(Available only when the Supercite-specific <B>BBDB</B> functions have been -enabled)</I> Used for the storage of Supercite attributions. For initialization -details, see section <A HREF="bbdb.html#SEC14">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A>. For usage details, see section <A HREF="bbdb.html#SEC38">1.6.3 Using the <B>BBDB</B> with Supercite</A>. The field used can be changed by changing the value of -<CODE>bbdb/sc-attribution-field</CODE>. -<DT><CODE>aka</CODE> -<DD> -Used to store non-primary names associated with a given record. -<DT><CODE>face</CODE> -<DD> -<I>(XEmacs only)</I> Used for the storage of image data. This data is to be -in the format output by <CODE>compface</CODE>, and commonly found in -<CODE>X-Face:</CODE> headers in messages. If face support has been compiled -into XEmacs, the image contained in the <CODE>face</CODE> header will be -displayed when the record is viewed. -<DT><CODE>finger-host</CODE> -<DD> -<A NAME="IDX4"></A> -Address used in place of the listed net address for fingering the entity -indicated by the record. See section <A HREF="bbdb.html#SEC21">1.3 BBDB Mode</A>. The field used can be changed by -changing the value of <CODE>bbdb-finger-host-field</CODE>. -<DT><CODE>gnus-score</CODE> -<DD> -<A NAME="IDX5"></A> -<B>Gnus</B> scoring adjustment for this person. For initialization details, see -section <A HREF="bbdb.html#SEC7">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A>. For usage details, see section <A HREF="bbdb.html#SEC29">1.5.1 Gnus-specific Features</A>. The field used -can be changed by changing the value of <CODE>bbdb/gnus-score-field</CODE>. -<DT><CODE>mail-alias</CODE> -<DD> -Value used instead of <CODE>name</CODE> for completion. See section <A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A>. -<DT><CODE>mail-name</CODE> -<DD> -<I>(Available only when the Reportmail-specific <B>BBDB</B> functions have been -enabled)</I> Used for the storage of non-default names to be used in the -reporting of new mail by Reportmail. For initialization details, -see section <A HREF="bbdb.html#SEC13">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A>. For usage details, see section <A HREF="bbdb.html#SEC37">1.6.2 Using the <B>BBDB</B> with Reportmail</A>. -<DT><CODE>mark-char</CODE> -<DD> -The field containing the character to be used for marking a given poster -in the Gnus Summary Buffer. For usage details, see section <A HREF="bbdb.html#SEC31">1.5.1.2 Gnus Summary Buffer Enhancements</A>. -<DT><CODE>tex-name</CODE> -<DD> -<A NAME="IDX6"></A> -<A NAME="IDX7"></A> -The value of this field is used in place of the <CODE>name</CODE> field when -printing the database using <CODE>bbdb-print</CODE>. See section <A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A>. -<DT><CODE>www</CODE> -<DD> -This field contains the URL assocated with the <B>BBDB</B> record. Common uses -are with <CODE>bbdb-snarf</CODE> (see section <A HREF="bbdb.html#SEC47">1.8.3 <CODE>bbdb-snarf</CODE></A>) and the <B>BBDB</B>/Web Browser -functionality (for initialization details, see section <A HREF="bbdb.html#SEC15">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>. For -usage details, see section <A HREF="bbdb.html#SEC39">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>). -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC18"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC17"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC19"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.2.2 Basic searching commands </H3> -<!--docid::SEC18::--> -<P> - -You can list the contents of the database with the command -<KBD>M-x bbdb</KBD>. You will be prompted for a regular expression, and all -records which match that regexp in the name, company, network address, -or any notes fields will be displayed.<A NAME="IDX8"></A> -<A NAME="IDX9"></A> -<A NAME="IDX10"></A> -<A NAME="IDX11"></A> -<A NAME="IDX12"></A> -<A NAME="IDX13"></A> -</P><P> - -A narrower search may be made by using the commands <KBD>bbdb-name</KBD>, -<KBD>bbdb-company,</KBD> <KBD>bbdb-net,</KBD> or <KBD>bbdb-notes</KBD>. These commands -limit their searches to the name, company, email address, and notes -fields, respectively. If these commands are given a prefix argument, -the listing displayed will be one line per entry; otherwise, the full -database entry will be shown on multiple lines. -</P><P> - -The functions described above are predefined to certain keys in the -<CODE>*BBDB*</CODE> buffer. See section <A HREF="bbdb.html#SEC21">1.3 BBDB Mode</A> for more details. -</P><P> - -<A NAME="IDX14"></A> -The <CODE>bbdb-notes</CODE> command will prompt for the notes field to search -(<KBD>RET</KBD> for all). In this way you can limit your searches to the -contents of one particular user-defined notes field. (You can add -user-defined fields with the <CODE>bbdb-insert-new-field</CODE> command; -See section <A HREF="bbdb.html#SEC21">1.3 BBDB Mode</A>.)</P><P> - -<A NAME="IDX15"></A> -<A NAME="IDX16"></A> -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC19"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC18"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC20"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.2.3 Advanced searching commands </H3> -<!--docid::SEC19::--> -<P> - -The following functions can be used to search for records based on -creation and/or modification dates. These functions will match records -that have <CODE>timestamp</CODE> and/or <CODE>creation-date</CODE> fields (as -appropriate. See section <A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A> for more information on these -fields, which are created by default. -</P><P> - -<DL COMPACT> - -<DT><CODE>bbdb-timestamp-older</CODE> -<DD> -<A NAME="IDX17"></A> - -Display all records modified before a given date. If this function is -called interactively, it will prompt for a date. If it is being called -non-interactively, the date should be provided as a string in -<SAMP>`yyyy-mm-dd'</SAMP> format. -<P> - -<A NAME="IDX18"></A> -<DT><CODE>bbdb-timestamp-newer</CODE> -<DD> -Display all records modified after a given date. If this function is -called interactively, it will prompt for a date. If it is being called -non-interactively, the date should be provided as a string in -<SAMP>`yyyy-mm-dd'</SAMP> format. -<P> - -<A NAME="IDX19"></A> -<DT><CODE>bbdb-creation-older</CODE> -<DD> -Display all records created before a given date. If this function is -called interactively, it will prompt for a date. If it is being called -non-interactively, the date should be provided as a string in -<SAMP>`yyyy-mm-dd'</SAMP> format. -<P> - -<A NAME="IDX20"></A> -<DT><CODE>bbdb-creation-newer</CODE> -<DD> -Display all records created after a given date. If this function is -called interactively, it will prompt for a date. If it is being called -non-interactively, the date should be provided as a string in -<SAMP>`yyyy-mm-dd'</SAMP> format. -<P> - -<A NAME="IDX21"></A> -<DT><CODE>bbdb-creation-no-change</CODE> -<DD> -Display all records that have not been changed since creation. -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC20"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC19"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.2.4 Manual record addition </H3> -<!--docid::SEC20::--> -<P> - -There are several ways to add new entries to the Insidious Big Brother -Database; the most straightforward is to use <KBD>M-x bbdb-create</KBD>, -which will prompt you for all relevant information. However, the -easiest way is to allow them to be added automatically by one of the -mail or news-reading interfaces (See section <A HREF="bbdb.html#SEC24">1.4 Interfaces</A>). </P><P> - -<A NAME="IDX22"></A> -<A NAME="IDX23"></A> -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC21"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC20"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC22"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC16"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.3 BBDB Mode </H2> -<!--docid::SEC21::--> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC22"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC23"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.3.1 Functions bound to keys in <B>BBDB</B> Mode </H3> -<!--docid::SEC22::--> -<P> - -When the <SAMP>`*BBDB*'</SAMP> buffer is active (either summoned by one of the -commands in the previous section [See section <A HREF="bbdb.html#SEC16">1.2 The <B>BBDB</B></A>] or by your mail -or news program), a variety of commands become available for database -manipulation. Some of the commands listed below take numeric arguments. -These arguments can be generated by entering the number before pressing -the key(s) corresponding to the desired command. The output (if any) of -the listed commands will be displayed in the <SAMP>`*BBDB*'</SAMP> buffer, and -can be navigated through using the usual cursor motion commands. -<A NAME="IDX24"></A> -<A NAME="IDX25"></A> -</P><P> - -<DL COMPACT> - -<DT><KBD>e</KBD> -<DD> -<A NAME="IDX26"></A> -<A NAME="IDX27"></A> -<A NAME="IDX28"></A> -(<CODE>bbdb-edit-current-field</CODE>) Edit the field on the current line. If -the cursor is in the middle of a multi-line field, such as an address or -comments section, then the entire field is edited, not just the current -line. <P> - -<DT><KBD>;</KBD> -<DD> -<A NAME="IDX29"></A> -(<CODE>bbdb-edit-notes</CODE>) A shortcut for editing the <VAR>notes</VAR> field. <P> - -<DT><KBD>d, C-k</KBD> -<DD> -<A NAME="IDX30"></A> -<A NAME="IDX31"></A> -<A NAME="IDX32"></A> -(<CODE>bbdb-delete-current-field-or-record</CODE>) Delete the field on the -current line. If the current line is the first line of a record, the -<B>BBDB</B> will, after prompting the user, delete the entire record from -the database. -<P> - -<DT><KBD>C-o</KBD> -<DD> -<A NAME="IDX33"></A> -<A NAME="IDX34"></A> -<A NAME="IDX35"></A> -<A NAME="IDX36"></A> -(<CODE>bbdb-insert-new-field</CODE>) Inserts a new field into the current -record. You are prompted (with completion) for the type of field to -insert (<B>phone</B>, <B>address</B>, <B>notes</B>, etc); if the string you type -is not a known field type, you will be asked whether to add a new field -with the entered name of type <CODE>notes</CODE>. -<P> - -<A NAME="IDX37"></A> -<A NAME="IDX38"></A> -<A NAME="IDX39"></A> -If you are inserting a new phone-number field, you can control whether -it is a North American or European phone number by providing a prefix -argument. A prefix arg of <KBD>^U</KBD> means it's to be a euronumber, and -any other prefix arg means it's to be a a structured North American -number. If no prefix argument is supplied, the style used is controlled -by the variable <CODE>bbdb-north-american-phone-numbers-p</CODE>. </P><P> - -<DT><KBD>C-x C-t</KBD> -<DD> -<A NAME="IDX40"></A> -<A NAME="IDX41"></A> -<A NAME="IDX42"></A> -(<CODE>bbdb-transpose-fields</CODE>) This is like the <CODE>transpose-lines</CODE> -command, but it is for <B>BBDB</B> fields. If the cursor is on a field of -a <B>BBDB</B> record, that field and the previous field will be -transposed.<P> - -With non-zero numeric argument <VAR>ARG</VAR>, the previous field is moved -past <VAR>ARG</VAR> fields. With argument 0, the field indicated by -<I>point</I> is interchanged with the one indicated by <I>mark</I>. -</P><P> - -Both fields must be in the same record, and must be of the same basic type -(that is, you can use this command to change the order in which phone-number -fields are listed, but you can't use it to make an address appear before a -phone number; the order of field types is fixed.)</P><P> - -<DT><KBD>n, p</KBD> -<DD> -<A NAME="IDX43"></A> -<A NAME="IDX44"></A> -(<CODE>bbdb-next-record</CODE>, <CODE>bbdb-prev-record</CODE>) Move to the next and -previous displayed record, respectively. <P> - -<DT><KBD>t</KBD> -<DD> -<A NAME="IDX45"></A> -(<CODE>bbdb-elide-record</CODE>) Toggles whether the current record is displayed -in a one-line listing, or a full multi-line listing. With a numeric argument -of 0, the current record will unconditionally be made elided; with any -other argument, the current record will unconditionally be shown -expanded. <P> - -If <KBD>*t</KBD> is used instead of simply <KBD>t</KBD>, then the state of all -records will be changed instead of just the one at point. In this case, -a numeric argument of 0 means that all records will unconditionally be -made elided; any other numeric argument means that all of the records -will unconditionally be shown expanded; and no numeric argument means -that the records are made to be in the opposite state of the record -under point. </P><P> - -<DT><KBD>o</KBD> -<DD> -<A NAME="IDX46"></A> -(<CODE>bbdb-omit-record</CODE>) Removes the current record from the display, -but does not delete it from the database; it merely makes it seem as if -the most recent search had not matched this record. With a numeric -argument, omit the next N records. With a negative argument, go -backwards. <P> - -<DT><KBD>m</KBD> -<DD> -<A NAME="IDX47"></A> -<A NAME="IDX48"></A> -<A NAME="IDX49"></A> -(<CODE>bbdb-send-mail</CODE>) Begin composing mail to the person represented -by the current record. The first email address is used. Normally, the -mail-sending package which is used is determined by which mail-reading -package is loaded; that is, if <B>MH-E</B> is loaded, then <CODE>mh-send</CODE> -will be used; if <B>VM</B> is loaded, then <CODE>vm-mail</CODE> is used; if -<B>message</B> is loaded, then it is used; otherwise, <CODE>mail</CODE> is used. -You can override this by setting the variable -<CODE>bbdb-send-mail-style</CODE> to one of the symbols <CODE>vm</CODE>, <CODE>mh</CODE>, -<CODE>message</CODE>, or <CODE>mail</CODE>. <P> - -If <KBD>*m</KBD> is used instead of simply <KBD>m</KBD>, then mail will be sent to -all of the folks listed in the <SAMP>`*BBDB*'</SAMP> buffer instead of just the -person under point. </P><P> - -This function does not at present use the facility provided by -<CODE>compose-mail</CODE> and <CODE>mail-user-agent</CODE>. In a future version of -the <B>BBDB</B>, it will. -</P><P> - -<DT><KBD>s, C-x C-s</KBD> -<DD> -<A NAME="IDX50"></A> -<A NAME="IDX51"></A> -(<CODE>bbdb-save-db</CODE>) Saves the <B>BBDB</B> file to disk. -<P> - -<DT><KBD>r</KBD> -<DD> -<A NAME="IDX52"></A> -<A NAME="IDX53"></A> -<A NAME="IDX54"></A> -(<CODE>bbdb-refile-record</CODE>) Merge the current record into some other record; -that is, delete the record under point after copying all of the data -within it into some other record. this is useful if you realize that -somehow a redundant record has gotten into the database, and you want to -merge it with another. <P> - -If both records have names and/or companies, you are asked which to use. -Phone numbers, addresses, and network addresses are simply concatenated. -The first record is the record under the point; the second is prompted -for. Completion behavior is as dictated by the variable -<CODE>bbdb-completion-type</CODE>. </P><P> - -<DT><KBD>M-d</KBD> -<DD> -<A NAME="IDX55"></A> -<A NAME="IDX56"></A> -<A NAME="IDX57"></A> -(<CODE>bbdb-dial</CODE>) If you are on a machine with the ability to play -sounds, this command will play the appropriate tones on the builtin -speaker to dial the phone number corresponding to the current line. If -the point is at the beginning of a record, dial the first phone number. -This does not dial the extension. This also does not dial the area code -if it is the same as <CODE>bbdb-default-area-code</CODE>, unless a prefix -argument is given. <P> - -The <B>BBDB</B> comes configured to play sounds on machines running -Solaris. If you are on another type of machine, you must set -<CODE>bbdb-sound-player</CODE> to a string containing the name of the audio -file player on your machine. You must also set <CODE>bbdb-sound-files</CODE> -to a vector of arguments to be passed to the program indicated by -<CODE>bbdb-sound-player</CODE>. <CODE>bbdb-sound-player</CODE> will be called with -the first element of <CODE>bbdb-sound-files</CODE> for the digit <SAMP>`0'</SAMP>, the -second for <SAMP>`1'</SAMP>, the third for <SAMP>`2'</SAMP>, and so on. -</P><P> - -<DL COMPACT> - -<DT><CODE>bbdb-dial-local-prefix</CODE> -<DD> -<A NAME="IDX58"></A> -Set this to a string of digits if your phone system requires you to dial -some code to access an outside line.<P> - -<DT><CODE>bbdb-dial-long-distance-prefix</CODE> -<DD> -<A NAME="IDX59"></A> -Set this to a string of digits if your phone system requires you to dial -some code before dialing a long-distance number (one not in your local -area code.)</DL> -<P> - -<DT><KBD>f</KBD> -<DD> -<A NAME="IDX60"></A> -<A NAME="IDX61"></A> -(<CODE>bbdb-finger</CODE>) This command fingers the network address of a -<B>BBDB</B> record. If this command is executed from the <SAMP>`*BBDB*'</SAMP> buffer, -it fingers the network address of the record which is at point; otherwise, -it prompts in the minibuffer (with completion) for a user to finger. With a -numeric prefix argument, it fingers the <I>N</I>th network address of the -current record; with a prefix argument of <KBD>^U</KBD>, it fingers all of them. -The <SAMP>`*finger*'</SAMP> buffer is filled asynchronously, meaning that you don't -have to wait around for it to finish; but fingering another user before -the first finger has finished could have unpredictable results.<P> - -If this command is executed from the <SAMP>`*BBDB*'</SAMP> buffer, it may be prefixed -with <KBD>*</KBD> (as in <KBD>*f</KBD> instead of simply <KBD>f</KBD>), meaning to -finger all of the users currently listed instead of just the one under -point. The numeric prefix argument has the same interpretation. </P><P> - -<A NAME="IDX62"></A> -You can define a special network address to "finger" by defining a field -<CODE>finger-host</CODE>. The name of the field to be fingered can be changed -by setting <CODE>bbdb-finger-host-field</CODE>. -</P><P> - -<DT><KBD>q</KBD> -<DD> -<A NAME="IDX63"></A> -(<CODE>bbdb-bury-buffer</CODE>) Hides the <SAMP>`*BBDB*'</SAMP> buffer. <B>Note:</B> -This command does <B>not</B> kill the <SAMP>`*BBDB*'</SAMP> buffer. -<P> - -<DT><KBD>?</KBD> -<DD> -<A NAME="IDX64"></A> -(<CODE>bbdb-help</CODE>) This displays a one-line help message in the -minibuffer, showing some of the most common bbdb-mode commands. -<P> - -<DT><KBD>i</KBD> -<DD> -<A NAME="IDX65"></A> -(<CODE>bbdb-info</CODE>) This documentation is displayed. Please note that -either <TT>`bbdb'</TT> or <TT>`bbdb.info'</TT> must be installed in one of the -info directories known to Emacs for this command to work. -<P> - -<DL COMPACT> - -<DT><CODE>bbdb-info-file</CODE> -<DD> -<A NAME="IDX66"></A> -If this documentation is not installed in the standard Info directory, -then you should set this variable to the name of the texinfo-formatted -version of this file; the <CODE>bbdb-info</CODE> command will use this file -instead.</DL> -<P> - -<DT><KBD>W</KBD> -<DD> -<A NAME="IDX67"></A> -<A NAME="IDX68"></A> -(<CODE>bbdb-www</CODE>) Displays the Web page listed in the <CODE>www</CODE> field -of the current record. See section <A HREF="bbdb.html#SEC39">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>. -<P> - -<DT><KBD>P</KBD> -<DD> -<A NAME="IDX69"></A> -<A NAME="IDX70"></A> -(<CODE>bbdb-print</CODE>) Creates a TeX file that contains a pretty-printed version -of <B>BBDB</B> records. If prefixed by <KBD>*</KBD>, only the records currently -displayed will print. See section <A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A>. -<P> - -<DT><KBD>h</KBD> -<DD> -<A NAME="IDX71"></A> -Moves point to another window via the <CODE>other-window</CODE> function. -<P> - -<DT><KBD>c</KBD> -<DD> -<A NAME="IDX72"></A> -<A NAME="IDX73"></A> -(<CODE>bbdb-create</CODE>) Create a new database record from information -supplied by the user. -<P> - -<DT><KBD>C</KBD> -<DD> -<A NAME="IDX74"></A> -<A NAME="IDX75"></A> -(<CODE>bbdb-changed</CODE>) Display all records that have been changed since -the last time the database was saved. -<P> - -<DT><KBD>b</KBD> -<DD> -<A NAME="IDX76"></A> -<A NAME="IDX77"></A> -(<CODE>bbdb</CODE>) Begin a new database search. The results of the new -search will be displayed in place of the results of the old search. -<P> - -<DT><KBD>S a, S c, S o, S n</KBD> -<DD> -<A NAME="IDX78"></A> -<A NAME="IDX79"></A> -<A NAME="IDX80"></A> -<A NAME="IDX81"></A> -<A NAME="IDX82"></A> -(<CODE>bbdb-net</CODE>, <CODE>bbdb-company</CODE>, <CODE>bbdb-notes</CODE>, -<CODE>bbdb-name</CODE>)<BR> -Begin a new database search. This search will be -limited to the net address, company, notes, or name fields, -respectively, of database records. See section <A HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A> for more -details. -<P> - -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC23"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC22"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.3.2 Other database manipulation functions </H3> -<!--docid::SEC23::--> -<P> - -<DL COMPACT> - -<DT><CODE>bbdb-kill-older</CODE> -<DD> -<A NAME="IDX83"></A> - -If called interactively (or with a single argument - a date in -<SAMP>`yyyy-mm-dd'</SAMP> format), it will kill all records that were last -modified before the given date as determined by the <CODE>timestamp</CODE> -field. See section <A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A>. If called non-interactively with a -date (in <SAMP>`yyyy-mm-dd'</SAMP> format), a comparison function and an action -function, the comparison function is applied to the <CODE>timestamp</CODE> -field of all records, and the action function applied to those for whom -the comparison function returns true. If <SAMP>`nil'</SAMP> is supplied as the -comparison function, <CODE>string-lessp</CODE> is used. -<P> - -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC24"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC23"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC25"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC21"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.4 Interfaces </H2> -<!--docid::SEC24::--> -<P> - -The <B>BBDB</B> interfaces itself with several message-handling packages, but -certain parameters control its behavior depending on whether it is -being used from within a mail reader or a news reader. </P><P> - -In all of these packages, two new keybindings will be added: -</P><P> - -<DL COMPACT> - -<DT><KBD>:</KBD> -<DD> -<A NAME="IDX84"></A> -<A NAME="IDX85"></A> -<A NAME="IDX86"></A> -<A NAME="IDX87"></A> -<A NAME="IDX88"></A> -(<CODE>bbdb/<I>package</I>-show-sender</CODE>) Displays the <B>BBDB</B> entry corresponding -to the author of the current message. If there is none, you will be -asked whether to create one. The function called is -<CODE>bbdb/<I>package</I>-show-sender</CODE>, where <CODE><I>package</I></CODE> is either -<CODE>gnus</CODE>, <CODE>mh</CODE>, <CODE>rmail</CODE>, or <CODE>vm</CODE>, depending on the -mail or news program being used when the command is invoked. -<P> - -<DT><KBD>;</KBD> -<DD> -<A NAME="IDX89"></A> -<A NAME="IDX90"></A> -<A NAME="IDX91"></A> -<A NAME="IDX92"></A> -<A NAME="IDX93"></A> -(<CODE>bbdb/<I>package</I>-annotate-sender</CODE>) Lets you edit the <SAMP>`notes'</SAMP> -field of the <B>BBDB</B> record corresponding to the sender of the current -message. If there is no record for the current author, you will be -asked whether to create one. The function called is -<CODE>bbdb/<I>package</I>-annotate-sender</CODE>, where <CODE><I>package</I></CODE> is -either <CODE>gnus</CODE>, <CODE>mh</CODE>, <CODE>rmail</CODE>, or <CODE>vm</CODE>, depending on -the mail or news program being used when the command is invoked. -</DL> -<P> - -These keybindings (and several other features) will not be -available unless you call the appropriate "insinuation" -function; See section <A HREF="bbdb.html#SEC2">1.1 Installation</A>.</P><P> - -It is possible to configure <B>BBDB</B> so that it automatically creates a -record when it sees a message from a person who is not in the database. -It is also possible to have text automatically added to the notes field -of the corresponding record depending on the contents of the message -headers. See section <A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A> </P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC25">Mail Reading Interfaces</A></TD><TD ALIGN="left">Mail Reading Interfaces</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC26">News Reading Interfaces</A></TD><TD ALIGN="left">News Reading Interfaces</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC27">Mail Sending Interfaces</A></TD><TD ALIGN="left">Mail Sending Interfaces</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC25"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC26"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.4.1 Mail Reading Interfaces </H3> -<!--docid::SEC25::--> -<P> - -There are BBDB interfaces for the following mail readers: -</P><P> - - -<UL> -<LI> - -<B>Gnus</B>, a news- and email- reader written by Lars Magne Ingebrigtsen -(based on <B>GNUS</B> by Mansanobu Umeda). -<LI> - -<B>MH-E</B>, the Emacs interface to <B>Mail Handler</B> (<B>MH</B>), from the -standard emacs library, but packaged separately from XEmacs since -version 20.4.<LI> - -<B>RMAIL</B>, from the standard emacs library (packaged separately for -XEmacs users as of 20.4); -<LI> - -<B>View Mail</B>, by Kyle Jones, version 5.31 or newer; -</UL> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC26"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC25"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC27"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.4.2 News Reading Interfaces </H3> -<!--docid::SEC26::--> -<P> - -There are BBDB interfaces for the following news readers: -</P><P> - - -<UL> -<LI> - -<B>GNUS</B>, a newsreader written by Masanobu Umeda. <LI> - -<B>Gnus</B>, the modern news- and email-reading incarnation of <B>GNUS</B>. -<B>Gnus</B> is written by Lars Magne Ingebrigtsen.</UL> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC27"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC26"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.4.3 Mail Sending Interfaces </H3> -<!--docid::SEC27::--> -<P> - -<A NAME="IDX94"></A> -<A NAME="IDX95"></A> -<A NAME="IDX96"></A> -<A NAME="IDX97"></A> -When sending mail, the keystroke <KBD>M-TAB</KBD> is bound to the -function <CODE>bbdb-complete-name</CODE>. This will take the string that -you have typed (from point back to the preceding colon, comma, or -the beginning of the line) and will complete that against the -contents of the database. What you have typed may be an initial -subsequence of a person's full name or network address; if it -completes ambiguously, then what you have typed will be replaced -with the common portion of the matches. Typing <KBD>M-TAB</KBD> again will -show a list of possible completions. If it completes unambiguously, -then an address of the form <CODE>User Name <email-address></CODE> will -be inserted. The variable <CODE>bbdb-completion-type</CODE> controls -whether completion is done on real names, or network addresses, or -both. </P><P> - -This binding is automatically set by the various insinuation functions -documented earlier in this manual. (See section <A HREF="bbdb.html#SEC6">1.1.4 Initial Configuration</A>) -Briefly, the forms for these functions are: -</P><P> - -<DL COMPACT> - -<DT><B>Gnus</B> -<DD> -<CODE>(setq gnus-Startup-hook 'bbdb-insinuate-gnus)</CODE> <I>for Gnus 3.14 or older</I><BR> -<CODE>(setq gnus-startup-hook 'bbdb-insinuate-gnus)</CODE> <I>for Gnus 3.15 or newer</I> -<DT><B>MH-E</B> -<DD> -<CODE>(setq mh-folder-mode-hook 'bbdb-insinuate-mh)</CODE> -<DT><B>RMAIL</B> -<DD> -<CODE>(setq rmail-mode-hook 'bbdb-insinuate-rmail)</CODE> -<DT><B>sendmail</B> -<DD> -<CODE>(setq mail-setup-hook 'bbdb-insinuate-sendmail)</CODE> -<DT><B>VM</B> -<DD> -<CODE>(bbdb-insinuate-vm)</CODE> <I>Add to <TT>`~/.vm'</TT> file</I> -</DL> -<P> - -The above forms should be added to your Emacs initialization file, -except where otherwise noted. -</P><P> - -You can control what "real name" is inserted with the -<CODE>mail-alias</CODE> field: if a record has a <CODE>mail-alias</CODE> -field, then that is used instead of their <CODE>name</CODE> field. -</P><P> - -<A NAME="IDX98"></A> -If the variable <CODE>bbdb-completion-display-record</CODE> is true (the -default) then when you successfully complete an address with -<KBD>M-TAB</KBD>, the corresponding record will be appended to -the <SAMP>`*BBDB*'</SAMP> buffer. The buffer will not be displayed if it -is not already visible, but the record will be displayed there. -</P><P> - -<A NAME="IDX99"></A> -<A NAME="IDX100"></A> -When sending mail, you can use the command <CODE>bbdb-yank-addresses</CODE> -to CC the current message to the people currently displayed in -the <SAMP>`*BBDB*'</SAMP> buffer. This is useful if you are in the midst of -sending or replying to a message, and you decide to add some recipients. -You can use one of the <KBD>M-x bbdb</KBD> commands to display the set of -people that you want to CC the message to, and then execute this command -to add them to the list. -</P><P> - -<A NAME="IDX101"></A> -<A NAME="IDX102"></A> -<A NAME="IDX103"></A> -<A NAME="IDX104"></A> -</P><P> - -If you are using Jamie Zawinski's <TT>`mail-abbrevs.el'</TT> package, which -uses the word-abbrev mechanism for mail aliases, then you can store your -mail aliases in the BBDB instead of duplicating the information -elsewhere.</P><P> - -If you want a mail alias to be defined for a person, simply add a -<CODE>mail-alias</CODE> field to their record. You may have multiple aliases -for the same person; simply separate them with commas.</P><P> - -If more than one person has the same mail-alias, then that alias expands -to the addresses of all of those people; in this way you can maintain -mailing lists within the BBDB.</P><P> - -To actually define the aliases which are stored in the BBDB, call the -function <CODE>bbdb-define-all-aliases</CODE> from your -<CODE>mail-setup-hook</CODE>. This will search the database, and call -<CODE>define-mail-alias</CODE> to define each of the resulting aliases.</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC28"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC27"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC24"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.5 Reader-specific Features </H2> -<!--docid::SEC28::--> -<P> - -There are features of the <B>BBDB</B> that are available only for specific -mail- and news-readers. These features are described below. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC29">Gnus Features</A></TD><TD ALIGN="left">Gnus-specific Features</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC33">VM Features</A></TD><TD ALIGN="left">VM-specific Features</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC29"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC30"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.5.1 Gnus-specific Features </H3> -<!--docid::SEC29::--> -<P> - -The <B>BBDB</B> can be used to provide score information, or to integrate -database information into the <B>Gnus</B> Summary buffer or the <B>GNUS</B> -Subject List. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC30">Gnus Scoring</A></TD><TD ALIGN="left">Store score adjustments in the <B>BBDB</B></TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC31">Gnus Summary Buffer</A></TD><TD ALIGN="left"><B>BBDB</B> information in the Summary buffer</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC32">GNUS Subject List</A></TD><TD ALIGN="left"><B>BBDB</B> information in the Subject List</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC30"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC31"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.5.1.1 Scoring </H4> -<!--docid::SEC30::--> -<P> - -The <B>BBDB</B> can provide scoring information to <B>Gnus</B> in one of two -ways. -</P><P> - - -<OL> -<LI> - -Articles whose authors appear in the <B>BBDB</B> and who have -<CODE>gnus-score</CODE> fields will have their scores adjusted by the value -contained in that field. -<LI> - -Articles whose authors appear in the <B>BBDB</B> but who do not have -<CODE>gnus-score</CODE> fields will have their scores adjusted by -<CODE>bbdb/gnus-score-default</CODE>. If <CODE>bbdb/gnus-score-default</CODE> is -<CODE>nil</CODE>, no score adjustment will be made. -</OL> - -The <B>BBDB</B> by default searches the field contained in -<CODE>bbdb/gnus-score-field</CODE> for score values. To have the <B>BBDB</B> use -a different field, change the value of this variable. -<P> - -To enable <B>BBDB</B>-assisted scoring, add the <CODE>bbdb/gnus-score</CODE> -function to <CODE>gnus-score-find-score-files-function</CODE>. Assuming that -you want to preserve the default value of this variable, use a form -similar to the following: -</P><P> - - -<PRE> -(setq gnus-score-find-score-files-function - '(gnus-score-find-bnews bbdb/gnus-score)) -</PRE> - -<B>Note:</B> The default value in <B>Gnus</B> 5.5 is <CODE>gnus-score-find-bnews</CODE>. -Check your configuration before using the above code, as your values may -be different. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC31"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC30"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC32"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.5.1.2 Gnus Summary Buffer Enhancements </H4> -<!--docid::SEC31::--> -<P> - -<B>Gnus</B> can use the <B>BBDB</B> to do one of two things: -</P><P> - - -<UL> -<LI> - -Mark authors in the Summary Buffer who have records in the <B>BBDB</B> with -a user-defined mark character. See Marking Posters, below. -<LI> - -For authors in the Summary Buffer who also have records in the <B>BBDB</B>, -replace their name as listed in the Summary Buffer with their name as -stored in the <B>BBDB</B>. See Using Names from the <B>BBDB</B>, below. -</UL> - - -<H4>Marking Posters</H4> -<P> - -Authors with records in the <B>BBDB</B> can be marked either with a -user-defined mark character, or with a default one. The marking is -enabled by the use of a Gnus user format code, as determined by -<CODE>bbdb/gnus-summary-in-bbdb-format-letter</CODE>. This variable, which -defaults to <SAMP>`b'</SAMP>, is used to create a format code which is intended -for use in <CODE>gnus-summary-line-format</CODE>. The format code is created -by concatenating <SAMP>`%u'</SAMP> with the value of -<CODE>bbdb/gnus-summary-in-bbdb-format-letter</CODE>. In the default case -this results in the creation of the format code <SAMP>`%ub'</SAMP>. -</P><P> - -Posts are marked as follows: If the record for the poster has the field -indicated in <CODE>bbdb-message-marker-field</CODE> (the default is -<CODE>mark-char</CODE>), the value of that field is used as the mark -character.<A NAME="DOCF5" HREF="bbdb.html#FOOT5">(5)</A> If no such field is present, the value of -<CODE>bbdb/gnus-summary-known-poster-mark</CODE> will be used instead. If the -author is not in the <B>BBDB</B>, a space will be used as the mark character. -</P><P> - - -<H4>Using Names from the <B>BBDB</B></H4> -<P> - -The names reported for authors of posts in the Summary buffer can be -altered to conform to the values present in their respective <B>BBDB</B> -records (if any). This rewriting is enabled by the use of a Gnus user -format code, as determined by -<CODE>bbdb/gnus-summary-user-format-letter</CODE>. This variable, which -defaults to <SAMP>`B'</SAMP>, is used to create a format code which is intended -for use in <CODE>gnus-summary-line-format</CODE>. The format code is created -by concatenating <SAMP>`%u'</SAMP> with the value of -<CODE>bbdb/gnus-summary-user-format-letter</CODE>. In the default case this -results in the creation of the format code <SAMP>`%uB'</SAMP>. This format code -is intended to <B>replace</B> the format code previously used in the Summary -buffer format line to indicate the author and/or net address (usually -<SAMP>`%a'</SAMP>, <SAMP>`%n'</SAMP>, and/or <SAMP>`$N'</SAMP>). -</P><P> - -The effects of this format code are in two independent parts - the -marking of known posters, and the rewriting of posters names. The -first, the marking of posters, occurs only when -<CODE>bbdb/gnus-summary-mark-known-posters</CODE> is <CODE>t</CODE> (the default) -and the posters have entries in the <B>BBDB</B>. When this variable is -true, the marking occurs as described in the previous section, Marking -Posters, above. -</P><P> - -The poster name rewriting is done for all posters - not just for those -with records in the <B>BBDB</B>. That said, rewriting rules for posters in -the <B>BBDB</B> are more flexible than for those not listed. The rewriting is -governed by two variables, as described below. -</P><P> - -<CODE>bbdb/gnus-summary-prefer-real-names</CODE> can have one of three values - -<SAMP>`t'</SAMP>, <SAMP>`bbdb'</SAMP>, or <CODE>nil</CODE>. In general, this variable governs -the preference between net addresses and names. If it is <SAMP>`t'</SAMP>, the -name (if any) will be used. If <SAMP>`nil'</SAMP>, the net address will be -used. The third value, <SAMP>`bbdb'</SAMP>, can be used as a method for -distinguishing between authors with records in the <B>BBDB</B> and those -without. If the variable is set to <SAMP>`bbdb'</SAMP>, the name from the -<B>BBDB</B> record will be used if the author has a record in the -<B>BBDB</B>. If the author is not in the <B>BBDB</B>, the net address from -the message will be printed. This variable makes little sense if -<CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE> is <SAMP>`nil'</SAMP>, as no names -will be printed in the Summary buffer in this case - only net addresses. -</P><P> - -<CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE> is used to (dis)allow use of -the <B>BBDB</B> for author data retrieval. If it is <SAMP>`t'</SAMP>, data from -the <B>BBDB</B> will be used if available. If it is <SAMP>`nil'</SAMP>, data from -the <B>BBDB</B> will not be used. -</P><P> - -In the following examples, assume the following: -</P><P> - - -<OL> -<LI>Message: <CODE>From: Jamie <jwz@netscape.com></CODE><BR> - -<B>BBDB</B>: No record -<LI>Message: <CODE>From: Matt <simmonmt@acm.org></CODE><BR> - -<B>BBDB</B>: Name: <SAMP>`Matthew'</SAMP>, Net: <SAMP>`simmonmt@purdue.edu'</SAMP> -</OL> - -<TABLE> - -<TR><TD><CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE></TD> - -</TD><TD> @center <CODE>t</CODE> -</TD><TD> @center <CODE>t</CODE> -</TD><TD> @center <CODE>nil</CODE> -</TR> -<TR><TD><CODE>bbdb/gnus-summary-prefer-real-names</CODE></TD> - -</TD><TD> @center <CODE>t</CODE> -</TD><TD> @center <CODE>bbdb</CODE> -</TD><TD> @center <CODE>t</CODE> -</TR> -<TR><TD>Printed in Summary buffer for</TD> - -</TR> -<TR><TD>@center Case 1</TD> - -</TD><TD> @center Jamie -</TD><TD> @center jwz@netscape.com -</TD><TD> @center Jamie -</TR> -<TR><TD>@center Case 2</TD> - -</TD><TD> @center Matthew -</TD><TD> @center Matthew -</TD><TD> @center Matt -</TR></TABLE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC32"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC31"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.5.1.3 GNUS Summary Buffer Enhancements </H4> -<!--docid::SEC32::--> -<P> - -<I>This section is remarkably terse, as I don't have a copy of <B>GNUS</B>. -If anybody can provide more descriptive information, please let me -know.</I> -</P><P> - - -<PRE> -(autoload 'bbdb/gnus-lines-and-from "bbdb-gnus") -(setq gnus-optional-headers 'bbdb/gnus-lines-and-from) -</PRE> - -<DL COMPACT> - -<DT><CODE>bbdb/gnus-mark-known-posters</CODE> -<DD> -<A NAME="IDX105"></A> -<A NAME="IDX106"></A> -If <CODE>t</CODE> (the default), then the <B>GNUS</B> subject list will contain an -indication of those messages posted by people who have entries in -the Insidious Big Brother Database (they will be marked with an -asterisk.) <P> - -<A NAME="IDX107"></A> -You can change the character used to mark records on a record-by-record -basis by adding a <CODE>mark-char</CODE> property to the record, whose value -is be the string to display (preferably one character.) </P><P> - -<DT><CODE>bbdb/gnus-header-prefer-real-names</CODE> -<DD> -<A NAME="IDX108"></A> -Default: <CODE>nil</CODE>. if <CODE>t</CODE>, then the <B>GNUS</B> subject list will -display real names instead of network addresses. <P> - -<DT><CODE>bbdb/gnus-header-show-bbdb-names</CODE> -<DD> -<A NAME="IDX109"></A> -Default: <CODE>t</CODE>. If both this variable and -the <CODE>bbdb/gnus-header-prefer-real-names</CODE> variable are true, then -for news messages from people who are in your database, the name displayed -will be the primary name from the database, rather than the one from -the <SAMP>`From:'</SAMP> line of the message. This doesn't affect the names of -people who aren't in the database, of course.<P> - -<DT><CODE>bbdb/gnus-lines-and-from-length</CODE> -<DD> -<A NAME="IDX110"></A> -Default: 18. The number of characters used to display <SAMP>`From:'</SAMP> info in -<B>GNUS</B>, if you have set <CODE>gnus-optional-headers</CODE> to -<CODE>bbdb/gnus-lines-and-from</CODE>. </DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC33"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC32"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC34"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.5.2 VM-specific features </H3> -<!--docid::SEC33::--> -<P> - -The <B>BBDB</B> can be used to integrate database information into the -message summary. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC34">VM Message Summary</A></TD><TD ALIGN="left"><B>BBDB</B> information in message summary</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC34"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC29"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC33"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.5.2.1 VM Message Summary Enhancements </H4> -<!--docid::SEC34::--> -<P> - -<A NAME="IDX111"></A> -<A NAME="IDX112"></A> -<A NAME="IDX113"></A> -<A NAME="IDX114"></A> -VM users can cause their summary buffer to display the name of the -message sender according to BBDB data, instead of according to the -contents of the current message's headers. In VM 5.40 or later, use -the summary format control <CODE>%UB"</CODE> instead of <CODE>"%F"</CODE>, and the -current record name will be shown there if available. If no entry is -found it behaves like <CODE>"%F"</CODE>. See the documentation for -<CODE>vm-summary-format</CODE> for more details. Warning, this may -significantly slow down summary generation for large folders. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC35"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC34"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC36"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC28"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.6 Using the <B>BBDB</B> with other packages </H2> -<!--docid::SEC35::--> -<P> - -The <B>BBDB</B> adds functionality to several packages. The following sections -detail these augmentations. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC36">Using Message Mode</A></TD><TD ALIGN="left">Using the <B>BBDB</B> with Message Mode</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC37">Using Reportmail</A></TD><TD ALIGN="left">Using the <B>BBDB</B> with Reportmail</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC38">Using Supercite</A></TD><TD ALIGN="left">Using the <B>BBDB</B> with Supercite</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC39">Using Web Browsers</A></TD><TD ALIGN="left">Using the <B>BBDB</B> with Web Browsers</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC36"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC37"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.6.1 Using the <B>BBDB</B> with Message Mode </H3> -<!--docid::SEC36::--> -<P> - -At this time, the only feature the <B>BBDB</B> adds to Message mode is the binding -to <KBD>M-TAB</KBD> which allows for <B>BBDB</B> record completion. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC37"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC36"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC38"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.6.2 Using the <B>BBDB</B> with Reportmail </H3> -<!--docid::SEC37::--> -<P> - -The <B>BBDB</B> can modify the <TT>`reportmail.el'</TT> package to use information -from <B>BBDB</B> records when identifying the senders or recipients of e-mail -messages. -</P><P> - -In normal operation, Reportmail displays the name and net address sender and -recipient of incoming messages. The <B>BBDB</B> can be configured to intercept -and rewrite this information before it appears in the Emacs mode-line. It -first attempts to rewrite the sender and/or recipient information by -substituting those addresses with information from the <B>BBDB</B>. Replacement -information is first sought from the <CODE>mail-name</CODE> field in the respective -<B>BBDB</B> records. If no such field is found, the <CODE>name</CODE> field is -returned. If no <B>BBDB</B> record is found, no rewriting is performed. -</P><P> - -The <B>BBDB</B>-Reportmail augmentation is accomplished through the advising of -the Reportmail <CODE>display-time-get-field</CODE> function in order to do -a-posteriori modification of the returned value. The augmentation uses the -<CODE>bbdb/reportmail-alternate-full-name</CODE> function to retrieve data from the -<B>BBDB</B> for use in rewriting. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC38"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC37"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC39"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.6.3 Using the <B>BBDB</B> with Supercite </H3> -<!--docid::SEC38::--> -<P> - -The <B>BBDB</B> can be used with Supercite to store attributions with <B>BBDB</B> -records. Normally, when a non-default attribution is entered for a given -message, the entered attribution is used for that message, and is then -discarded. When the <B>BBDB</B>-Supercite augmentation is enabled, the -non-default attribution will be added to the record (if any) for the entity -being cited. This poor explanation sounds complicated, but it's not. If a -message from <SAMP>`Jamie Zawinski <jwz@netscape.com>'</SAMP> is being replied to, -Supercite will, by default, suggest the citation <SAMP>`Jamie'</SAMP>. If the -non-default citation <SAMP>`jwz'</SAMP> is entered, Supercite can save it with the -<B>BBDB</B> record for <SAMP>`Jamie Zawinski'</SAMP> in the <CODE>attribution</CODE> field. -</P><P> - -The field used can be changed by changing the value of -<CODE>bbdb/sc-attribution-field</CODE>. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC39"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC38"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.6.4 Using the <B>BBDB</B> with Web Browsers </H3> -<!--docid::SEC39::--> -<P> - -The <B>BBDB</B>/Web Browser integration is in two parts, one which is -automatically enabled, and one which must be manually enabled (see section <A HREF="bbdb.html#SEC15">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>). The first feature added is the ability to display the URL -associated with a given record in a Web Browser. The second is the ability to -add URLs to <B>BBDB</B> records from within W3, the Emacs Web Browser. -</P><P> - -Pressing <KBD>W</KBD> in the <CODE>*BBDB*</CODE> buffer while the cursor is positioned -over a record with a <CODE>www</CODE> field will cause the first URL in the field to -be loaded in a Web Browser. This functionality uses <CODE>browse-url</CODE> to -display URLs - see the documentation for <CODE>browse-url</CODE> for information on -selecting the browser to be used. -</P><P> - -If W3 is used, and if the <B>BBDB</B>/W3 functionality has been enabled as -described in section <A HREF="bbdb.html#SEC15">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>, pressing the <KBD>:</KBD> key will add the URL -currently being displayed in W3 to a user-specified <B>BBDB</B> record. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC40"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC39"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC41"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC35"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.7 Options </H2> -<!--docid::SEC40::--> -<P> - -There are many variables which control the behavior of the Insidious Big -Brother Database, and there are many hook-variables which can be used to -modify its behavior in more complex ways. Several pieces of functionality -are included which use the hooks in this way. </P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC41">Customization Parameters</A></TD><TD ALIGN="left">Customization Parameters</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC42">Customization Hooks</A></TD><TD ALIGN="left">Customization Hooks</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC43">Predefined Hooks</A></TD><TD ALIGN="left">Predefined Hooks</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC41"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC42"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.7.1 Customization Parameters </H3> -<!--docid::SEC41::--> -<P> - -<DL COMPACT> - -<DT><CODE>bbdb-file</CODE> -<DD> -<A NAME="IDX115"></A> -The name of the file which contains your personal database. Default: -<TT>`~/.bbdb'</TT>. -<P> - -<DT><CODE>bbdb-default-area-code</CODE> -<DD> -<A NAME="IDX116"></A> -<A NAME="IDX117"></A> -The default area code to use when prompting for a new phone number. -Default: 415. This must be a number, not a string.<P> - -<DT><CODE>bbdb-north-american-phone-numbers-p</CODE> -<DD> -<A NAME="IDX118"></A> -<A NAME="IDX119"></A> -<A NAME="IDX120"></A> -Whether syntax-checking of phone numbers should be enforced. Default: -<CODE>t</CODE>. This only works for Bell-system phone numbers. If this is true, -then you can't enter invalid phone numbers, and all phone numbers are -pretty-printed in the same way. European phone numbers don't have as -strict a syntax, however, so this is a harder problem for them (on which -I am punting). <P> - -You can have both styles of phone number in your database by providing a -prefix argument to the <CODE>bbdb-insert-new-field</CODE> command. </P><P> - -<DT><CODE>bbdb-electric-p</CODE> -<DD> -<A NAME="IDX121"></A> -<A NAME="IDX122"></A> -Whether bbdb mode should be <I>"electric"</I> like <CODE>electric-buffer-list</CODE>. -Default: <CODE>t</CODE>. Basically this means that when you type space after -<KBD>M-x bbdb</KBD>, your window configuration will be restored to what it was -before you invoked the db list. (The <CODE>bbdb-mode</CODE> commands still work as -well.) <P> - -There are some problems with electric modes; for example, keyboard -macros and incremental search don't work. (This is not a bug in BBDB, -but in <TT>`electric.el'</TT>.)</P><P> - -<DT><CODE>bbdb-case-fold-search</CODE> -<DD> -<A NAME="IDX123"></A> -Default: the same as <CODE>case-fold-search</CODE>. <CODE>case-fold-search</CODE> is -bound to this by <KBD>M-x bbdb</KBD> and related commands. This variable lets -the case-sensitivity of <KBD>^S</KBD> and of the bbdb searching commands be -different. -<P> - -<DT><CODE>bbdb/mail-auto-create-p</CODE> -<DD> -<A NAME="IDX124"></A> -If this is <CODE>t</CODE> (the default), then <B>VM</B>, <B>MH</B>, and <B>RMAIL</B> -will automatically create new bbdb records for people you receive mail -from. If this variable is a function name or lambda expression, then it -is called with no arguments to decide whether an entry should be -automatically created. You can use this to, for example, not create -records for messages which have reached you through a particular mailing -list, or to only create records automatically if the mail has a -particular subject. See the variables -<CODE>bbdb-ignore-most-messages-alist</CODE> and -<CODE>bbdb-ignore-some-messages-alist</CODE> (See section <A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A>) <P> - -<DT><CODE>bbdb/news-auto-create-p</CODE> -<DD> -<A NAME="IDX125"></A> -<A NAME="IDX126"></A> -If this is <CODE>t</CODE> (default: <CODE>nil</CODE>), then <B>GNUS</B> will -automatically create new <B>BBDB</B> records for people you read messages -by. If this is a function name or lambda expression, then it is called -with no arguments to decide whether an entry should be automatically -created. You can use this to, for example, create or not create -messages which have a particular subject. See the variable -<CODE>bbdb-auto-notes-alist</CODE> (See section <A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A>). <P> - -If you want to autocreate messages based on the current newsgroup, it's -probably a better idea to set this variable to <CODE>t</CODE> or <CODE>nil</CODE> from your -<CODE>gnus-select-group-hook</CODE> instead. </P><P> - -To automatically remember users in certain groups, you can do something -like -<PRE> -(setq gnus-select-group-hook -'(lambda () -(setq bbdb/news-auto-create-p -(or (string= "some.news.group" gnus-newsgroup-name) -(string= "other.news.group" gnus-newsgroup-name))))) -</PRE> - -<DT><CODE>bbdb-quiet-about-name-mismatches</CODE> -<DD> -<A NAME="IDX127"></A> -If this is false (the default), then <B>BBDB</B> will prompt you when it notices a -name change, that is, when the "real name" in a message doesn't correspond -to a record already in the database with the same network address. As in, -<I>"John Smith <jqs@frob.com>"</I> versus -<I>"John Q. Smith <jqs@frob.com>".</I> If this is true, then you will -not be asked if you want to change it (and it will not be changed.) <P> - -<DT><CODE>bbdb-use-alternate-names</CODE> -<DD> -<A NAME="IDX128"></A> -<A NAME="IDX129"></A> -<A NAME="IDX130"></A> -If this is false, then the <B>BBDB</B> will not use the <B>AKA</B> field. -Otherwise (the default) then the mail and news interfaces will ask you -if you want to add an alternate name when a name-change is noticed, and -will ask you whether the new name should be made the primary one. -Note that if <CODE>bbdb-quiet-about-name-mismatches</CODE> is true, you will -not be asked any questions about alternate names. -<P> - -<DT><CODE>bbdb-readonly-p</CODE> -<DD> -<A NAME="IDX131"></A> -If this is true (default: <CODE>nil</CODE>), then nothing will attempt to change the -database implicitly, and you will be prevented from doing it -explicitly. If you have more than one emacs running at the same time, -you might want to arrange for this to be set to <CODE>t</CODE> in all but one of -them. <P> - -<DT><CODE>bbdb-auto-revert-p</CODE> -<DD> -<A NAME="IDX132"></A> -If this variable is true (default: <CODE>nil</CODE>) and the <B>BBDB</B> file is noticed to -have changed on disk, it will be automatically reverted without -prompting you first. Otherwise you will be asked. (But if the file has -changed and you have made changes in memory as well, you will always be -asked.) <P> - -<DT><CODE>bbdb-notice-auto-save-file</CODE> -<DD> -<A NAME="IDX133"></A> -<A NAME="IDX134"></A> -If this is true (default: <CODE>nil</CODE>), then the <B>BBDB</B> will notice when its -auto-save file is newer than the file is was read from, and will offer -to revert. <P> - -<DT><CODE>bbdb-use-pop-up</CODE> -<DD> -<A NAME="IDX135"></A> -<A NAME="IDX136"></A> -If true (the default), display a continuously-updating <B>BBDB</B> -window while in <B>VM</B>, <B>MH</B>, <B>RMAIL</B>, or <B>GNUS</B>. -Each time a new message is selected, the record corresponding to -that message's sender will be displayed in another window. The -buffer in this other window will be in bbdb-mode, and all -corresponding commands will be available. <P> - -This buffer will be positioned on the screen by finding the tallest -of the windows present, and splitting it such that the bottom -<CODE>bbdb-pop-up-target-lines</CODE> lines of the window display the -<SAMP>`*BBDB*'</SAMP> buffer. With the default configurations of <B>VM</B>, -<B>MH</B>, <B>RMAIL</B>, and <B>GNUS</B>, this means that the bbdb-list -buffer will be just below the message-body buffer. </P><P> - -If this is the symbol <CODE>horiz</CODE>, then the <B>BBDB</B> window will be -stacked horizontally instead of vertically, if there is room to do that -tastefully. </P><P> - -<DT><CODE>bbdb-pop-up-target-lines</CODE> -<DD> -<A NAME="IDX137"></A> -Desired number of lines in a <B>VM/MH/RMAIL/GNUS</B> pop-up <B>BBDB</B> window, -default 5. <P> - -<DT><CODE>bbdb-completion-type</CODE> -<DD> -<A NAME="IDX138"></A> -<A NAME="IDX139"></A> -<A NAME="IDX140"></A> -<A NAME="IDX141"></A> -<A NAME="IDX142"></A> -Controls the behavior of the <CODE>bbdb-complete-name</CODE> command. If <CODE>nil</CODE> -(the default), completion is done across the set of all full-names and -user-ids in the database; if the symbol <CODE>name</CODE>, completion is -done on real-names only; if the symbol <CODE>net</CODE>, completion is done -on network addresses only; if it is <CODE>primary</CODE>, then completion is -done only across the set of primary network addresses (the first address -in the list of addresses for a given user). If it is -<CODE>primary-or-name</CODE>, completion is done across primaries and real -names. <P> - -<DT><CODE>bbdb-user-mail-names</CODE> -<DD> -<A NAME="IDX143"></A> -A regular expression identifying the addresses that belong to you. If a -message from an address matching this is seen, the <B>BBDB</B> record for the -<SAMP>`To:'</SAMP> line will be shown instead of the one for the <SAMP>`From:'</SAMP> -line. If this is <CODE>nil</CODE>, it will default to the value of -<CODE>(user-login-name)</CODE>. <P> - -<DT><CODE>bbdb-always-add-addresses</CODE> -<DD> -<A NAME="IDX144"></A> -If this is <CODE>t</CODE>, then whenever the Insidious Big Brother Database -notices a new email address corresponding to a person who is in the -database, it will add it to the database. If this is <CODE>nil</CODE> (the -default), then whenever a new network address is noticed for a person in -the database, you will be asked whether to add the address. If this is -the symbol <CODE>never</CODE> (really if it is not <CODE>t</CODE> and not <CODE>nil</CODE>) -then new network addresses will never be automatically added. <P> - -<DT><CODE>bbdb-new-nets-always-primary</CODE> -<DD> -<A NAME="IDX145"></A> -If this is <CODE>t</CODE>, then when the Insidious Big Brother Database adds a new -address to a record, it will always add it to the front of the list of -addresses, making it the primary address. If this is <CODE>nil</CODE> (the default), -then you will be asked. If this is the symbol <CODE>never</CODE> (really if -it is not <CODE>t</CODE> and not <CODE>nil</CODE>) then new network addresses will -always be added to the end of the list. <P> - -<DT><CODE>bbdb-canonicalize-redundant-nets-p</CODE> -<DD> -<A NAME="IDX146"></A> -If this is non-<CODE>nil</CODE>, redundant network addresses will be ignored. -If a record has an address of the form <CODE>foo@baz.com</CODE>, setting this -to <CODE>t</CODE> will cause subsequently-noticed addresses -like <CODE>foo@bar.baz.com</CODE> to be ignored (since we already have a more -general form of that address.) This is similar in function to one of -the possible uses of the variable <CODE>bbdb-canonicalize-net-hook</CODE> -but is somewhat more automatic. (This can't quite be implemented in -terms of the canonicalize-net-hook because it needs access to the -database to determine whether an address is redundant, and the -canonicalize-net-hook is purely a textual manipulation which is -performed before any database access.) -<P> - -<DT><CODE>bbdb-message-caching-enabled</CODE> -<DD> -<A NAME="IDX147"></A> -Whether caching of the message->bbdb-record association should be -used for the interfaces which support it (<B>VM</B>, <B>MH</B>, and -<B>RMAIL</B>). This can speed things up a lot. One implication of -this variable being true (the default) is that the -<CODE>bbdb-notice-hook</CODE> will not be called each time a message is -selected, but only the first time. Likewise, if selecting a message -would generate a question (whether to add an address, change the -name, etc) you will only be asked that question the very first time -the message is selected. <P> - -<DT><CODE>bbdb-elided-display</CODE> -<DD> -<A NAME="IDX148"></A> -Default: <CODE>nil</CODE>. Set this to <CODE>t</CODE> to make the bbdb-display commands -default to displaying one line per record instead of a full listing. -Set this to a list of some of the symbols <CODE>'(address phone net -notes)</CODE> to select those fields to be left out of the listing (you can't -leave out the name field). <P> - -This is the default state for <KBD>M-x bbdb</KBD> and friends. You can have a -different default for when the <B>BBDB</B> buffer is automatically updated by the -mail and news interfaces by setting the variable -<CODE>bbdb-pop-up-elided-display</CODE>. If that variable is unbound, this -variable will be consulted instead.</P><P> - -<DT><CODE>bbdb-pop-up-elided-display</CODE> -<DD> -<A NAME="IDX149"></A> -Default: unbound. Set this to <CODE>t</CODE> if to make the pop-up <B>BBDB</B> buffer -default to displaying one line per record instead of a full listing. -Set this to a list of some of the symbols <CODE>'(address phone net -notes)</CODE> to select those fields to be left out of the listing (you can't -leave out the name field). <P> - -The default state for <KBD>M-x bbdb</KBD> and friends is controlled by the -variable <CODE>bbdb-elided-display</CODE>; this variable is the default for -when the <B>BBDB</B> buffer is automatically updated by the mail and news -interfaces. If bbdb-pop-up-elided-display is unbound, then -bbdb-elided-display the former will be consulted instead by mail and -news.</P><P> - -<DT><CODE>bbdb-offer-save</CODE> -<DD> -<A NAME="IDX150"></A> -If <CODE>t</CODE> (the default), then certain actions will cause the <B>BBDB</B> to -ask you whether you wish to save the database. If <CODE>nil</CODE>, then the -offer to save will never be made. If not <CODE>t</CODE> and not <CODE>nil</CODE>, then -any time it would ask you, it will just save it without asking. <P> - -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC42"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC41"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC43"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.7.2 Customization Hooks </H3> -<!--docid::SEC42::--> -<P> - -All of the hooks variables described below may be set to a symbol or -lambda expression, which will be funcalled; or may be set to a list of -symbols or lambda expressions, each of which will be funcalled in turn. -Almost all hooks in Emacs work this way. But notice that some of the -hooks described below are called with arguments. -</P><P> - -<DL COMPACT> - -<DT><CODE>bbdb-list-hook</CODE> -<DD> -<A NAME="IDX151"></A> -Hook or hooks invoked after the bbdb-list-buffer is filled in. Invoked -with no arguments. <P> - -<DT><CODE>bbdb-create-hook</CODE> -<DD> -<A NAME="IDX152"></A> -Hook or hooks invoked each time a new bbdb-record is created. Invoked -with one argument, the new record. This is called <EM>before</EM> the record is -added to the database. Note that <CODE>bbdb-change-hook</CODE> will be called as -well. <P> - -<DT><CODE>bbdb-change-hook</CODE> -<DD> -<A NAME="IDX153"></A> -Hook or hooks invoked each time a bbdb-record is altered. Invoked with -one argument, the record. This is called <EM>before</EM> the database buffer -is modified. Note that if a new bbdb record is created, both this hook and -<CODE>bbdb-create-hook</CODE> will be called. <P> - -<DT><CODE>bbdb-mode-hook</CODE> -<DD> -<A NAME="IDX154"></A> -Hook or hooks invoked when the <SAMP>`*BBDB*'</SAMP> buffer is created. -<P> - -<DT><CODE>bbdb-notice-hook</CODE> -<DD> -<A NAME="IDX155"></A> -Hook or hooks invoked each time a bbdb-record is "noticed," that -is, each time it is displayed by the news or mail interfaces. -Invoked with one argument, the new record. The record need not have -been modified for this to be called - use <CODE>bbdb-change-hook</CODE> for that. -You can use this to, for example, add something to the notes field -based on the subject of the current message. It is up to your hook -to determine whether it is running in <B>GNUS</B>, <B>VM</B>, -<B>MH</B>, or <B>RMAIL</B>, and to act appropriately. <P> - -Also note that <CODE>bbdb-change-hook</CODE> will <EM>not</EM> be called as a -result of any modifications you may make to the record inside this -hook. </P><P> - -Beware that if the variable <CODE>bbdb-message-caching-enabled</CODE> is -true (a good idea) then when you are using <B>VM</B>, <B>MH</B>, or -<B>RMAIL</B>, this hook will be called only the first time that -message is selected. (The <B>GNUS</B> interface does not use caching.) -When debugging the value of this hook, it is a good idea to set -caching-enabled to <CODE>nil</CODE>. </P><P> - -<DT><CODE>bbdb-after-read-db-hook</CODE> -<DD> -<A NAME="IDX156"></A> -Hook or hooks invoked (with no arguments) just after the Insidious Big -Brother Database is read in. Note that this can be called more than once if -the <B>BBDB</B> is reverted. One possible use for this is to rename the -<TT>`.bbdb'</TT> buffer; for example <P> - -<CODE>(setq bbdb-after-read-db-hook '(lambda () (rename-buffer " bbdb")))</CODE> -</P><P> - -will cause the buffer visiting the <CODE>bbdb-file</CODE> to be -called <CODE>" bbdb"</CODE>. The leading space in its name will prevent -it from showing up in the buffer list. -</P><P> - -<DT><CODE>bbdb-load-hook</CODE> -<DD> -<A NAME="IDX157"></A> -Hook or hooks invoked (with no arguments) when the Insidious Big Brother -Database code is first loaded. WARNING: Slow functions should not be -put on this hook, as the <B>BBDB</B> code will, if not loaded before, be -loaded during the first use of <B>BBDB</B>-related Customization -functions. Slow functions should be put on <CODE>bbdb-initialize-hook</CODE>. -<P> - -<DT><CODE>bbdb-initialize-hook</CODE> -<DD> -<A NAME="IDX158"></A> -<A NAME="IDX159"></A> -Hook or hooks invoked (with no arguments) when the -<CODE>bbdb-initialize</CODE> function is called. -<P> - -<DT><CODE>bbdb-canonicalize-net-hook</CODE> -<DD> -<A NAME="IDX160"></A> -If this is non-<CODE>nil</CODE>, it should be a function of one argument: a -network address string. (Note that, unlike the other hook-variables -described above, this may not be a list of functions.) Whenever the -Insidious Big Brother Database "notices" a message, the corresponding -network address will be passed to this function first, as a kind of -"filter" to do whatever transformations upon it you like before it is -compared against or added to the database. For example: it is the case -that <CODE>CS.CMU.EDU</CODE> is a valid return address for all mail -originating at a machine in the <CODE>.CS.CMU.EDU</CODE> domain. So, if you -wanted all such addresses to be canonically hashed as -<CODE>user@CS.CMU.EDU</CODE>, instead of as <CODE>user@somehost.CS.CMU.EDU</CODE>, -you might set this variable to a function like this: <P> - - -<PRE> -(setq bbdb-canonicalize-net-hook - '(lambda (addr) - (cond ((string-match - "\\`\\([^@]+@\\).*\\.\\(CS\\.CMU\\.EDU\\)\\'" - addr) - (concat (substring addr - (match-beginning 1) (match-end 1)) - (substring addr - (match-beginning 2) (match-end 2)))) - (t addr)))) -</PRE> - -You could also use this function to rewrite UUCP-style addresses into -domain-style addresses, or any number of other things.<P> - -This function will be called repeatedly until it returns a value EQ to the -value passed in. So multiple rewrite rules might apply to a single -address.</P><P> - -There is an example of the use of this variable in the -file <TT>`bbdb-hooks.el'</TT>: the function -<CODE>sample-bbdb-canonicalize-net-hook</CODE>.</DL> -<P> - -<A NAME="IDX161"></A> -<A NAME="IDX162"></A> -The <CODE>bbdb-canonicalize-net-hook</CODE> is powerful in that it allows -arbitrary rewriting of addresses, however, in many cases that is -overkill. The function <CODE>bbdb-delete-redundant-nets</CODE> can be -used as a value of <CODE>bbdb-change-hook</CODE> to cause network addresses -which appear to be "redundant" to be deleted each time a modification -is made to a record. </P><P> - -This works as follows: suppose one gets mail from <CODE>user@foo.bar.com</CODE>, -and then later gets mail from <CODE>user@bar.com</CODE>. At this point, one -can generally delete the <CODE>user@foo.bar.com</CODE> address, since the -<CODE>user@bar.com</CODE> address is more general. (See also the -variable `bbdb-canonicalize-redundant-nets-p', which has the effect of -ignoring subsequent addresses from <CODE>user@quux.bar.com</CODE> if the -address <CODE>user@bar.com</CODE> is already known.)</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC43"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC42"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.7.3 Predefined Hooks </H3> -<!--docid::SEC43::--> -<P> - -<A NAME="IDX163"></A> -<A NAME="IDX164"></A> -If the variable <CODE>bbdb-change-hook</CODE> is set to the symbol -<CODE>bbdb-timestamp-hook</CODE> (the default), then every record in the -database will have a field named <SAMP>`timestamp'</SAMP>, which will always -contain the date and time at which this record was created or last -modified. -</P><P> - -<A NAME="IDX165"></A> -If the variable <CODE>bbdb-create-hook</CODE> is set to the symbol -<CODE>bbdb-creation-date-hook</CODE> (the default), then every record in the -database will have a field named <SAMP>`creation-date'</SAMP>, which will -contain the date and time at which this record was added to the -database. -</P><P> - -<A NAME="IDX166"></A> -<A NAME="IDX167"></A> -<A NAME="IDX168"></A> -If the variable <CODE>bbdb/mail-auto-create-p</CODE> is set to the symbol -<CODE>bbdb-ignore-most-messages-hook</CODE>, then the variable -<CODE>bbdb-ignore-most-messages-alist</CODE> will determine which messages -should have records automatically created for them. The format of this -alist is -<PRE> -(( <VAR>HEADER-NAME</VAR> . <VAR>REGEXP</VAR> ) ... ) -</PRE> - -for example, - -<PRE> -(("From" . "@.*\\.maximegalon\\.edu") - ("Subject" . "time travel")) -</PRE> - -will cause <B>BBDB</B> entries to be made only for messages sent by -people at Maximegalon U., or (that's <EM>or</EM>) people posting -about time travel. <P> - -There may be only one entry per header in this alist: that is, </P><P> - - -<PRE> -(("From" . "addr1\\|addr2") ... ) -</PRE> - -is legal, but -<P> - - -<PRE> -(("From" . "addr1") ("From" . "addr2") ... ) -</PRE> - -is not. -<P> - -<A NAME="IDX169"></A> -<A NAME="IDX170"></A> -<A NAME="IDX171"></A> -<A NAME="IDX172"></A> -If the variable <CODE>bbdb/mail-auto-create-p</CODE> is set to the symbol -<CODE>bbdb-ignore-some-messages-hook</CODE>, then the variable -<CODE>bbdb-ignore-some-messages-alist</CODE> will determine which messages -should have records automatically created for them. This is the exact -inverse of the semantics of the <CODE>bbdb-ignore-most-messages-alist</CODE>: -the alist specifies which messages should <EM>not</EM> have records -automatically created for them, instead of which should. For -example, </P><P> - - -<PRE> -(("From" . "mailer.daemon") - ("To" . "mailing-list-1\\|mailing-list-2") - ("CC" . "mailing-list-1\\|mailing-list-2")) -</PRE> - -will cause <B>BBDB</B> entries to not be made for messages from any mailer daemon, -or messages sent to or <B>CC</B>ed to either of two mailing lists. <P> - -The variable <CODE>bbdb/news-auto-create-p</CODE> may be set to either of the -above-mentioned functions as well, to get this behavior for netnews -messages instead of mail messages.</P><P> - -<A NAME="IDX173"></A> -<A NAME="IDX174"></A> -<A NAME="IDX175"></A> -If the variable <CODE>bbdb-notice-hook</CODE> is set to the symbol -<CODE>bbdb-auto-notes-hook</CODE>, then the variable <CODE>bbdb-auto-notes-alist</CODE> -may be used to automatically add text to the notes fields of the records -corresponding to certain messages. The format of this alist is </P><P> - - -<PRE> -(( <VAR>HEADER-NAME</VAR> - (<VAR>REGEXP</VAR> . <VAR>STRING</VAR>) ... ) - ... ) -</PRE> - -for example, -<P> - - -<PRE> -(("To" ("-vm@" . "VM mailing list")) - ("Subject" ("sprocket" . "mail about sprockets") - ("you bonehead" . "called me a bonehead"))) -</PRE> - -will cause the text <CODE>"VM mailing list"</CODE> to be added to the notes field of -the record corresponding to anyone you get mail from via one of the <B>VM</B> -mailing lists. If, that is, <CODE>bbdb/mail-auto-create-p</CODE> is set such -that the record would have been created, or if the record already -existed.<P> - -The format of elements of this list may also be -</P><P> - - -<PRE> -(<VAR>REGEXP</VAR> <VAR>FIELD-NAME</VAR> <VAR>STRING</VAR>) -</PRE> - -or - -<PRE> -(<VAR>REGEXP</VAR> <VAR>FIELD-NAME</VAR> <VAR>STRING</VAR> <VAR>REPLACE-P</VAR>) -</PRE> - -meaning add the given string to the named field. The field-name may not -be <SAMP>`name'</SAMP>, <SAMP>`aka'</SAMP>, <SAMP>`address'</SAMP>, <SAMP>`phone'</SAMP>, or <SAMP>`net'</SAMP> -(builtin fields) but must be either <SAMP>`notes'</SAMP>, <SAMP>`company'</SAMP>, or the -name of a user-defined note-field. <P> - - -<PRE> -("pattern" . "string to add") -</PRE> - -is equivalent to -<P> - - -<PRE> -("pattern" notes "string to add") -</PRE> - -<VAR>STRING</VAR> can contain <CODE>\&</CODE> or <CODE>\N</CODE> escapes like in the function -<CODE>replace-match</CODE>. For example, to automatically add the contents of the -<B>organization</B> field of a message to the <CODE>company</CODE> field of a <B>BBDB</B> -record, you can use this: <P> - - -<PRE> -("Organization" (".*" company "\\&")) -</PRE> - -(Note you need two \ to get a single \ into a lisp string literal.) -<P> - -If STRING is an integer <I>N</I>, the <I>N</I>th matching subexpression is -used, so the above example could be written more efficiently as </P><P> - - -<PRE> -("Organization" (".*" company 0)) -</PRE> - -If STRING is neither a string or an integer, it should be a function -which is called with the contents of the field, and the result of the -function call is used. -<P> - -If the <VAR>REPLACE-P</VAR> flag is true, then the string replaces the old -contents instead of being appended to it. -</P><P> - -If multiple clauses match the message, all of the corresponding strings -will be added. </P><P> - -If the string is being appended (<VAR>REPLACE-P</VAR> is false or not -provided) then the new string is appended to the end of the existing -field value, with an intervening newline. So each piece of text -automatically added to this field will go on its own line. </P><P> - -You can control what the separator is by putting a <CODE>field-separator</CODE> -property on the symbol naming the field. For example, to make text -automatically added to a field named <CODE>newsgroups</CODE> be separated by -commas, you could do </P><P> - - -<PRE> -(put 'newsgroups 'field-separator "; ") -</PRE> - -This variable works for news as well. You might want to arrange for -this to have a different value when in mail as when in news. <P> - -There may be only one entry per header in this alist: that is,</P><P> - - -<PRE> - (("Subject" ("\\bfoo\\b" . "Foo!!") - ("bar" . "Bar!"))) -</PRE> - -will work, but -<P> - - -<PRE> - (("Subject" ("\\bfoo\\b" . "Foo!!")) - ("Subject" ("bar" . "Bar!"))) -</PRE> - -will not. -<P> - -Here's a more complicated example: some people include bitmaps of -themselves in their mail messages in an <B>X-Face:</B> header field. -You can capture this field into the <SAMP>`*BBDB*'</SAMP> with the -following: -</P><P> - - -<PRE> -(setq bbdb-auto-notes-alist - (append bbdb-auto-notes-alist - (list "x-face" - (list (concat "[ \t\n]*\\([^ \t\n]*\\)" - "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" - "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" - "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" - ) - 'face - "\\1\\3\\5\\7")))) -</PRE> - -(The calls to <CODE>list</CODE> and <CODE>concat</CODE> are just for readability, it -could easily be a constant.) The tricky bit here is that it strips out -the newlines and whitespace used for header continuation, which are not -actually a part of the face data. So though the mail message may have -the face data on multiple lines, the entry in the <SAMP>`*BBDB*'</SAMP> will -be just one line. -<P> - -<A NAME="IDX176"></A> -<CODE>bbdb-auto-notes-ignore</CODE> is an alist of headers and regexps to -ignore in <CODE>bbdb-auto-notes-hook</CODE>. Each element looks like </P><P> - - -<PRE> -(<VAR>HEADER</VAR> . <VAR>REGEXP</VAR>) -</PRE> - -for example, -<P> - - -<PRE> -("Organization" . "^Gatewayed from\\|^Source only") -</PRE> - -would exclude the phony <CODE>Organization:</CODE> headers in GNU mailing-lists -gatewayed to the <CODE>gnu.*</CODE> newsgroups. Note that this exclusion -applies only to a single field, not to the entire message. For that, -use the variable <CODE>bbdb-auto-notes-ignore-all</CODE>. -<P> - -<A NAME="IDX177"></A> -<CODE>bbdb-auto-notes-ignore-all</CODE> is an alist of headers and regexps -which cause the entire message to be ignored in <CODE>bbdb-auto-notes-hook</CODE>. -Each element looks like </P><P> - - -<PRE> -(<VAR>HEADER</VAR> . <VAR>REGEXP</VAR>) -</PRE> - -for example, -<P> - - -<PRE> -("From" . "BLAT\\.COM") -</PRE> - -would exclude any notes recording for message coming from <CODE>BLAT.COM</CODE>. -Note that this is different from <CODE>bbdb-auto-notes-ignore</CODE>, which -applies only to a particular header field, rather than the entire message. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC44"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC43"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC45"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC40"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.8 Utilities </H2> -<!--docid::SEC44::--> -<P> - -This section describes <B>BBDB</B> functionality that does not fit neatly into -other sections. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC45">bbdb-ftp</A></TD><TD ALIGN="left">Storing FTP sites in the <B>BBDB</B></TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC46">bbdb-print</A></TD><TD ALIGN="left">Print the <B>BBDB</B></TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC47">bbdb-snarf</A></TD><TD ALIGN="left">Record generation from raw text</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC48">bbdb-srv</A></TD><TD ALIGN="left">External control of the <B>BBDB</B></TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC45"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC46"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.8.1 <CODE>bbdb-ftp</CODE> </H3> -<!--docid::SEC45::--> -<P> - -The <CODE>bbdb-ftp</CODE> utility enables the storage of FTP sites as <B>BBDB</B> -records. The <CODE>bbdb-create-ftp-site</CODE> function is used to create a -<B>BBDB</B> record for an FTP site. The command will prompt for information -needed to create the record. The FTP site for a given record can be accessed -with the <CODE>bbdb-ftp</CODE> command. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC46"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC45"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC47"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.8.2 <CODE>bbdb-print</CODE> </H3> -<!--docid::SEC46::--> -<P> - -<CODE>bbdb-print</CODE> is a utility for pretty-printing entries from the <B>BBDB</B> -using TeX. It is invoked by pressing <KBD>P</KBD> in the <CODE>*BBDB*</CODE> buffer - -this will cause all records in the <B>BBDB</B> to be printed as governed by the -variables described below. If <KBD>P</KBD> is prefixed by a <KBD>*</KBD>, only the -currently-displayed records will be printed. Once invoked, <CODE>bbdb-print</CODE> -will generate the TeX output in a buffer named <TT>`~/bbdb.tex'</TT> (controlled -by <CODE>bbdb-print-file-name</CODE>). The generated output will be shown, and must -be <B>manually</B> saved. -</P><P> - -For each record printed, <CODE>bbdb-print</CODE> will look for the presence of the -<CODE>tex-name</CODE> field. If this field is found, its value will be printied -instead of the <CODE>name</CODE> field for the record in question. This field is -intended to allow the storage of names with accents or other characters that -would be illegal in the address portion of a message. While other fields have -special characters quoted by <CODE>bbdb-print</CODE> as described below, the -contents of the <CODE>tex-name</CODE> field (if present) are used verbatim. -</P><P> - -The following variables govern the printing of records (and of the printing of -the fields therein): -</P><P> - -<DL COMPACT> - -<DT><CODE>bbdb-print-elide</CODE> -<DD> -<A NAME="IDX178"></A> -This variable should be set to a list of the fields that are not to be printed -by <CODE>bbdb-print</CODE>. It defaults to:<BR> -<center> - <CODE>(tex-name aka mail-alias)</CODE> -</center> -<P> - -<DT><CODE>bbdb-print-file-name</CODE> -<DD> -<A NAME="IDX179"></A> -The name of the file where generated TeX output is to be stored. The default -is <TT>`~/bbdb.tex'</TT>. -<P> - -<DT><CODE>bbdb-print-require</CODE> -<DD> -<A NAME="IDX180"></A> -The fields required for printing a record. This allows, for example, only -records with phone numbers to be printed. The value of the value of the -variable will be evaluated once for each record, and the record will be -printed only if the evaluation returns a non-nil value. The symbols -<CODE>name</CODE>, <CODE>company</CODE>, <CODE>net</CODE>, <CODE>phone</CODE>, <CODE>address</CODE>, and -<CODE>notes</CODE> will be set to the appropriate values during evaluation; they -will be nil if the field does not exist or is elided. -<P> - -The value of this variable can be any lisp expression, but typically -it will be used for a boolean combination of the field variables, as -in the following simple examples: -</P><P> - - -<UL> -<LI>Print only people whose phone numbers are known:<BR> - -<center> - <CODE>(setq bbdb-print-require 'phone)</CODE> -</center> -<LI>Print people whose names AND companies are known:<BR> - -<center> - <CODE>(setq bbdb-print-require '(and name company))</CODE> -</center> -<LI>Print people whose names, and either addresses OR phone numbers are - -known:<BR> -<center> - <CODE>(setq bbdb-print-require '(and name (or address phone))).</CODE> -</center> -<P> - -The default value is:<BR> -<center> - <CODE>(or address phone)</CODE> -</center> -</UL> - -<LI>bbdb-print-alist - -<A NAME="IDX181"></A> -Formatting options for all formats of <CODE>bbdb-print</CODE>. The value is an -alist of the form<BR> -<center> - <CODE>((<VAR>OPTION</VAR> . <VAR>VALUE</VAR>) (<VAR>OPTION</VAR> . <VAR>VALUE</VAR>) ...)</CODE> -</center> -<P> - -Separate settings can be configured using <CODE>bbdb-print-brief-alist</CODE> and -<CODE>bbdb-print-full-alist</CODE>. Settings in these variables will override the -ones in <CODE>bbdb-print-alist</CODE>. -</P><P> - -The possible options and legal settings are: -<DL COMPACT> - -<DT><CODE>columns</CODE> -<DD> -<CODE>1</CODE>, <CODE>2</CODE>, <CODE>3</CODE>, <CODE>4</CODE>, <CODE>quad</CODE> (4 little -2-column pages per sheet) or <CODE>grid</CODE> (12 credit-card-sized pages per -sheet). -<P> - -<DT><CODE>separator</CODE> -<DD> -<CODE>0</CODE>-<CODE>7</CODE>, the style of heading for each letter. <CODE>0</CODE>=none, -<CODE>1</CODE>=line, <CODE>2</CODE>=boxed letters, <CODE>3</CODE>=large boxed letters, -<CODE>4</CODE>=large letters, <CODE>5</CODE>=letters with lines, <CODE>6</CODE>=letters with -suits, <CODE>7</CODE>=boxed letters with suits. -<P> - -<DT><CODE>omit-area-code</CODE> -<DD> -A regular expression matching area codes to omit. -<P> - -<DT><CODE>phone-on-first-line</CODE> -<DD> -If <CODE>t</CODE>, the first phone number will be put on the same line as the name. -If <CODE>nil</CODE>, the name will be the only text on the line. If set to a -string, the field of type <CODE>phone</CODE> whose name matches the string will be -used. The string should be a valid regular expression. -<P> - -<DT><CODE>n-phones</CODE> -<DD> -Maximum number of phone numbers to include. -<P> - -<DT><CODE>n-addresses</CODE> -<DD> -Maximum number of addresses to include. -<P> - -<DT><CODE>include-files</CODE> -<DD> -List of TeX files to <CODE>\input</CODE>. If the filenames are not absolute, the -files must be located somewhere in the TeX input path. -<P> - -<DT><CODE>ps-fonts</CODE> -<DD> -Postscript fonts will be used if the value is non-<CODE>nil</CODE>. Standard TeX -fonts will be used otherwise. -<P> - -<DT><CODE>font-size</CODE> -<DD> -The integer point size of the font to be used. -<P> - -<DT><CODE>hsize</CODE> -<DD> -The horizontal dimension of the pages. The value must be a string, and must -be a valid TeX dimension. Alternatively, the TeX default will be used if the -value is <CODE>nil</CODE>. -<P> - -<DT><CODE>vsize</CODE> -<DD> -The vertical dimension of the pages. The value must be a string, and must -be a valid TeX dimension. Alternatively, the TeX default will be used if the -value is <CODE>nil</CODE>. -<P> - -<DT><CODE>hoffset</CODE> -<DD> -The TeX output will be offset to the right by the value of this option. The -value must be either a string containing a valid TeX dimension or <CODE>nil</CODE> -or <CODE>0</CODE> to use the default TeX horizontal offset. -<P> - -<DT><CODE>voffset</CODE> -<DD> -The TeX output will be offset downward by the value of this option. The -value must be either a string containing a valid TeX dimension or <CODE>nil</CODE> -or <CODE>0</CODE> to use the default TeX vertical offset. -<P> - -<DT><CODE>quad-hsize</CODE> -<DD> -Horizontal size to be used for the individual pages in the quad format. The -value must be a string containing a valid TeX dimension. -<P> - -<DT><CODE>quad-vsize</CODE> -<DD> -Vertical size to be used for the individual pages in the quad format. The -value must be a string containing a valid TeX dimension. -</DL> -<P> - -The default value is - -<PRE> -((omit-area-code . "(<VAR>AREA-CODE</VAR>)") - (phone-on-first-line . "^[ \t]*$") - (ps-fonts . nil) - (font-size . 6) - (quad-hsize . "3.15in") - (quad-vsize . "4.5in")) -</PRE> - -Where <VAR>AREA-CODE</VAR> is the value of <CODE>bbdb-default-area-code</CODE> or -<SAMP>`000'</SAMP> if there is no default area code. -<P> - -<LI>bbdb-print-brief-alist - -<A NAME="IDX182"></A> -Extra options for the <CODE>bbdb-print</CODE> brief format. The value(s) of -this variable can either supplement or override the values in -<CODE>bbdb-print-alist</CODE>. The format and possible values of this variable are -as in <CODE>bbdb-print-alist</CODE>, described above. -<P> - -The default value is - -<PRE> -((columns . 1) - (separator . 1) - (n-phones . 2) - (n-addresses . 1) - (include-files "bbdb-print-brief" "bbdb-cols")) -</PRE> - -<LI>bbdb-print-full-alist - -<A NAME="IDX183"></A> -Extra options for the <CODE>bbdb-print</CODE> non-brief format. The value(s) of -this variable can either supplement or override the values in -<CODE>bbdb-print-alist</CODE>. The format and possible values of this variable are -as in <CODE>bbdb-print-alist</CODE>, described above. -<P> - -The default value is - -<PRE> -((columns . 3) - (separator . 2) - (include-files "bbdb-print" "bbdb-cols")) -</PRE> - -<LI>bbdb-print-prolog - -<A NAME="IDX184"></A> -TeX statements to include at the beginning of the <CODE>bbdb-print</CODE> output -file. -<P> - -<LI>bbdb-print-epilog - -<A NAME="IDX185"></A> -TeX statements to include at the end of the <CODE>bbdb-print</CODE> output file. -<P> - -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC47"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC46"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC48"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.8.3 <CODE>bbdb-snarf</CODE> </H3> -<!--docid::SEC47::--> -<P> - -<CODE>bbdb-snarf</CODE> provides the ability to generate <B>BBDB</B> records from raw -text. If invoked as <CODE>bbdb-snarf</CODE>, it attempts to generate the record -from the information around point (the cursor). If invoked as -<CODE>bbdb-snarf-region</CODE><A NAME="DOCF6" HREF="bbdb.html#FOOT6">(6)</A>, the active region is used to generate the record. -</P><P> - -<B>Restrictions:</B> -</P><P> - - -<OL> -<LI> - -<CODE>bbdb-snarf</CODE> currently recognizes only US-style phone numbers. -<LI> - -<CODE>bbdb-snarf</CODE> works best with things that look like mailing addresses. -</OL> - -Example of an address that <CODE>bbdb-snarf</CODE> will recognize: -<P> - - -<PRE> -another test person -1234 Gridley St. -Los Angeles, CA 91342 -555-1212 -test@person.net -http://www.foo.bar/ -other stuff about this person -</PRE> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC48"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC47"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.8.4 <CODE>bbdb-srv</CODE> </H3> -<!--docid::SEC48::--> -<P> - -<CODE>bbdb-srv</CODE> provides the ability to initiate the display of <B>BBDB</B> -records from outside of Emacs. This allows external programs to cause -the <B>BBDB</B> record for a given person to appear in the running Emacs -when, for example, mail is recieved from that person. One specific -application, described below, is the integration of Netscape and the -<B>BBDB</B>, allowing the display of <B>BBDB</B> records corresponding to Mail -and/or News messages displayed in Netscape. -</P><P> - -<CODE>bbdb-srv</CODE> is composed of two parts - an external Perl script -(<TT>`utils/bbdb-srv.pl'</TT>), and an Emacs Lisp file -(<TT>`lisp/bbdb-srv.el'</TT>). The external portion is used to send -commands to the internal portion. -</P><P> - -<B>NOTE:</B> <CODE>bbdb-srv</CODE> requires <CODE>gnuserv</CODE> and <CODE>itimer</CODE>, -both included with XEmacs. <CODE>gnuserv</CODE> must be started with the -<CODE>gnuserv-start</CODE> command before <CODE>bbdb-srv</CODE> can be used. -</P><P> - -In it's most basic form, mail or news headers are passed to the Perl -script. The Perl script then causes the <B>BBDB</B> record (if any) -corresponding to the passed headers to be displayed in the running -Emacs. While <CODE>bbdb-srv</CODE> will operate with just a <SAMP>`From:'</SAMP> -field, it works better when passed both <SAMP>`From:'</SAMP> and <SAMP>`To:'</SAMP> -headers. When <CODE>bbdb-srv</CODE> notices that the logged-in user is named -in the <SAMP>`From:'</SAMP> header, it will attempt to display the record (if -any) for the person named in the <SAMP>`To:'</SAMP> header. If no <SAMP>`To:'</SAMP> -header is passed, it falls back on the record (if any) for the logged-in -user (the person named in the <SAMP>`From:'</SAMP> header). -</P><P> - -An example manual invocation of <CODE>bbdb-srv</CODE> is as follows: -</P><P> - - -<PRE> -% cat |bbdb-srv.pl -From: Jamie Zawinski <jwz@netscape.com> -To: Matt Simmons <simmonmt@acm.org> -<KBD>CTRL-D</KBD> -</PRE> - -If the invoking user is Jamie Zawinski, the record for Matt Simmons (if -any) will be displayed. If the invoking user is not Jamie Zawinski, the -record for Jamie Zawinski (if any) will be displayed. -<P> - -As mentioned above <CODE>bbdb-srv</CODE> can be used with Netscape Mail and -Netscape News. Please note that it can only be used with the UNIX -versions 3.0b2 and greater of these applications. To allow Netscape to -use <CODE>bbdb-srv</CODE>, set the <SAMP>`NS_MSG_DISPLAY_HOOK'</SAMP> variable to -<CODE>bbdb-srv.pl</CODE><A NAME="DOCF7" HREF="bbdb.html#FOOT7">(7)</A> as follows: -</P><P> - -Bourne Shell (<TT>`/bin/sh'</TT>) and variants: - -<PRE> -# NS_MSG_DISPLAY_HOOK bbdb-srv.pl -# export NS_MSG_DISPLAY_HOOK -</PRE> - -C-Shell (<TT>`/bin/csh'</TT>) and variants: - -<PRE> -% setenv NS_MSG_DISPLAY_HOOK bbdb-srv.pl -</PRE> - -The following variables can be used to customize the behavior of -<CODE>bbdb-srv</CODE>: -<P> - -<DL COMPACT> - -<DT><CODE>bbdb/srv-auto-create-p</CODE> -<DD> -<A NAME="IDX186"></A> +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> -This variable is similar to <CODE>bbdb/news-auto-create-p</CODE> and -<CODE>bbdb/mail-auto-create-p</CODE>. That is, when headers are passed in to -<CODE>bbdb-srv</CODE>, a new <B>BBDB</B> record can be created if none exists, -depending on the value of this variable. Possible values are: -<DL COMPACT> - -<DT><CODE>t</CODE> -<DD> -Automatically create new <B>BBDB</B> records if the headers passed in do -not correspond to an already-existing record. -<DT><CODE>nil</CODE> -<DD> -Do not automatically create new <B>BBDB</B> records. -<DT><VAR>FUNCTION</VAR> -<DD> -<VAR>FUNCTION</VAR> is called. If it returns <CODE>t</CODE>, a record will be -created for the person named in the <SAMP>`From:'</SAMP> header. If it returns -<CODE>nil</CODE>, no record will be created. -<P> - -A suggested function for use is -<CODE>bbdb/srv-auto-create-mail-news-dispatcher</CODE>. This function will -attempt to determine the source of the passed headers - whether they -were part of a mail message or of a news article. The action (if any) -dictated by the value of either <CODE>bbdb/mail-auto-create-p</CODE> or -<CODE>bbdb/news-auto-create-p</CODE>, based on the determined source of the -passed headers. -</P><P> - -</DL> -<P> - -<A NAME="IDX187"></A> -<DT><CODE>bbdb/srv/display-delay</CODE> -<DD> -<CODE>bbdb-srv</CODE> pauses between displaying the records corresponding to -each passed set of headers. This variable controls the length of time -(in seconds) of the delay between the display of different records. -Note when setting this variable that only one set of headers can be -queued at a time. If three sets of headers are passed to -<CODE>bbdb-srv</CODE> in less than the delay time, only the first and last -will be displayed. -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC49"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC48"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC50"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC44"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC57"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.9 Internals </H2> -<!--docid::SEC49::--> -<P> - -<B>This section is currently a dumping ground for things that should -eventually go here, but were found elsewhere in the file.</B> -</P><P> - -<B>INFORMATION IN THIS SECTION IS FOR INFORMATIONAL PURPOSES ONLY. IT -SHOULD NOT BE TAKEN AS DOCUMENTATION OF AN EXTERNAL API. EVERYTHING -LISTED BELOW IS SUBJECT TO CHANGE WITHOUT NOTICE</B> -</P><P> - -The first time you use -one of the <B>BBDB</B> commands, this file is read into an emacs buffer, and -remains there. As you make changes to the database, this buffer is -changed as well, ensuring that if it is auto-saved, it will be saved in -its most current state. </P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC50"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC51"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.9.1 BBDB data file format </H3> -<!--docid::SEC50::--> -<P> - -The data file is arranged in a hierarchical fashion. At the top level -are vectors, with one vector per database record. It is <B>very</B> -important that each vector be on its own line, as the BBDB builds and -stores markers based on this layout. The markers are then used to -increase the speed of database modifications (more on this later). The -record vectors contain the individual fields of the record. These -fields can be of any type, but are currently integers, strings, lists of -strings, alists, vectors, or lists of vectors. In the case of fields -that contain one or more vectors, they can be further broken down in -terms of the fields of their component vectors. -</P><P> - -In an effort to provide a more concrete example to illustrate the above, -and to provide a reference for database accessor and modifier functions, -we describe the database format below. This description starts with the -fields of the individual record vectors, and drills down through the -vectors used by some of the fields. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC51"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC50"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC52"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.1 Record Vectors </H4> -<!--docid::SEC51::--> -<P> - -<TABLE> - -<TR><TD><B>Name</B></TD> - -</TD><TD> <B>Type</B> -</TD><TD> <B>Accessor and Modifier</B> -</TD><TD> <B>Description</B> - -</TR> -<TR><TD>First name</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-record-firstname</CODE><BR> - <CODE>bbdb-record-set-firstname</CODE> -</TD><TD> Entity's first name - -</TR> -<TR><TD>Last name</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-record-lastname</CODE><BR> - <CODE>bbdb-record-set-lastname</CODE> -</TD><TD> Entity's last name - -</TR> -<TR><TD>AKAs</TD> - -</TD><TD> List of Strings -</TD><TD> <CODE>bbdb-record-aka</CODE><BR> - <CODE>bbdb-record-set-aka</CODE> -</TD><TD> Alternate names for entity - -</TR> -<TR><TD>Company</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-record-company</CODE><BR> - <CODE>bbdb-record-set-company</CODE> -</TD><TD> Company with which entity is associated - -</TR> -<TR><TD>Phones</TD> - -</TD><TD> List of Vectors -</TD><TD> <CODE>bbdb-record-phones</CODE><BR> - <CODE>bbdb-record-set-phones</CODE> -</TD><TD> List of phone number vectors - -</TR> -<TR><TD>Addresses</TD> - -</TD><TD> List of Vectors -</TD><TD> <CODE>bbdb-record-addresses</CODE><BR> - <CODE>bbdb-record-set-addresses</CODE> -</TD><TD> List of address vectors - -</TR> -<TR><TD>Net address</TD> - -</TD><TD> List of Strings -</TD><TD> <CODE>bbdb-record-net</CODE><BR> - <CODE>bbdb-record-set-net</CODE> -</TD><TD> List of network addresses - -</TR> -<TR><TD>Notes</TD> - -</TD><TD> String or Alist -</TD><TD> <CODE>bbdb-record-raw-notes</CODE><BR> - <CODE>bbdb-record-set-raw-notes</CODE> -</TD><TD> String or Association list of note fields (strings) - -</TR> -<TR><TD>Cache</TD> - -</TD><TD> Vector -</TD><TD> <CODE>bbdb-record-cache</CODE><BR> - <CODE>bbdb-record-set-cache</CODE> -</TD><TD> Record cache.<BR> - <I>Internal version only.</I> - -</TR></TABLE> -<P> - -The phone, address and cache vector fields are described below. Please -note that, as indicated in the table above, the cache is present only in -the internal version of the database - it is not written out as part of -the <TT>`.bbdb'</TT> file. -</P><P> - -In addition, the accessor and modifier functions for the notes alist -are described. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC52"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC51"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC53"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.2 Phone Vectors </H4> -<!--docid::SEC52::--> -<P> - -To access the fields in the below table, you must first get the list of -phone vectors using the <CODE>bbdb-record-phones</CODE> function. Note that -if you alter the phones field with the <CODE>bbdb-record-set-phones</CODE> -function, you are altering the entire phones list for the given record. -Use the modifier functions below for modifications to individual phone -vectors. -</P><P> - -<TABLE> - -<TR><TD><B>Name</B></TD> - -</TD><TD> <B>Type</B> -</TD><TD> <B>Accessor and Modifier</B> -</TD><TD> <B>Description</B> - -</TR> -<TR><TD>Location</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-phone-location</CODE><BR> - <CODE>bbdb-phone-set-location</CODE> -</TD><TD> Phone number identifier - -</TR> -<TR><TD>Area</TD> - -</TD><TD> Integer -</TD><TD> <CODE>bbdb-phone-area</CODE><BR> - <CODE>bbdb-phone-set-area</CODE> -</TD><TD> Area code for phone number - -</TR> -<TR><TD>Exchange</TD> - -</TD><TD> Integer -</TD><TD> <CODE>bbdb-phone-exchange</CODE><BR> - <CODE>bbdb-phone-set-exchange</CODE> -</TD><TD> Exchange (aka prefix) for phone number - -</TR> -<TR><TD>Suffix</TD> - -</TD><TD> Integer -</TD><TD> <CODE>bbdb-phone-suffix</CODE><BR> - <CODE>bbdb-phone-set-suffix</CODE> -</TD><TD> Suffix for phone number - -</TR> -<TR><TD>Extension</TD> - -</TD><TD> Integer -</TD><TD> <CODE>bbdb-phone-extension</CODE><BR> - <CODE>bbdb-phone-set-extension</CODE> -</TD><TD> Phone number extension (<SAMP>`0'</SAMP> if none) - -</TR></TABLE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC53"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC52"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC54"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.3 Address Vectors </H4> -<!--docid::SEC53::--> -<P> - -To access the fields in the below table, you must first get the list of -address vectors using the <CODE>bbdb-record-addresses</CODE> function. Note -that if you alter the addresses field with the -<CODE>bbdb-record-set-addresses</CODE> function, you are altering the entire -addresses list for the given record. Use the modifier functions below -for modifications to individual address vectors. -</P><P> - -<TABLE> - -<TR><TD><B>Name</B></TD> - -</TD><TD> <B>Type</B> -</TD><TD> <B>Accessor and Modifier</B> -</TD><TD> <B>Description</B> - -</TR> -<TR><TD>Location</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-address-location</CODE><BR> - <CODE>bbdb-address-set-location</CODE> -</TD><TD> Address identifier - -</TR> -<TR><TD>Street1</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-address-street1</CODE><BR> - <CODE>bbdb-address-set-street1</CODE> -</TD><TD> First line of street address. "" if none. - -</TR> -<TR><TD>Street2</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-address-street2</CODE><BR> - <CODE>bbdb-address-set-street2</CODE> -</TD><TD> Second line of street address. "" if none. - -</TR> -<TR><TD>Street3</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-address-street3</CODE><BR> - <CODE>bbdb-address-set-street3</CODE> -</TD><TD> Third line of street address. "" if none. - -</TR> -<TR><TD>City</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-address-city</CODE><BR> - <CODE>bbdb-address-set-city</CODE> -</TD><TD> City name - -</TR> -<TR><TD>State</TD> +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Insidious Big Brother Database User Manual</TITLE> -</TD><TD> String -</TD><TD> <CODE>bbdb-address-state</CODE><BR> - <CODE>bbdb-address-set-state</CODE> -</TD><TD> State abbreviation +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Insidious Big Brother Database User Manual"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Insidious Big Brother Database User Manual"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> -</TR> -<TR><TD>Zip</TD> +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> -</TD><TD> Integer -</TD><TD> <CODE>bbdb-address-zip</CODE><BR> - <CODE>bbdb-address-set-zip</CODE> -</TD><TD> Zip code - -</TR></TABLE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC54"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC53"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC55"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.4 Cache Vector </H4> -<!--docid::SEC54::--> -<P> - -This vector is present only in the internal database representation. It -is not written out to the database file because it contains information -aggregated from the rest of the record that is reconstructed when the -database is read. To write the cache information to the database file -would increase the risk of database inconsistency, and would violate the -principles of normalization. -</P><P> - -To access the cache fields using the functions listed below that begin -with <CODE>bbdb-cache-</CODE>, you must first get the cache vector using the -<CODE>bbdb-record-cache</CODE> function. The functions that begin with -<CODE>bbdb-record-</CODE> get the cache vector internally. Note that if you -alter the cache field in the high-level record with the -<CODE>bbdb-record-set-cache</CODE> function, you are altering the entire cache -vector for the given record. Use the modifier functions below for -modifications to individual cache fields. -</P><P> - -<TABLE> - -<TR><TD><B>Name</B></TD> - -</TD><TD> <B>Type</B> -</TD><TD> <B>Accessor and Modifier</B> -</TD><TD> <B>Description</B> - -</TR> -<TR><TD>Name Cache</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-cache-namecache</CODE><BR> - <CODE>bbdb-cache-set-namecache</CODE> -</TD><TD> Preconcatenated name of entity - -</TR> -<TR><TD>Sort Key</TD> - -</TD><TD> String -</TD><TD> <CODE>bbdb-cache-sortkey</CODE><BR> - <CODE>bbdb-cache-set-sortkey</CODE> -</TD><TD> Preconcatenated sort key for record - -</TR> -<TR><TD>Marker</TD> - -</TD><TD> Marker -</TD><TD> <CODE>bbdb-cache-marker</CODE><BR> - <CODE>bbdb-record-marker</CODE><BR> - <CODE>bbdb-cache-set-marker</CODE><BR> - <CODE>bbdb-record-set-marker</CODE><BR> -</TD><TD> Marker in <TT>`.bbdb'</TT> for start of record - -</TR> -<TR><TD>Deleted</TD> - -</TD><TD> Boolean -</TD><TD> <CODE>bbdb-cache-deleted-p</CODE><BR> - <CODE>bbdb-record-deleted-p</CODE><BR> - <CODE>bbdb-cache-set-deleted-p</CODE><BR> - <CODE>bbdb-record-set-deleted-p</CODE> -</TD><TD> Set to <CODE>t</CODE> if record has been deleted, <CODE>nil</CODE> if not - -</TR></TABLE> -<P> - -The functions listed above will return <CODE>nil</CODE> if their respective -cache fields are not set. The functions listed below will return the -value of their cache fields if set, but will also build (and set) the -correct field values if the fields are unset: -</P><P> - -<DL COMPACT> - -<DT><CODE>bbdb-record-name</CODE> -<DD> -Return the name in the Name Cache field of the cache (if set). If -the name has not been built yet (if the field is <CODE>nil</CODE>), the name is -built, stored in the Name Cache field, and returned. -<P> - -<DT><CODE>bbdb-record-sortkey</CODE> -<DD> -Return the name it the Sort Key field of the cache (if set). If the -Sort Key field has not yet been set (if the field is <CODE>nil</CODE>), the -Sort Key is built, stored in the Sort Key field, and returned. -<P> - -</DL> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC55"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC54"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC56"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.5 Notes String or Alist </H4> -<!--docid::SEC55::--> -<P> - -If there is only a single note for a given record, the notes field for -that record will be a string. If there is more than one note, the notes -field will be an association list (alist) with elements of the form -</P><P> - -<center> - ( <VAR>NAME</VAR> . <VAR>VALUE</VAR> ) -</center> -</P><P> - -where <VAR>NAME</VAR> is the symbol for the name of the note, and -<VAR>VALUE</VAR> is the value of the note. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC56"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC55"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC57"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H4> 1.9.1.6 Example BBDB record </H4> -<!--docid::SEC56::--> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC57"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC56"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC49"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.10 Mailing Lists </H2> -<!--docid::SEC57::--> -<P> - -There are two mailing lists for the <B>BBDB</B>. The first is -<CODE>bbdb-announce@xemacs.org</CODE>, and is used for new release announcements, and as a -result has very low traffic. To subscribe to <CODE>bbdb-announce@xemacs.org</CODE>, send mail -to <CODE>bbdb-announce-request@xemacs.org</CODE> with <SAMP>`subscribe'</SAMP> as the subject. -</P><P> - -The second mailing list, <CODE>bbdb-info@xemacs.org</CODE>, is gets moderate traffic, and is -intended for the discussion and distribution of development versions of the -<B>BBDB</B>. Users of development versions of the <B>BBDB</B> should be subscribed -to this list. It is to this list that bugs should be reported. See section <A HREF="bbdb.html#SEC63">1.13.1 Known Bugs</A> for instructions on submitting bug reports. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC58"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC57"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC59"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC57"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.11 Changes in this Version </H2> -<!--docid::SEC58::--> -<P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC59">Major Changes</A></TD><TD ALIGN="left">Major changes in this version</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC60">Other Changes</A></TD><TD ALIGN="left">Not-so-major changes</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC59"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC60"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.11.1 Major Changes </H3> -<!--docid::SEC59::--> -<P> - - -<H4>Database File Version Change</H4> -<P> - -(the following version-migration text will move in a future version. It is in -this section currently because new users will likely not experience it) -</P><P> - -There has been a version change in the <B>BBDB</B> database file. The date -format was changed to make the <B>BBDB</B> Y2K-compliant, and to allow for easy -sorting of database records based on dates. -</P><P> - -An automatic version-migration mechanism has been implemented that allows -older version <TT>`.bbdb'</TT> files to either be migrated to the new version, or -used as-is without migrating. When the <B>BBDB</B> detects a database file with -an old version, it will display the features that have been introduced <B>in -the database file</B> from the time of the older version's implementation. It -will offer the choice of migration or use of the <B>BBDB</B> with the -older-version file. -</P><P> - -If migration is chosen, the database file will be automatically changed to the -new format. If migration is declined, the file will kept in the older format -in the <CODE>.bbdb</CODE> buffer, but will be stored internally in the new format. -When changes need to be made to the <CODE>.bbdb</CODE> buffer, changed records will -be reverse-migrated from their internal version to that of the disk file. -</P><P> - - -<H4>Initialization Sequence Change</H4> -<P> - -The initialization sequence has changed. Many of the forms that were required -in 1.51 for initialization are no longer necessary. See section <A HREF="bbdb.html#SEC6">1.1.4 Initial Configuration</A>. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC60"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC59"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.11.2 Other Changes </H3> -<!--docid::SEC60::--> -<P> - - -<UL> -<LI>XEmacs packaging has been partially implemented. - -<LI>bbdb-gnus (support for Gnus scoring and Summary buffer rewriting) has - -been integrated -<LI>Time-based functions have been introduced - -<LI>Web-browser functions (bbdb-w3) have been integrated. - -<LI>mail-abbrevs and mail-extr have been removed - -<LI>Supercite support (bbdb-sc) has been integrated - -<LI>And lots more... - -</UL> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC61"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC60"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC58"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.12 The Latest Version </H2> -<!--docid::SEC61::--> -<P> - -Released versions of the <B>BBDB</B> can be found at the following -sites: -</P><P> - - -<UL> -<LI> - -WWW: <CODE>http://www.netcom.com/~simmonmt</CODE> -<LI> - -WWW: <CODE>http://people.netscape.com/jwz/bbdb</CODE> -<LI> - -FTP: <CODE>ftp.xemacs.org:/pub/bbdb/bbdb.tar.gz</CODE> -</UL> - -Development versions of the <B>BBDB</B> can be found at the following -sites: -<P> - - -<UL> -<LI> - -WWW: <CODE>http://www.netcom.com/~simmonmt</CODE> -</UL> - -Users of development versions of the <B>BBDB</B> should subscribe to the -<CODE>info-bbdb</CODE> mailing list. See section <A HREF="bbdb.html#SEC57">1.10 Mailing Lists</A>. -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC62"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC63"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC61"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.13 The Future </H2> -<!--docid::SEC62::--> -<P> - -The future consists of Bugs and Features. -</P><P> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC63">Known Bugs</A></TD><TD ALIGN="left">Known Bugs, and how to submit new ones</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC64">TODO List</A></TD><TD ALIGN="left">The TODO List</TD><TR> -<TR><TD ALIGN="left"><A HREF="bbdb.html#SEC65">EOL Statements</A></TD><TD ALIGN="left">EOL (End Of Life) Statements</TD><TR> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC63"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC64"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.13.1 Known Bugs </H3> -<!--docid::SEC63::--> -<P> - - -<OL> -<LI><B><KBD>M-TAB</KBD> conflicts with ispell.</B> Workaround: The binding - -installed by the <B>BBDB</B> for address completion/expansion conflicts with -that used by ispell. The suggested workarounds are to rebind the ispell -key (the <B>BBDB</B> binding is not configurable at this time), to manually -invoke ispell via <KBD>M-x</KBD>, or to not use ispell completion functionality -in <B>BBDB</B>-enabled message composition buffers. -<P> - -<LI><B><B>BBDB</B> and abbrev expansion is inconsistent.</B> Workaround: - -Currently, <KBD>M-TAB</KBD> must be used to expand/complete against <B>BBDB</B> -names and net addresses, and <KBD>TAB</KBD> must be used to expand abbrevs (the -values in the <CODE>mail-alias</CODE> field). Unification is planned for a -future version. -<P> - -<LI><B>The <CODE>*BBDB*</CODE> buffer does not always come up when the first - -article in a Gnus Summary Buffer is selected.</B> Workaround: Pressing -<KBD>g</KBD> to reload the article. This will cause the <CODE>*BBDB*</CODE> buffer -to be displayed. -<P> - -<LI><B>Expansion will fail when the name to be expanded is a subset of - -the name for another record.</B> For example, if you have entries for -<SAMP>`John'</SAMP> and <SAMP>`Johnathan'</SAMP>, you will not be able to expand the -name for <SAMP>`John'</SAMP>. Workaround: Use the net address for the subset -name (<SAMP>`John'</SAMP> in this example). -<P> - -</OL> - -It is commonly known that there are no bugs in the <B>BBDB</B>. Bugs found in -defiance of this rule should be submitted to the <CODE>info-bbdb</CODE> mailing -list. To assist the developers, please include the version numbers of the -various programs used when the bug occurred. An example report follows. - - -<PRE> -BBDB Version: -Emacs/XEmacs Version: -Mail/News reader (Gnus, VM, etc) used: -Bug Description: -</PRE> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC64"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC63"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC65"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.13.2 TODO List </H3> -<!--docid::SEC64::--> -<P> - - -<H4>The Near Future</H4> -<P> - - -<UL> -<LI> - -Add bbdb/<I>MUA</I>-delete-sender-record -<P> - -<LI> - -Make completion more consistent so completing an email address gives both the -name and the net address, as opposed to just completing the net -address. See thread starting with -<CODE><ilulnwci761.fsf@squid.pdc.kth.se></CODE> in <CODE>info-bbdb</CODE>. -<P> - -<LI> - -Configurable completion. Should allow user to specify "complete on -names first, then nets", etc. -<P> - -<LI> - -More variables for upgrading. Specifically a variable that lets users -specify extra fields for upgrading (an alist <SAMP>`(a . b)'</SAMP> that says -field <SAMP>`a'</SAMP> should be upgraded the same way as field <SAMP>`b'</SAMP>. -<P> - -<LI> - -Change all functions that switch on MUAs to use compose-mail (ex: -<CODE>bbdb-send-mail-internal</CODE>). -<P> - -<LI> - -Soren Dayton's method for generically extending the <B>BBDB</B> with -special-purpose fields -<P> - -<LI> - -Sorting records on alternate keys. <CODE>bbdb-sort-by</CODE> from Boris -Goldowsky. -<P> - -<LI> - -Sorting individual types of fields - Sam Steingold's method. -<P> - -<LI> - -Button 3 menus (Mark Moll and Soren Dayton) -<P> - -<LI> - -<B>BBDB</B>-controlled mail splitting in Gnus. Add hook for Soren to make -splitting better. Routine from Brian Edmonds. -<P> - -<LI> - -Conditionalized erasure of properties when text is pasted into the <B>BBDB</B>. -<P> - -<LI> - -Should notice when there are <SAMP>`Reply-To:'</SAMP> addresses.<P> - -<LI> - -Should have a command for merging together two divergent copies of -a <TT>`.bbdb'</TT> file (in case you read mail on one machine and news on -another, for instance.)<P> - -<LI> - -The <SAMP>`*BBDB*'</SAMP> buffer should be resized to exactly fit what it's -displaying, even when not in "electric" mode.<P> - -<LI> - -It should be possible to do completion on last names as well as first -names.<P> - -<LI> - -The BBDB buffer is left at the top of the stack when GNUS is exited -because GNUS runs its exit-hooks too early. This should be fixed.<P> - -<LI> - -String area codes (German area codes can begin with zeroes) patch from -<CODE>Michael Sperber <sperber@informatik.uni-tuebingen.de></CODE> -<P> - -<LI> - -Internationalization of addresses. Country code to control formats for -printing, etc. Country->Format mapping. -<P> - -<LI> - -Default country variable, similar to <CODE>bbdb-default-area-code</CODE>. -<P> - -<LI> - -Make format self-describing in comment -<P> - -<LI> - -ISO-8859-x characters in records for printing. -<P> - -<LI> - -Prefix for <KBD>W</KBD> (<CODE>bbdb-www</CODE>) command to allow selection of -different addresses. -<P> - -<LI> - -Generalized buttons (via extents) for fields. Example: <SAMP>`(a . b)'</SAMP> -means create button that calls <SAMP>`b'</SAMP> for each entry in the <SAMP>`a'</SAMP> -field. -<P> - -<LI> - -Remove support for GNUS. Start with lisp Makefile (remove nntp and gnus -loads). -<P> - -<LI> - -More flexible auto-addition. Conditionalizing of addition (conditions -or supplied function). Prompt if multiple records that meet criteria exist. -<P> - -<LI> - -Different output formats. See Toby Speight's <CODE><s8iurdodvm.fsf@plato.ansa.co.uk></CODE> -and Bin Mu's <CODE><199801221605.KAA23663@DerivaTech.Com></CODE>. -<P> - -<LI> - -Generalized area-code-split program that could split, for example, based -on input copied (or straight fetch of page) from the Bellcore NANP page. -<P> - -<LI> - -Print multivalue (comma-separated) fields with one value per line -<P> - -<LI> - -Easier BBDB extension. See <CODE><xcdyb30f3hb.fsf@ra.cs.uchicago.edu></CODE> -from Soren Dayton. -<P> - -<LI> - -Take birthdays from the <B>BBDB</B>, add them to calendar. From Boris -Goldowsky. -<P> - -<LI> - -Make mail aliases file for other mailers. From Boris Goldowsky. -<P> - -<LI> - -Various patches from Boris Goldowsky in <TT>`bbdb-ext'</TT>. -<P> - -<LI> - -Various other patches: - -<UL> -<LI> - -<CODE>bbdb-filters-0.2</CODE> -<LI> - -<CODE>bbdb-frame.el</CODE> -<LI> - -<CODE>bbdb-letter-1.0</CODE> -<LI> - -<CODE>bbdb-plz</CODE> -<LI> - -<CODE>bbdb-query</CODE> -<LI> - -<CODE>country</CODE> -<LI> - -<CODE>country-info</CODE> -</UL> - -Note that these files have not been investigated. They may or -may not be incorporated. -<P> - -<LI> - -Ability to remove all properties from copied strings. -<P> - -</UL> - - -<H4>Not-So-Near Future</H4> -<P> - - -<UL> -<LI> - -Fix Gnus scoring so it rebuilds when gnus-score disappears -<P> - -<LI> - -Multiline note fields -<P> - -<LI> - -Change key to be some kind of unique number -<P> - -<LI> - -There should be better support for non-American addresses and phone -numbers. This might be Near Future if somebody volunteers to send me patches. -<P> - -<LI> - -Should reimplement "electric" mode to not be so broken.<P> - -<LI> - -The <KBD>*C-o</KBD> keystroke should add a field to all displayed records. -Perhaps <KBD>*;</KBD> should append some text to an arbitrary field of all -displayed records. <P> - -<LI> - -Multiple <TT>`.bbdb'</TT> files with precedence relationships. See Wes -Hardaker's <BR><CODE><sdu3awz75a.fsf@oakdale.ucdavis.edu></CODE> -<P> - -<LI> - -Automatically grab information about a person from their sig. See -Graham Clark's <CODE>info-bbdb</CODE> post -<CODE><6282.199706161624@havra.dcs.ed.ac.uk></CODE> and Adrian Aichner's -<CODE>info-bbdb</CODE> post -<CODE><rxsiuzebpgp.fsf@midnight.ecf.teradyne.com></CODE>. Would like to have -<CODE>bbdb-snarf</CODE> attack the sig then compare the snarfed data with the -header data. -<P> - -</UL> - - -<H4>Thoughts</H4> -<P> - - -<UL> -<LI> - -Are there enough hooks? -<P> - -<LI> - -The interfaces should share more code. <P> - -<LI> - -The <CODE>bbdb-create-internal</CODE> function should be more forgiving.<P> - -<LI> - -More <KBD>*</KBD> commands in general, including <KBD>*d</KBD>. -</UL> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC65"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC64"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC66"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC62"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H3> 1.13.3 End of Life (EOL) Statements </H3> -<!--docid::SEC65::--> -<P> - -The items in the following list describe items for which support will be -removed in coming versions of the <B>BBDB</B>. The items listed are -guaranteed to be supported and present only until the EOL date. They -may be removed without warning at any time thereafter. -</P><P> - - -<OL> -<LI><CODE>advertized-bbdb-delete-current-field-or-record</CODE><BR> - -Support for this function will be removed for version 2.2. It is -recommended that all code depending on this variable be switched to use -<CODE>bbdb-delete-current-field-or-record</CODE>. The two functions have the -same calling conventions and effects. This EOL statement was added for -version 2.1. -<P> - -<LI>Support for the GNUS (not Gnus) newsreader<BR> - -The GNUS-specific parts of the <B>BBDB</B> will be actively removed for the -2.2 release. No further maintenance and/or bugfixes are planned for -GNUS code at this time. This EOL statement was added for version 2.1. -</OL> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC66"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC65"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC67"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H2> 1.14 Thanks </H2> -<!--docid::SEC66::--> -<P> - -Thanks to everyone on the info-bbdb mailing list for many useful suggestions. -This hack would be far less insidious without their input! -</P><P> - - -<H3>Thanks list for versions after 1.51</H3> -<P> - -Thanks to Adrian Aichner, Kees de Bruin, David Carlton, Soren Dayton, -Brian Edmonds, Boris Goldowsky, Seth Golub, John Heidemann, Christopher -Kline, Carsten Leonhardt, Hrvoje Niksic, Jens-Ulrik Hoger Petersen, -Colin Rafferty, Sam Steingold, Marco Walther, Christoph Wedler -</P><P> - -Last, but not least, thanks to Jamie Zawinski for writing <B>BBDB</B> in the -first place. -</P><P> - - -<H3>Thanks list for versions prior to and including 1.51.</H3> -<P> - -And special thanks to Sebastian Kremer, Joe Wells, Todd Kaufmann, Andy -Norman, Ivan Vazquez, Stewart Clamen, Roland McGrath, Dave Brennan, -Kimball Collins, Dirk Grunwald, Philippe Queinnec, Boris Putanec, Dave -Disser, Francois Felix Ingrand, Sean Owens, Guido Bosch, Lance Brown, -Tom Emerson, George Hartzell, Luis Miguel Silveira, Kimmo Suominen, -Derek Upham, David Zuhn, Rod Whitby, Richard Mlynarik. -</P><P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC67"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC66"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC68"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H1> _ </H1> -<!--docid::SEC67::--> - -<PRE> -in.sid.i.ous aj \in-'sid-e-*s\ - [L insidiosus, fr. insidiae ambush, fr. insidere to sit in, sit on, - fr. in- + sedere to sit -- more at SIT] - 1 a : awaiting a chance to entrap TREACHEROUS - b : harmful but enticing SEDUCTIVE - 2 a : having a gradual and cumulative effect SUBTLE - b of a disease - : developing so gradually as to be well established before - becoming apparent - in.sid.i.ous.ly av - in.sid.i.ous.ness n -</PRE> - - -<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> -</TABLE></BLOCKQUOTE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC68"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC67"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC69"> > </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC69"> >> </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H1> Concept Index </H1> -<!--docid::SEC68::--> -<H3>Jump to:</H3> -<A HREF="#cindex_%">%</A> - -<A HREF="#cindex_*">*</A> - -<BR> -<A HREF="#cindex_a">A</A> - -<A HREF="#cindex_b">B</A> - -<A HREF="#cindex_c">C</A> - -<A HREF="#cindex_d">D</A> - -<A HREF="#cindex_e">E</A> - -<A HREF="#cindex_f">F</A> - -<A HREF="#cindex_g">G</A> - -<A HREF="#cindex_i">I</A> - -<A HREF="#cindex_m">M</A> - -<A HREF="#cindex_n">N</A> - -<A HREF="#cindex_o">O</A> - -<A HREF="#cindex_p">P</A> - -<A HREF="#cindex_r">R</A> - -<A HREF="#cindex_s">S</A> - -<A HREF="#cindex_t">T</A> - -<A HREF="#cindex_u">U</A> - -<A HREF="#cindex_x">X</A> -<P></P><P></P> -<TABLE border=0> -<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> section</TH></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_%">%</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX113">%F</A></TD><TD><A HREF="bbdb.html#SEC34">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX114">%UB</A></TD><TD><A HREF="bbdb.html#SEC34">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_*">*</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX25">*BBDB* buffer</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_a">A</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX34">Adding new fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX23">Adding new records</A></TD><TD><A HREF="bbdb.html#SEC20">1.2.4 Manual record addition</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX97">Address completion</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX142">Address completion</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX130">AKA</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX129">Alternate names</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX89">Annotating the sender of the current message</A></TD><TD><A HREF="bbdb.html#SEC24">1.4 Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX134">Auto-save files</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX136">Automatic display of the corresponding record</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX175">Automatically adding text to records</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX126">Automatically creating records</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX168">Automatically creating records</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_b">B</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX24">BBDB Mode</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX67">Browsing the Web page for the current record</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX1">Builtin field types</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_c">C</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX28">Changing fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX71">Changing windows</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX139">Completion</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX22">Creating new records</A></TD><TD><A HREF="bbdb.html#SEC20">1.2.4 Manual record addition</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX72">Creating new records</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_d">D</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX31">Deleting fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX57">Dialing phone numbers</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX74">Displaying changed records</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_e">E</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX27">Editing fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX122">Electric display</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX15">Elided display</A></TD><TD><A HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX39">European phone numbers</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX120">European phone numbers</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_f">F</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX61">Finger interface</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX53">Fixing mistakes</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_g">G</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX106">GNUS Subject-buffer</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_i">I</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC6">Initial Configuration</A></TD><TD><A HREF="bbdb.html#SEC6">1.1.4 Initial Configuration</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX35">Inserting new fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC2">Installation</A></TD><TD><A HREF="bbdb.html#SEC2">1.1 Installation</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_m">M</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX96">Mail address completion</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX141">Mail address completion</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX102">Mail Aliases</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX101">Mailing lists</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC2">Makefile</A></TD><TD><A HREF="bbdb.html#SEC2">1.1 Installation</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX107">mark-char</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX54">Merging records</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_n">N</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX95">Name completion</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX140">Name completion</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC4">Normal User Installation</A></TD><TD><A HREF="bbdb.html#SEC4">1.1.2 Normal User Installation</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX38">North American phone numbers</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX119">North American phone numbers</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_o">O</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX16">One-line display</A></TD><TD><A HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_p">P</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX37">Phone numbers</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX117">Phone numbers</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX6">Printing records in the database</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX69">Printing records in the database</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC46">Printing records in the database</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_r">R</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX32">Removing fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX41">Reordering fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_s">S</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX51">Saving your changes</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX8">Searching the database</A></TD><TD><A HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX76">Searching the database</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX78">Searching the database</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX48">Sending mail</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX100">Sending mail</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX84">Showing the sender of the current message</A></TD><TD><A HREF="bbdb.html#SEC24">1.4 Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX56">Sound support</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX2">Special Field Names</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC45">Storing FTP sites in the BBDB</A></TD><TD><A HREF="bbdb.html#SEC45">1.8.1 <CODE>bbdb-ftp</CODE></A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_t">T</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX164">Timestamping records</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX42">Transposing fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_u">U</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX14">User-defined fields</A></TD><TD><A HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX36">User-defined fields</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="cindex_x">X</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC5">XEmacs Package Installation</A></TD><TD><A HREF="bbdb.html#SEC5">1.1.3 XEmacs Package Installation</A></TD></TR> -</TABLE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="SEC69"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC68"> < </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ > ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC68"> << </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> - - -<H1> Variable Index </H1> -<!--docid::SEC69::--> -<H3>Jump to:</H3> -<A HREF="#vindex_b">B</A> - -<A HREF="#vindex_g">G</A> - -<A HREF="#vindex_v">V</A> -<P></P><P></P> -<TABLE border=0> -<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> section</TH></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="vindex_b">B</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX179">bbd-print-file-name</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX156">bbdb-after-read-db-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX144">bbdb-always-add-addresses</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX174">bbdb-auto-notes-alist</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX176">bbdb-auto-notes-ignore</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX177">bbdb-auto-notes-ignore-all</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX132">bbdb-auto-revert-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX160">bbdb-canonicalize-net-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX146">bbdb-canonicalize-redundant-nets-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX123">bbdb-case-fold-search</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX153">bbdb-change-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX161">bbdb-change-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX98">bbdb-completion-display-record</A></TD><TD><A HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX138">bbdb-completion-type</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX152">bbdb-create-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX116">bbdb-default-area-code</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX58">bbdb-dial-local-prefix</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX59">bbdb-dial-long-distance-prefix</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX121">bbdb-electric-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX148">bbdb-elided-display</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX115">bbdb-file</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX4">bbdb-finger-host-field</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX62">bbdb-finger-host-field</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX167">bbdb-ignore-most-messages-alist</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX172">bbdb-ignore-some-messages-alist</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX66">bbdb-info-file</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX158">bbdb-initialize-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX151">bbdb-list-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX157">bbdb-load-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX147">bbdb-message-caching-enabled</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX154">bbdb-mode-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX145">bbdb-new-nets-always-primary</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX118">bbdb-north-american-phone-numbers-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX133">bbdb-notice-auto-save-file</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX155">bbdb-notice-hook</A></TD><TD><A HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX173">bbdb-notice-hook</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX150">bbdb-offer-save</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX149">bbdb-pop-up-elided-display</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX137">bbdb-pop-up-target-lines</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX181">bbdb-print-alist</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX182">bbdb-print-brief-alist</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX178">bbdb-print-elide</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX185">bbdb-print-epilog</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX183">bbdb-print-full-alist</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX184">bbdb-print-prolog</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX180">bbdb-print-require</A></TD><TD><A HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX127">bbdb-quiet-about-name-mismatches</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX131">bbdb-readonly-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX49">bbdb-send-mail-style</A></TD><TD><A HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX128">bbdb-use-alternate-names</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX135">bbdb-use-pop-up</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX143">bbdb-user-mail-names</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX108">bbdb/gnus-header-prefer-real-names</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX109">bbdb/gnus-header-show-bbdb-names</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX110">bbdb/gnus-lines-and-from-length</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX105">bbdb/gnus-mark-known-posters</A></TD><TD><A HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC30">bbdb/gnus-score-default</A></TD><TD><A HREF="bbdb.html#SEC30">1.5.1.1 Scoring</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX5">bbdb/gnus-score-field</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC30">bbdb/gnus-score-field</A></TD><TD><A HREF="bbdb.html#SEC30">1.5.1.1 Scoring</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX124">bbdb/mail-auto-create-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX169">bbdb/mail-auto-create-p</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX125">bbdb/news-auto-create-p</A></TD><TD><A HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX170">bbdb/news-auto-create-p</A></TD><TD><A HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX3">bbdb/sc-attribution-field</A></TD><TD><A HREF="bbdb.html#SEC17">1.2.1 Database Fields</A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX186">bbdb/srv-auto-create-p</A></TD><TD><A HREF="bbdb.html#SEC48">1.8.4 <CODE>bbdb-srv</CODE></A></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX187">bbdb/srv-display-delay</A></TD><TD><A HREF="bbdb.html#SEC48">1.8.4 <CODE>bbdb-srv</CODE></A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="vindex_g">G</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#SEC30">gnus-score-find-score-files-function</A></TD><TD><A HREF="bbdb.html#SEC30">1.5.1.1 Scoring</A></TD></TR> -<TR><TD COLSPAN=3> <HR></TD></TR> -<TR><TH><A NAME="vindex_v">V</A> -</TH><TD></TD><TD></TD></TR> -<TR><TD></TD><TD><A HREF="bbdb.html#IDX111">vm-summary-format</A></TD><TD><A HREF="bbdb.html#SEC34">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> -</TABLE> -<P> - -<BR> <HR SIZE="6"> <BR> -<A NAME="bbdb.html"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> -<H1></H1> -<H3><A NAME="FOOT1" HREF="bbdb.html#DOCF1">(1)</A></H3> -<P>"Core Functionality" is defined as the parts of -the <B>BBDB</B> used to implement basic record creation (<SAMP>`M-x -bbdb-create'</SAMP>) and searching (<SAMP>`M-x bbdb'</SAMP>). -<H3><A NAME="FOOT2" HREF="bbdb.html#DOCF2">(2)</A></H3> -<P>This -documentation can be accessed by typing <KBD>C-h f bbdb-initialize RET</KBD>. -<H3><A NAME="FOOT3" HREF="bbdb.html#DOCF3">(3)</A></H3> -<P>If you are using GNUS (not Gnus), - and if your GNUS version is 3.14 or older, use the <CODE>Gnus</CODE> (note - the capitalization) symbol. -<H3><A NAME="FOOT4" HREF="bbdb.html#DOCF4">(4)</A></H3> -<P>For the VM - initialization to work properly, you must either call - <CODE>bbdb-initialize</CODE> with the <CODE>vm</CODE> symbol from within your VM - initialization file (<TT>`~/.vm'</TT>), or you must call - <CODE>bbdb-insinuate-vm</CODE> manually from within your VM initialization - file. -<H3><A NAME="FOOT5" HREF="bbdb.html#DOCF5">(5)</A></H3> -<P>While it is possible to put a multi-character mark -in <CODE>bbdb-message-marker-field</CODE> and/or in -<CODE>bbdb/gnus-summary-known-poster-mark</CODE>, the resulting summary buffer -will be misaligned as a result. This misalignment will result from fact -that at this time the character used to indicate posts whose authors are -not in the <B>BBDB</B> is always a single character, and cannot be -changed. -<H3><A NAME="FOOT6" HREF="bbdb.html#DOCF6">(6)</A></H3> -<P><CODE>bbdb-snarf</CODE> is actually a wrapper for -<CODE>bbdb-snarf-region</CODE> that determines the relevant region and passes it -on. -<H3><A NAME="FOOT7" HREF="bbdb.html#DOCF7">(7)</A></H3> -<P>Use the full path to <CODE>bbdb-srv.pl</CODE> if -it is not in the default path. -<HR SIZE=1> -<BR> -<A NAME="SEC_Contents"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> -<H1>Table of Contents</H1> -<UL> -<LI><A NAME="TOC1" HREF="bbdb.html#SEC1">1. BBDB</A> -</LI><UL> -<LI><A NAME="TOC2" HREF="bbdb.html#SEC2">1.1 Installation</A> -</LI><UL> -<LI><A NAME="TOC3" HREF="bbdb.html#SEC3">1.1.1 General Prerequisites</A> -</LI><LI><A NAME="TOC4" HREF="bbdb.html#SEC4">1.1.2 Normal User Installation</A> -</LI><LI><A NAME="TOC5" HREF="bbdb.html#SEC5">1.1.3 XEmacs Package Installation</A> -</LI><LI><A NAME="TOC6" HREF="bbdb.html#SEC6">1.1.4 Initial Configuration</A> -</LI><UL> -<LI><A NAME="TOC7" HREF="bbdb.html#SEC7">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A> -</LI><LI><A NAME="TOC8" HREF="bbdb.html#SEC8">1.1.4.2 Initializing <B>BBDB</B> support for MH-E</A> -</LI><LI><A NAME="TOC9" HREF="bbdb.html#SEC9">1.1.4.3 Initializing <B>BBDB</B> support for RMAIL</A> -</LI><LI><A NAME="TOC10" HREF="bbdb.html#SEC10">1.1.4.4 Initializing <B>BBDB</B> support for Sendmail</A> -</LI><LI><A NAME="TOC11" HREF="bbdb.html#SEC11">1.1.4.5 Initializing <B>BBDB</B> support for VM</A> -</LI><LI><A NAME="TOC12" HREF="bbdb.html#SEC12">1.1.4.6 Initializing <B>BBDB</B> support for Message mode</A> -</LI><LI><A NAME="TOC13" HREF="bbdb.html#SEC13">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A> -</LI><LI><A NAME="TOC14" HREF="bbdb.html#SEC14">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A> -</LI><LI><A NAME="TOC15" HREF="bbdb.html#SEC15">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A> -</LI></UL> -</UL> -<LI><A NAME="TOC16" HREF="bbdb.html#SEC16">1.2 The <B>BBDB</B></A> -</LI><UL> -<LI><A NAME="TOC17" HREF="bbdb.html#SEC17">1.2.1 Database Fields</A> -</LI><LI><A NAME="TOC18" HREF="bbdb.html#SEC18">1.2.2 Basic searching commands</A> -</LI><LI><A NAME="TOC19" HREF="bbdb.html#SEC19">1.2.3 Advanced searching commands</A> -</LI><LI><A NAME="TOC20" HREF="bbdb.html#SEC20">1.2.4 Manual record addition</A> -</LI></UL> -<LI><A NAME="TOC21" HREF="bbdb.html#SEC21">1.3 BBDB Mode</A> -</LI><UL> -<LI><A NAME="TOC22" HREF="bbdb.html#SEC22">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A> -</LI><LI><A NAME="TOC23" HREF="bbdb.html#SEC23">1.3.2 Other database manipulation functions</A> -</LI></UL> -<LI><A NAME="TOC24" HREF="bbdb.html#SEC24">1.4 Interfaces</A> -</LI><UL> -<LI><A NAME="TOC25" HREF="bbdb.html#SEC25">1.4.1 Mail Reading Interfaces</A> -</LI><LI><A NAME="TOC26" HREF="bbdb.html#SEC26">1.4.2 News Reading Interfaces</A> -</LI><LI><A NAME="TOC27" HREF="bbdb.html#SEC27">1.4.3 Mail Sending Interfaces</A> -</LI></UL> -<LI><A NAME="TOC28" HREF="bbdb.html#SEC28">1.5 Reader-specific Features</A> -</LI><UL> -<LI><A NAME="TOC29" HREF="bbdb.html#SEC29">1.5.1 Gnus-specific Features</A> -</LI><UL> -<LI><A NAME="TOC30" HREF="bbdb.html#SEC30">1.5.1.1 Scoring</A> -</LI><LI><A NAME="TOC31" HREF="bbdb.html#SEC31">1.5.1.2 Gnus Summary Buffer Enhancements</A> -</LI><LI><A NAME="TOC32" HREF="bbdb.html#SEC32">1.5.1.3 GNUS Summary Buffer Enhancements</A> -</LI></UL> -<LI><A NAME="TOC33" HREF="bbdb.html#SEC33">1.5.2 VM-specific features</A> -</LI><UL> -<LI><A NAME="TOC34" HREF="bbdb.html#SEC34">1.5.2.1 VM Message Summary Enhancements</A> -</LI></UL> -</UL> -<LI><A NAME="TOC35" HREF="bbdb.html#SEC35">1.6 Using the <B>BBDB</B> with other packages</A> -</LI><UL> -<LI><A NAME="TOC36" HREF="bbdb.html#SEC36">1.6.1 Using the <B>BBDB</B> with Message Mode</A> -</LI><LI><A NAME="TOC37" HREF="bbdb.html#SEC37">1.6.2 Using the <B>BBDB</B> with Reportmail</A> -</LI><LI><A NAME="TOC38" HREF="bbdb.html#SEC38">1.6.3 Using the <B>BBDB</B> with Supercite</A> -</LI><LI><A NAME="TOC39" HREF="bbdb.html#SEC39">1.6.4 Using the <B>BBDB</B> with Web Browsers</A> -</LI></UL> -<LI><A NAME="TOC40" HREF="bbdb.html#SEC40">1.7 Options</A> -</LI><UL> -<LI><A NAME="TOC41" HREF="bbdb.html#SEC41">1.7.1 Customization Parameters</A> -</LI><LI><A NAME="TOC42" HREF="bbdb.html#SEC42">1.7.2 Customization Hooks</A> -</LI><LI><A NAME="TOC43" HREF="bbdb.html#SEC43">1.7.3 Predefined Hooks</A> -</LI></UL> -<LI><A NAME="TOC44" HREF="bbdb.html#SEC44">1.8 Utilities</A> -</LI><UL> -<LI><A NAME="TOC45" HREF="bbdb.html#SEC45">1.8.1 <CODE>bbdb-ftp</CODE></A> -</LI><LI><A NAME="TOC46" HREF="bbdb.html#SEC46">1.8.2 <CODE>bbdb-print</CODE></A> -</LI><LI><A NAME="TOC47" HREF="bbdb.html#SEC47">1.8.3 <CODE>bbdb-snarf</CODE></A> -</LI><LI><A NAME="TOC48" HREF="bbdb.html#SEC48">1.8.4 <CODE>bbdb-srv</CODE></A> -</LI></UL> -<LI><A NAME="TOC49" HREF="bbdb.html#SEC49">1.9 Internals</A> -</LI><UL> -<LI><A NAME="TOC50" HREF="bbdb.html#SEC50">1.9.1 BBDB data file format</A> -</LI><UL> -<LI><A NAME="TOC51" HREF="bbdb.html#SEC51">1.9.1.1 Record Vectors</A> -</LI><LI><A NAME="TOC52" HREF="bbdb.html#SEC52">1.9.1.2 Phone Vectors</A> -</LI><LI><A NAME="TOC53" HREF="bbdb.html#SEC53">1.9.1.3 Address Vectors</A> -</LI><LI><A NAME="TOC54" HREF="bbdb.html#SEC54">1.9.1.4 Cache Vector</A> -</LI><LI><A NAME="TOC55" HREF="bbdb.html#SEC55">1.9.1.5 Notes String or Alist</A> -</LI><LI><A NAME="TOC56" HREF="bbdb.html#SEC56">1.9.1.6 Example BBDB record</A> -</LI></UL> -</UL> -<LI><A NAME="TOC57" HREF="bbdb.html#SEC57">1.10 Mailing Lists</A> -</LI><LI><A NAME="TOC58" HREF="bbdb.html#SEC58">1.11 Changes in this Version</A> -</LI><UL> -<LI><A NAME="TOC59" HREF="bbdb.html#SEC59">1.11.1 Major Changes</A> -</LI><LI><A NAME="TOC60" HREF="bbdb.html#SEC60">1.11.2 Other Changes</A> -</LI></UL> -<LI><A NAME="TOC61" HREF="bbdb.html#SEC61">1.12 The Latest Version</A> -</LI><LI><A NAME="TOC62" HREF="bbdb.html#SEC62">1.13 The Future</A> -</LI><UL> -<LI><A NAME="TOC63" HREF="bbdb.html#SEC63">1.13.1 Known Bugs</A> -</LI><LI><A NAME="TOC64" HREF="bbdb.html#SEC64">1.13.2 TODO List</A> -</LI><LI><A NAME="TOC65" HREF="bbdb.html#SEC65">1.13.3 End of Life (EOL) Statements</A> -</LI></UL> -<LI><A NAME="TOC66" HREF="bbdb.html#SEC66">1.14 Thanks</A> -</LI></UL> -<LI><A NAME="TOC67" HREF="bbdb.html#SEC67">_</A> -</LI><LI><A NAME="TOC68" HREF="bbdb.html#SEC68">Concept Index</A> -</LI><LI><A NAME="TOC69" HREF="bbdb.html#SEC69">Variable Index</A> -</LI></UL> -<HR SIZE=1> -<BR> -<A NAME="SEC_OVERVIEW"></A> +<A NAME="SEC_Top"></A> <TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> <TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> -<HR SIZE=1> -<H1>Short Table of Contents</H1> -<A NAME="TOC1" HREF="bbdb.html#SEC1">1. BBDB</A> -<BR> -<A NAME="TOC67" HREF="bbdb.html#SEC67">_</A> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<CENTER> +<H1>BBDB User Manual</H1> +<H2>A phone number and address database program for Emacs +Edition $Revision$, $Date$</H2> +by Jamie Zawinski and Matt Simmons +</CENTER> +<HR> +<P></P> +<H2> Overview: </H2> +<BLOCKQUOTE> +<A NAME="TOC1" HREF="bbdb_1.html#SEC1">1. BBDB</A> <BR> -<A NAME="TOC68" HREF="bbdb.html#SEC68">Concept Index</A> +<A NAME="TOC89" HREF="bbdb_2.html#SEC89">_</A> <BR> -<A NAME="TOC69" HREF="bbdb.html#SEC69">Variable Index</A> +<A NAME="TOC90" HREF="bbdb_3.html#SEC90">Concept Index</A> <BR> -<HR SIZE=1> +<A NAME="TOC91" HREF="bbdb_4.html#SEC91">Variable Index</A> <BR> -<A NAME="SEC_About"></A> -<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> -<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Contents">Contents</A>]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD> -<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_About"> ? </A>]</TD> -</TR></TABLE> +</BLOCKQUOTE> <HR SIZE=1> -<H1>About this document</H1> -This document was generated with <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html -"><I>texi2html 1.60Beta</I></A> on February, 29 2000 by Ronan Waide. -<P></P> -The buttons in the navigation panels have the following meaning: -<P></P> -<table border = "1"> -<TR> -<TH> Button </TH> -<TH> Name </TH> -<TH> Go to </TH> -<TH> From 1.2.3 go to</TH> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ < ] </TD> -<TD ALIGN="CENTER"> -Back -</TD> -<TD> -previous section in reading order -</TD> -<TD> -1.2.2 -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ > ] </TD> -<TD ALIGN="CENTER"> -Forward -</TD> -<TD> -next section in reading order -</TD> -<TD> -1.2.4 -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ << ] </TD> -<TD ALIGN="CENTER"> -FastBack -</TD> -<TD> -previous or up-and-previous section -</TD> -<TD> -1.1 -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ Up ] </TD> -<TD ALIGN="CENTER"> -Up -</TD> -<TD> -up section -</TD> -<TD> -1.2 -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ >> ] </TD> -<TD ALIGN="CENTER"> -FastForward -</TD> -<TD> -next or up-and-next section -</TD> -<TD> -1.3 -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [Top] </TD> -<TD ALIGN="CENTER"> -Top -</TD> -<TD> -cover (top) of document -</TD> -<TD> - -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [Contents] </TD> -<TD ALIGN="CENTER"> -Contents -</TD> -<TD> -table of contents -</TD> -<TD> - -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [Index] </TD> -<TD ALIGN="CENTER"> -Index -</TD> -<TD> -concept index -</TD> -<TD> - -</TD> -</TR> -<TR> -<TD ALIGN="CENTER"> - [ ? ] </TD> -<TD ALIGN="CENTER"> -About -</TD> -<TD> -this page -</TD> -<TD> - -</TD> -</TR> -</TABLE> -<P></P> -where the <STRONG> Example </STRONG> assumes that the current position -is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of -the following structure: -<UL> -<LI> 1. Section One </LI> -<UL> -<LI>1.1 Subsection One-One</LI> -<UL> -<LI> ... </LI> -</UL> -<LI>1.2 Subsection One-Two</LI> -<UL> -<LI>1.2.1 Subsubsection One-Two-One -</LI><LI>1.2.2 Subsubsection One-Two-Two -</LI><LI>1.2.3 Subsubsection One-Two-Three <STRONG> -<== Current Position </STRONG> -</LI><LI>1.2.4 Subsubsection One-Two-Four -</LI></UL> -<LI>1.3 Subsection One-Three</LI> -<UL> -<LI> ... </LI> -</UL> -<LI>1.4 Subsection One-Four</LI> -</UL> -</UL> - -<HR SIZE=1> -<BR> +<BR> <FONT SIZE="-1"> -This document was generated using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html "><I>texi2html</I></A> -by <I>Ronan Waide on February, 29 2000</I> </BODY> </HTML> diff --git a/html/bbdb_1.html b/html/bbdb_1.html new file mode 100644 index 0000000..bbd58a8 --- /dev/null +++ b/html/bbdb_1.html @@ -0,0 +1,5026 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: 1. BBDB</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: 1. BBDB"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: 1. BBDB"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC1"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1> 1. BBDB </H1> +<!--docid::SEC1::--> +<P> + +<B>BBDB</B> is a rolodex-like database program for GNU Emacs. <B>BBDB</B> stands +for <B><I>Insidious Big Brother Database</I></B>, and is not, repeat, <EM>not</EM> an +obscure reference to the Buck Rogers TV series. +</P><P> + +It provides the following features: +</P><P> + +<UL> +<LI> +Integration with mail and news readers, with little or no +interaction by the user: <P> + +<UL> +<LI> +easy (or automatic) display of the record corresponding to the sender of +the current message; <P> + +<LI> +automatic creation of records based on the contents of the current +message; <P> + +<LI> +automatic addition of data to arbitrary fields of the record +corresponding to the sender of the current message. </UL> +<P> + +<LI> +Listing all records which match a regular expression; +<P> + +<LI> +Listing all records which match a regular expression in a particular +field (<SAMP>`company'</SAMP> or <SAMP>`notes,'</SAMP> for example); </UL> +<P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC2">1.1 Installation</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC28">1.2 The <B>BBDB</B></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Overview</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC33">1.3 BBDB Mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC36">1.4 Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Interfaces to various readers</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC40">1.5 Reader-specific Features</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Features only available to specific readers</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC49">1.6 Using the <B>BBDB</B> with other packages</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Using the BBDB with other packages</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC54">1.7 Options</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC58">1.8 Utilities</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC63">1.9 Internals</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">BBDB Internals</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC71">1.10 Mailing Lists</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">The BBDB mailing lists</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC72">1.11 Changes in this Version</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">New in this version</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC77">1.12 The Latest Version</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Where to Get It</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC78">1.13 The Future</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Known Bugs, the TODO list and EOL statements</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC85">1.14 Thanks</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">to the Ministry of Bugs</TD></TR> +</TABLE> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_3.html#SEC90">Concept Index</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_4.html#SEC91">Variable Index</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Installation +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC3">1.1.1 General Prerequisites</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">General <B>BBDB</B> requirements</TD></TR> +</TABLE> + +<br> +File Installation +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">"Normal" Installations</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC10">1.1.3 XEmacs Package Installation</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Installing as an XEmacs package</TD></TR> +</TABLE> + +<br> +Initial Configuration +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC13">1.1.4 Initial Configuration</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">How to initially set up the <B>BBDB</B></TD></TR> +</TABLE> + +<br> +Manual initialization +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC19">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC20">1.1.4.2 Initializing <B>BBDB</B> support for MH-E</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC21">1.1.4.3 Initializing <B>BBDB</B> support for RMAIL</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC22">1.1.4.4 Initializing <B>BBDB</B> support for Sendmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC23">1.1.4.5 Initializing <B>BBDB</B> support for VM</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Other packages: +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC24">1.1.4.6 Initializing <B>BBDB</B> support for Message mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC25">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC26">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +The <B>BBDB</B> +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Description of database fields</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Basic database searching commands</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC31">1.2.3 Advanced searching commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Advanced database searching commands</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC32">1.2.4 Manual record addition</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Adding records by hand</TD></TR> +</TABLE> + +<br> +Interfaces +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC37">1.4.1 Mail Reading Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC38">1.4.2 News Reading Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Reader-specific Features +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC41">1.5.1 Gnus-specific Features</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC47">1.5.2 VM-specific features</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">VM-specific Features</TD></TR> +</TABLE> + +<br> +Gnus-specific Features +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Store score adjustments in the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC43">1.5.1.2 Gnus Summary Buffer Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in the Summary buffer</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in the Subject List</TD></TR> +</TABLE> + +<br> +VM-specific features +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in message summary</TD></TR> +</TABLE> + +<br> +Using the <B>BBDB</B> with other packages +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC50">1.6.1 Using the <B>BBDB</B> with Message Mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC51">1.6.2 Using the <B>BBDB</B> with Reportmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC52">1.6.3 Using the <B>BBDB</B> with Supercite</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Options +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Utilities +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC59">1.8.1 <CODE>bbdb-ftp</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Storing FTP sites in the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Print the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC61">1.8.3 <CODE>bbdb-snarf</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Record generation from raw text</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC62">1.8.4 <CODE>bbdb-srv</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">External control of the <B>BBDB</B></TD></TR> +</TABLE> + +<br> +Changes in this Version +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC73">1.11.1 Major Changes</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Major changes in this version</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC75">1.11.2 Other Changes</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Not-so-major changes</TD></TR> +</TABLE> + +<br> +The Future +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC79">1.13.1 Known Bugs</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Known Bugs, and how to submit new ones</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC80">1.13.2 TODO List</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">The TODO List</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC84">1.13.3 End of Life (EOL) Statements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">EOL (End Of Life) Statements</TD></TR> +</TABLE> + +<br> +_ +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +</TABLE> + +<br> +</BLOCKQUOTE> +<P> + +<A NAME="Installation"></A> +<HR SIZE="6"> +<A NAME="SEC2"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC1"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC3"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.1 Installation </H2> +<!--docid::SEC2::--> +<P> + +This program consists of several groups of files, organized by +directory: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre> lisp - the main program code for the <B>BBDB</B> + tex - TeX support files for See section <A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A>, the <B>BBDB</B> + printing utility + texinfo - the documentation files for the <B>BBDB</B> + utils - miscellaneous external utility programs + misc - things that don't fall into the above categories +</pre></td></tr></table></P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC3">1.1.1 General Prerequisites</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">General <B>BBDB</B> requirements</TD></TR> +</TABLE> + +<br> +File Installation +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">"Normal" Installations</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC10">1.1.3 XEmacs Package Installation</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Installing as an XEmacs package</TD></TR> +</TABLE> + +<br> +Initial Configuration +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC13">1.1.4 Initial Configuration</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">How to initially set up the <B>BBDB</B></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="General Prerequisites"></A> +<HR SIZE="6"> +<A NAME="SEC3"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC4"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.1.1 General Prerequisites </H3> +<!--docid::SEC3::--> +<P> + +Various parts of the <B>BBDB</B> require extra packages to be available +that are not part of the <B>BBDB</B> distribution. Please note that with +one exception no extra packages (beyond those which ship with both GNU +Emacs and XEmacs) are required for the use of <B>BBDB</B> core +functionality.<A NAME="DOCF1" HREF="bbdb_fot.html#FOOT1">(1)</A> This one exception +applies to XEmacs 20.5 users - the <CODE>xemacs-base</CODE> package must be +installed for the correct operation of the core <B>BBDB</B> functionality. +The table below lists the requirements of the various portions of the +<B>BBDB</B>. Please note that the absence of any of the below optional +packages will not affect core <B>BBDB</B> functionality. +</P><P> + +<TABLE> +<TR><TD><BR> BBDB file</TD> +</TD><TD> <BR> Package needed +</TD><TD> <BR> GNU 19.34 +</TD><TD> <BR> GNU 20.2 +</TD><TD> XEmacs<BR> @center >=20.4 +</TD><TD> XEmacs<BR> @center 20.5 + +</TR> +<TR><TD><CODE>bbdb-ftp</CODE></TD> +</TD><TD> EFS or <BR> Ange-FTP +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center P + +</TR> +<TR><TD><CODE>bbdb-gnus</CODE></TD> +</TD><TD> Gnus[1] +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center P + +</TR> +<TR><TD><CODE>bbdb-mhe</CODE></TD> +</TD><TD> MH-E +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center P + +</TR> +<TR><TD><CODE>bbdb-reportmail</CODE></TD> +</TD><TD> Reportmail +</TD><TD> +</TD><TD> +</TD><TD> @center B +</TD><TD> @center P[2] + +</TR> +<TR><TD><CODE>bbdb-sc</CODE></TD> +</TD><TD> Supercite +</TD><TD> @center B +</TD><TD> +</TD><TD> @center B +</TD><TD> @center P + +</TR> +<TR><TD><CODE>bbdb-srv</CODE></TD> +</TD><TD> <CODE>gnuserv</CODE> and <BR> <CODE>itimer</CODE> +</TD><TD> +</TD><TD> +</TD><TD> @center B +</TD><TD> @center B + +</TR> +<TR><TD><CODE>bbdb-vm</CODE></TD> +</TD><TD> VM +</TD><TD> +</TD><TD> +</TD><TD> @center B +</TD><TD> @center P + +</TR> +<TR><TD><CODE>bbdb-w3</CODE></TD> +</TD><TD> <CODE>browse-url</CODE> +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center B +</TD><TD> @center P[3] +</TR></TABLE> +<P> + +<BR> <B>NOTES:</B> +<OL> +<LI>The three year old GNUS mail/newsreader should still +work. Please keep in mind that you have a relatively recent Emacs (GNU +19.34 or later, XEmacs 19.15 or later), you are probably using Gnus. +<LI>As of this writing, Reportmail is available as +part of the <CODE>edit-utils</CODE> package. +<LI>As of this writing, <CODE>browse-url</CODE> is +available as part of the <CODE>mail-lib</CODE> package. +</OL> +<P> + +Please also note that the XEmacs package locations are as of this +writing. As the XEmacs 20.5 package system is still in development, the +locations may change without warning. +</P><P> + +<A NAME="Normal User"></A> +<HR SIZE="6"> +<A NAME="SEC4"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC3"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.1.2 Normal User Installation </H3> +<!--docid::SEC4::--> +<P> + +<A NAME="SEC5"></A> +<H3> Byte Compiling the Lisp files </H3> +<!--docid::SEC5::--> +<P> + +First, you need to byte-compile the appropriate <B>BBDB</B> Lisp files. +While this is in theory an optional step, it is virtually required in +practice due to speed reasons. +</P><P> + +In order to successfully compile the <B>BBDB</B>, the build process needs +to know the location of the various optional packages. If the +directories containing these optional packages are in the default Emacs +search path (the <CODE>load-path</CODE> variable), no other changes need be +made for the build process to complete successfully. +</P><P> + +If the optional packages are not in the default search path, the build +process will not find them unless explicitly told of their location(s). +To tell the build process where to find Gnus, MH-E, and/or VM, set the +<CODE>GNUSDIR</CODE>, <CODE>MHEDIR</CODE>, and/or <CODE>VMDIR</CODE> variables, +respectively, in <TT>`Makefile'</TT>. To tell the build process where +to find any other package(s), add the directories containing the lisp +files for the package(s) to the <CODE>OTHERDIR</CODE> variable in +<TT>`Makefile'</TT>. If multiple directories are to be added, they should +be separated by spaces, and should <B>not</B> be quoted. For example, to +add the <TT>`/p/local/elisp/footnote'</TT> and <TT>`/p/local/elisp/sc'</TT> +directories, set <CODE>OTHERDIR</CODE> as follows: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre> <CODE>OTHERDIR=/p/local/elisp/footnote /p/local/elisp/sc</CODE> +</pre></td></tr></table></P><P> + +After setting the paths (if necessary), run one of the following commands: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre> <CODE>make bbdb</CODE> - Build the core, mailer independent, components + <CODE>make gnus</CODE> - Core components plus <CODE>Gnus</CODE> support + <CODE>make mhe</CODE> - Core components plus <CODE>MH-E</CODE> support + <CODE>make rmail</CODE> - Core components plus <CODE>RMAIL</CODE> support + <CODE>make vm</CODE> - Build the core components with <CODE>VM</CODE> support + <CODE>make all</CODE> - Core components plus support for all mailers + listed above +</pre></td></tr></table></P><P> + +You can also combine the above <CODE>make</CODE> commands. For example, to +build the <B>BBDB</B> with support for <CODE>Gnus</CODE> and <CODE>VM</CODE>, you can +do so by typing: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>make gnus vm +</pre></td></tr></table></P><P> + +<A NAME="SEC6"></A> +<H3> Moving the files to their final destination </H3> +<!--docid::SEC6::--> +<P> + +<A NAME="SEC7"></A> +<H4> Lisp files </H4> +<!--docid::SEC7::--> +<P> + +As stated above, the <TT>`lisp'</TT> subdirectory contains the Emacs Lisp source +files for the <B>BBDB</B>. Therefore, these files must be in the Emacs +<CODE>load-path</CODE>. There are several ways of doing this, three of which are +described below: +</P><P> + +<UL> +<LI> +Add the <TT>`lisp'</TT> directory from the source distribution to the +<CODE>load-path</CODE>. This will allow you to run the <B>BBDB</B> in-place. This +method is recommended for normal users or <B>BBDB</B> developers, especially if +disk usage is an issue. It is <B>not</B> recommended for site-wide +installations. <P> + +<LI> +Link the <TT>`lisp'</TT> directory into your <TT>`site-lisp'</TT> directory. This is +for a site-wide installation, but it is subject to the following caveat. If you +link the <TT>`lisp'</TT> directory into <TT>`site-lisp'</TT>, you will make life more +difficult for yourself down the road, as you will not be able to make changes to +the source directory (new versions, patches, etc) without having an effect on +other users who now depend on it. This directory will automatically be added to +the <CODE>load-path</CODE> when Emacs starts. <P> + +<LI> +Make a directory whose sole purpose in life is containing the production copies +of the <B>BBDB</B> source and byte-compiled source files. Either put this +directory under <TT>`site-lisp'</TT> (or put it somewhere else and link it into +<TT>`site-lisp'</TT>). This directory will automatically be added to the +<CODE>load-path</CODE> when Emacs starts. This is the best of the three listed here, +as it allows for a degree of separation between the (possibly changing) source +tree and the production code. +</UL> +<P> + +<A NAME="SEC8"></A> +<H4> TeX files </H4> +<!--docid::SEC8::--> +<P> + +The <TT>`tex'</TT> subdirectory contains the TeX support files for +bbdb-print, the <B>BBDB</B> printing utility (See section <A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A>.). The +three support files, <TT>`bbdb-cols.tex'</TT>, <TT>`bbdb-print.tex'</TT>, and +<TT>`bbdb-print-brief.tex'</TT>, must be placed in a directory that is +either on the default TeX search path or is listed in the +<CODE>TEXINPUTS</CODE> environment variable. If neither of these two options +is taken, TeX will not be able to process the file output by +<CODE>bbdb-print</CODE>. +</P><P> + +<A NAME="SEC9"></A> +<H4> texinfo files </H4> +<!--docid::SEC9::--> +<P> + +The <TT>`bbdb.info'</TT> file in this directory contains the documentation +for the <B>BBDB</B>. This file should either be linked or copied to a +directory on the default path for the <CODE>info</CODE> program or listed in +the <CODE>INFOPATH</CODE> environment variable. +</P><P> + +<A NAME="XEmacs Package"></A> +<HR SIZE="6"> +<A NAME="SEC10"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC4"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.1.3 XEmacs Package Installation </H3> +<!--docid::SEC10::--> +<P> + +<B>NOTE:</B> XEmacs packages are currently supported only under XEmacs +versions after and including 20.5. If you are not running such a version +of XEmacs, you should install the <B>BBDB</B> according to the instructions +in <A HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A>. +</P><P> + +<A NAME="SEC11"></A> +<H3> Byte Compiling the Lisp files </H3> +<!--docid::SEC11::--> +<P> + +The byte-compilation procedure is the same as that used in the Normal +User installation. See <A HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A>. +</P><P> + +<A NAME="SEC12"></A> +<H3> Moving the files to their final destination </H3> +<!--docid::SEC12::--> +<P> + +Support is provided for the automatic installation of the <B>BBDB</B> in an +XEmacs package directory. Before installation, one or more variables +must be set in the <TT>`Makefile'</TT> as described below. +</P><P> + +<DL COMPACT> +<DT><B><CODE>PACKAGEROOT</CODE></B> +<DD>This variable sets the root of the XEmacs package directory. It is +<B>required</B> for XEmacs package - the installation will not even begin +unless this variable is set. +<DT><B><CODE>LINKPATH</CODE></B> +<DD>If this variable is either undefined (commented out) or set to the empty +string, the <TT>`lisp'</TT> and <TT>`info'</TT> directories will be copied into +<CODE>PACKAGEROOT</CODE>. If <CODE>LINKPATH</CODE> is set, the <TT>`lisp'</TT> and +<TT>`info'</TT> directories will be linked into <CODE>PACKAGEROOT</CODE>. +<DT><B><CODE>LINKPATH</CODE></B> +<DD>If this variable is either undefined (commented out) or set to the empty +string, the <TT>`lisp'</TT> and <TT>`info'</TT> directories will be linked in +with the output of <CODE>pwd</CODE> as the source directory. If something +else should be used as the source directory, <CODE>LINKPATH</CODE> should be set +to the 'something else'. If, for example, <CODE>pwd</CODE> returns +<TT>`/p/local/elisp/bbdb'</TT>, the <TT>`lisp'</TT>, <TT>`info'</TT> and <TT>`etc'</TT> +(which will include the files distributed in <TT>`tex'</TT> and +<TT>`utils'</TT>) directories +will be linked in from <TT>`/p/local/elisp/bbdb/{lisp,info,etc}'</TT>. If, +however, you prefer that they be linked in from +<TT>`/usr/local/elisp/bbdb/...'</TT>, set <CODE>LINKPATH</CODE> to +<TT>`/usr/local/elisp/bbdb'</TT>. This variable is ignored if +<CODE>LINKPATH</CODE> is not set. +</DL> +<P> + +To perform the installation, use the command <CODE>make install-pkg</CODE>. +This will compile the <TT>`lisp/auto-autoloads.el'</TT> file and will +install the source and documentation files as indicated by the variables +described above. The final installation tree will take the following form: +</P><P> + +<DL COMPACT> +<DT><CODE>$PACKAGEROOT/</CODE> +<DD><DL COMPACT> +<DT><CODE>etc/</CODE> +<DD><DL COMPACT> +<DT><CODE>bbdb/</CODE> +<DD><DL COMPACT> +<DT><CODE>tex/</CODE> +<DD> <I>support files for bbdb-print, copied from the <TT>`tex'</TT> directory + in the source distribution</I> +<DT><CODE>utils/</CODE> +<DD> <I>miscellaneous utilities, copied from the <TT>`utils'</TT> directory in + the source distribution</I> +</DL> +</DL> +<DT><CODE>info/</CODE> +<DD><DL COMPACT> +<DT><CODE>bbdb/</CODE> +<DD> <I><B>BBDB</B> documentation files, copied from the <TT>`info'</TT> directory + in the source distribution</I> +</DL> +<DT><CODE>lisp/</CODE> +<DD><DL COMPACT> +<DT><CODE>bbdb/</CODE> +<DD> <I><B>BBDB</B> lisp source files, copied from the <TT>`lisp'</TT> directory + in the source distribution</I> +</DL> +</DL> +</DL> +<P> + +After you install the package, you should probably redump XEmacs. +</P><P> + +<A NAME="Initial Configuration"></A> +<HR SIZE="6"> +<A NAME="SEC13"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC19"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.1.4 Initial Configuration </H3> +<!--docid::SEC13::--> +<P> + +The simplest way to configure the <B>BBDB</B> is to include the following +forms in your Emacs configuration file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(require 'bbdb)</CODE> +<CODE>(bbdb-initialize)</CODE> +</pre></td></tr></table></P><P> + +<B>Note:</B> The forms above replace the autoloads needed for previous +versions of the <B>BBDB</B>. +</P><P> + +This will set up the <B>BBDB</B> for basic querying and record manipulation +(the Core Functionality referred to in the Prerequisites section). It +will not enable any of the mailreader-, newsreader- or other +package-specific <B>BBDB</B> features. To enable some or all of these +features, the <CODE>(bbdb-initialize)</CODE> form can be enable as shown +below. Alternatively, the features can be enabled manually as described +in the following sections. +</P><P> + +<A NAME="SEC14"></A> +<H3> Modifying <CODE>(bbdb-initialize)</CODE> </H3> +<!--docid::SEC14::--> +<P> + +The <CODE>bbdb-initialize</CODE> function can be used to enable the various +package-specific <B>BBDB</B> functions. This feature activation is +accomplished through the passing of symbols which tell the function +which features to activate. These symbols are outlined below and in the +Emacs documentation for the <CODE>bbdb-initialize</CODE><A NAME="DOCF2" HREF="bbdb_fot.html#FOOT2">(2)</A> +</P><P> + +<A NAME="SEC15"></A> +<H4> Initialization symbols for mail and news readers </H4> +<!--docid::SEC15::--> +<P> + +<DL COMPACT> +<DT><CODE>gnus</CODE> +<DD> Initialize support for Gnus<A NAME="DOCF3" HREF="bbdb_fot.html#FOOT3">(3)</A>. If you pass the <CODE>gnus</CODE> symbol, you should + probably also pass the <CODE>message</CODE> symbol. +<DT><CODE>mh-e</CODE> +<DD> Initialize support for the MH-E mail reader. +<DT><CODE>rmail</CODE> +<DD> Initialize support for the RMAIL mail reader. +<DT><CODE>sendmail</CODE> +<DD> Initialize support for sendmail (<KBD>M-x mail</KBD>) +<DT><CODE>vm</CODE> +<DD> Initialize support for the VM mail reader.<A NAME="DOCF4" HREF="bbdb_fot.html#FOOT4">(4)</A> +</DL> +<P> + +<A NAME="SEC16"></A> +<H4> Initialization symbols for other packages </H4> +<!--docid::SEC16::--> +<P> + +<DL COMPACT> +<DT><CODE>message</CODE> +<DD> Initialize support for Message mode (the mail composition program + included with Gnus). +<DT><CODE>reportmail</CODE> +<DD> Initialize support for the Reportmail mail notification package. +<DT><CODE>sc</CODE> +<DD> Initialize support for the Supercite message citation package. + Additional initialization is required for Supercite to work with the + <B>BBDB</B>. See section <A HREF="bbdb_1.html#SEC26">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A>. +<DT><CODE>w3</CODE> +<DD> Initialize support for Web browsers. +</DL> +<P> + +<A NAME="SEC17"></A> +<H4> Initialization example </H4> +<!--docid::SEC17::--> +<P> + +To initialize support for Gnus 5.5, Message mode, Supercite, and Web +browsers, the following forms would be used: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(require 'bbdb) +(bbdb-initialize 'gnus 'message 'sc 'w3) +</pre></td></tr></table></P><P> + +<A NAME="SEC18"></A> +<H4> Manual initialization </H4> +<!--docid::SEC18::--> +<P> + +If your initialization needs exceed those provided by +<CODE>bbdb-initialize</CODE>, refer to the following sections for a +description of the procedures necessary for enabling <B>BBDB</B> support +for the packages listed above. The procedures described are the same as +those carried out by the <CODE>bbdb-initialize</CODE> function when passed the +appropriate symbols. That is, the procedure listed in the RMAIL Prep +section below is the same as than executed by <CODE>bbdb-initialize</CODE> +when the <CODE>rmail</CODE> symbol is passed. + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +</TABLE> +Mail and News readers: +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC19">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC20">1.1.4.2 Initializing <B>BBDB</B> support for MH-E</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC21">1.1.4.3 Initializing <B>BBDB</B> support for RMAIL</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC22">1.1.4.4 Initializing <B>BBDB</B> support for Sendmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC23">1.1.4.5 Initializing <B>BBDB</B> support for VM</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE> + +<br> +Other packages: +<br> + +<br> +<TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC24">1.1.4.6 Initializing <B>BBDB</B> support for Message mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC25">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC26">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Gnus Prep"></A> +<HR SIZE="6"> +<A NAME="SEC19"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC20"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.1 Initializing <B>BBDB</B> support for Gnus </H4> +<!--docid::SEC19::--> +<P> + +To take advantage of the <B>Gnus</B> features of the <B>BBDB</B>, add one of +the following forms to your Emacs configuration file: </P><P> + +For Gnus 3.14 or older: +</P><P> + +<CODE>(add-hook 'gnus-Startup-hook 'bbdb-insinuate-gnus)</CODE> +</P><P> + +For Gnus 3.15 or newer: +</P><P> + +<CODE>(add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)</CODE> +</P><P> + +<CODE>bbdb-insinuate-gnus</CODE> adds bindings for the default keys to +<B>Gnus</B> and configures <B>Gnus</B> to notify the <B>BBDB</B> when new +messages are loaded. This notification is required if the <B>BBDB</B> is +to be able to display <B>BBDB</B> entries for messages displayed in +<B>Gnus</B>. +</P><P> + +<A NAME="MH-E Prep"></A> +<HR SIZE="6"> +<A NAME="SEC20"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC19"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC21"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.2 Initializing <B>BBDB</B> support for MH-E </H4> +<!--docid::SEC20::--> +<P> + +To take advantage of the <B>MH-E</B> features of the <B>BBDB</B>, add the +following form to your Emacs configuration file: </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(add-hook 'mh-folder-mode-hook 'bbdb-insinuate-mh) +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-mh</CODE> adds bindings for the default keys to +<B>MH-E</B> and configures <B>MH-E</B> to notify the <B>BBDB</B> when new +messages are loaded. This notification is required if the <B>BBDB</B> is +to be able to display <B>BBDB</B> entries for messages displayed in +<B>MH-E</B>. +</P><P> + +<A NAME="RMAIL Prep"></A> +<HR SIZE="6"> +<A NAME="SEC21"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC20"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC22"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.3 Initializing <B>BBDB</B> support for RMAIL </H4> +<!--docid::SEC21::--> +<P> + +To take advantage of the <B>RMAIL</B> features of the <B>BBDB</B>, add the +following form to your Emacs configuration file: </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(add-hook 'rmail-mode-hook 'bbdb-insinuate-rmail) +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-rmail</CODE> adds bindings for the default keys to +<B>RMAIL</B> and configures <B>RMAIL</B> to notify the <B>BBDB</B> when new +messages are loaded. This notification is required if the <B>BBDB</B> is +to be able to display <B>BBDB</B> entries for messages displayed in +<B>RMAIL</B>. +</P><P> + +<A NAME="Sendmail Prep"></A> +<HR SIZE="6"> +<A NAME="SEC22"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC21"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC23"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.4 Initializing <B>BBDB</B> support for Sendmail </H4> +<!--docid::SEC22::--> +<P> + +To take advantage of send-mail-mode (the one invoked with <CODE>M-x +mail</CODE>) features of the <B>BBDB</B>, add the following form to your Emacs +configuration file: </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(add-hook 'mail-setup-hook 'bbdb-insinuate-sendmail) +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-sendmail</CODE> enables auto-completion in +send-mail-mode. +</P><P> + +<A NAME="VM Prep"></A> +<HR SIZE="6"> +<A NAME="SEC23"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC22"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC24"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.5 Initializing <B>BBDB</B> support for VM </H4> +<!--docid::SEC23::--> +<P> + +To take advantage of the <B>VM</B> features of the <B>BBDB</B>, add the +following form to your <TT>`~/.vm'</TT> file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(bbdb-insinuate-vm)</CODE> +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-vm</CODE> adds bindings for the default keys to <B>VM</B> +and configures <B>VM</B> to notify the <B>BBDB</B> when new messages are +loaded. This notification is required if the <B>BBDB</B> is to be able to +display <B>BBDB</B> entries for messages displayed in <B>VM</B>. +</P><P> + +<A NAME="Message Prep"></A> +<HR SIZE="6"> +<A NAME="SEC24"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC23"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC25"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.6 Initializing <B>BBDB</B> support for Message mode </H4> +<!--docid::SEC24::--> +<P> + +To allow the <B>BBDB</B> to be used in Message mode, add the following form +to your Emacs initialization file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(bbdb-insinuate-message)</CODE> +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-message</CODE> adds a binding for <KBD>M-TAB</KBD> to Message +mode. This will enable completion of addressees based on <B>BBDB</B> +records. See <A HREF="bbdb_1.html#SEC50">1.6.1 Using the <B>BBDB</B> with Message Mode</A> for more details on the operation +of Message mode <B>BBDB</B> record completion. +</P><P> + +<A NAME="Reportmail Prep"></A> +<HR SIZE="6"> +<A NAME="SEC25"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC24"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC26"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.7 Initializing <B>BBDB</B> support for Reportmail </H4> +<!--docid::SEC25::--> +<P> + +To allow the Reportmail package to report information from <B>BBDB</B> +records for new mail, add the following form to your Emacs +initialization file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(bbdb-insinuate-reportmail)</CODE> +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-reportmail</CODE> adds to the +<CODE>display-time-get-field</CODE> function to allow access to <B>BBDB</B> +records during new mail information display. See <A HREF="bbdb_1.html#SEC51">1.6.2 Using the <B>BBDB</B> with Reportmail</A> +for more details on the operation of Reportmail with the <B>BBDB</B>. +</P><P> + +<A NAME="Supercite Prep"></A> +<HR SIZE="6"> +<A NAME="SEC26"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC25"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC27"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.8 Initializing <B>BBDB</B> support for Supercite </H4> +<!--docid::SEC26::--> +<P> + +To allow the <B>BBDB</B> to assist in the storage of Supercite citations, +add the following form to your Emacs initialization file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(bbdb-insinuate-sc)</CODE> +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-sc</CODE> adds <B>BBDB</B> functions to two Supercite hooks +- <CODE>sc-post-hook</CODE> and <CODE>sc-attribs-postselect-hook</CODE>. See +<A HREF="bbdb_1.html#SEC52">1.6.3 Using the <B>BBDB</B> with Supercite</A> for more details on the operation of Supercite +citation management using the <B>BBDB</B>. +</P><P> + +Three other Supercite variables must be set/modified to allow the +<B>BBDB</B> to work with it. These variables are not automatically set as +it would be impossible to reliably set them without interfering with +other user customizations. The modifications are: +</P><P> + +<DL COMPACT> +<DT><CODE>sc-preferred-attribution-list</CODE> +<DD><CODE>"sc-consult"</CODE> should be added to the list. An example +configuration is: +<P> + +<TABLE><tr><td> </td><td class=example><pre>(setq sc-preferred-attribution-list + '("sc-lastchoice" "x-attribution" "sc-consult" + "initials" "firstname" "lastname")) +</pre></td></tr></table></P><P> + +<DT><CODE>sc-attrib-selection-list</CODE> +<DD>The following form should be added to <CODE>sc-attrib-selection-list</CODE>: +<P> + +<TABLE><tr><td> </td><td class=example><pre> '(("sc-from-address" + ((".*" . (bbdb/sc-consult-attr + (sc-mail-field "sc-from-address")))))) +</pre></td></tr></table></P><P> + +<DT><CODE>sc-mail-glom-frame</CODE> +<DD>The following form should be added to <CODE>sc-mail-glom-frame</CODE>, to +allow the retrieval of the name of a person who is a) in the <B>BBDB</B> +and b) has only included their net address in the message in question. +<P> + +<TABLE><tr><td> </td><td class=example><pre> ("^$" (progn (bbdb/sc-default) + (list 'abort '(step . 0)))) +</pre></td></tr></table></P><P> + +An example configuration is as follows: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(setq sc-mail-glom-frame</CODE> +<CODE> '((begin (setq sc-mail-headers-start (point)))</CODE> +<CODE> ("^x-attribution:[ \t]+.*$" (sc-mail-fetch-field t) nil t)</CODE> +<CODE> ("^\\S +:.*$" (sc-mail-fetch-field) nil t)</CODE> +<CODE> ("^$" (progn (bbdb/sc-default)</CODE> +<CODE> (list 'abort '(step . 0))))</CODE> +<CODE> ("^[ \t]+" (sc-mail-append-field))</CODE> +<CODE> (sc-mail-warn-if-non-rfc822-p (sc-mail-error-in-mail-field))</CODE> +<CODE> (end (setq sc-mail-headers-end (point)))))</CODE> +</pre></td></tr></table></DL> +<P> + +The above is also documented in <TT>`bbdb-sc.el'</TT>. The +<CODE>bbdb/sc-setup-variables</CODE> function has been provided as an example for +Supercite variable initialization. Please note that while +<CODE>bbdb/sc-setup-variables</CODE> makes every attempt to safely configure +the Supercite variables, it will not always work. Specifically, the +variables <CODE>sc-attrib-selection-list</CODE> and <CODE>sc-mail-glom-frame</CODE> +will not be overridden if they have already been defined. +</P><P> + +<A NAME="Web Browser Prep"></A> +<HR SIZE="6"> +<A NAME="SEC27"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC26"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC10"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC13"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers </H4> +<!--docid::SEC27::--> +<P> + +To allow URLs to be added to <B>BBDB</B> records, add the following form to +your Emacs initialization file: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre><CODE>(bbdb-insinuate-w3)</CODE> +</pre></td></tr></table></P><P> + +<CODE>bbdb-insinuate-w3</CODE> adds the definition of <KBD>:</KBD> to the W3 +keymap. +</P><P> + +The other <CODE>bbdb-w3</CODE> functions, specifically the passing of URLs +from <B>BBDB</B> records to Web browsers, do not require initialization +within the <B>BBDB</B>. They do, however, require the configuration of the +<CODE>browse-url</CODE> package so it knows to which Web browser URLs are to +be passed. For more details on the operation of <CODE>bbdb-w3</CODE>, see +<A HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>. +</P><P> + +<A NAME="The BBDB"></A> +<HR SIZE="6"> +<A NAME="SEC28"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC27"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC29"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC2"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.2 The <B>BBDB</B> </H2> +<!--docid::SEC28::--> +<P> + +This section discusses the basics of the <B>BBDB</B> - an overview of the +database's layout, and a discussion of the basic <B>BBDB</B> manipulation +commands. +</P><P> + +The database itself lives in a file which is named by the variable +<CODE>bbdb-file</CODE>. If this variable is not set, the database is assumed +to be in <TT>`~/.bbdb'</TT>. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Description of database fields</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Basic database searching commands</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC31">1.2.3 Advanced searching commands</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Advanced database searching commands</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC32">1.2.4 Manual record addition</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Adding records by hand</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Database Fields"></A> +<HR SIZE="6"> +<A NAME="SEC29"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC30"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.2.1 Database Fields </H3> +<!--docid::SEC29::--> +<P> + +The database is organized as a set of records, where each record +corresponds to one person or organization. Each record has several +fields, and each field is of one of several types. Below, the built-in +types are listed, followed by a description of how and why some types +can be used more than once in a single record: <A NAME="IDX1"></A> +</P><P> + +<TABLE> +<TR><TD>Type</TD> +</TD><TD> Description +</TD><TD> Notes + +</TR> +<TR><TD><CODE>name</CODE></TD> +</TD><TD> The name of this person, or none if the record corresponds to an +organization. +</TD><TD> Single value, single instance. + +</TR> +<TR><TD><CODE>company</CODE></TD> +</TD><TD> The name of this person's organization, or none. +</TD><TD> Single value, single instance. + +</TR> +<TR><TD><CODE>AKA</CODE></TD> +</TD><TD> A list of other names for this person. +</TD><TD> Multiple values through commas. + +</TR> +<TR><TD><CODE>net</CODE></TD> +</TD><TD> A list of this person's network addresses. +</TD><TD> Multiple values through commas. + +</TR> +<TR><TD><CODE>address</CODE></TD> +</TD><TD> A list of postal (physical) addresses for this person. +</TD><TD> Multiple values through multiple occurences. + +</TR> +<TR><TD><CODE>phone</CODE></TD> +</TD><TD> A list of telephone numbers for this person. +</TD><TD> Multiple values through multiple occurences. + +</TR> +<TR><TD><CODE>notes</CODE></TD> +</TD><TD> Random commentary. +</TD><TD> Multiple values through multiple occurences. + +</TR></TABLE> +<P> + +The field types listed above can be classified into four categories, as +indicated by the comments in the `Notes' column. +</P><P> + +Field types marked as "Single value, single occurrence" may only occur +once per record. Each occurrence can only have a single value. For +example, there will be only one field of type <CODE>name</CODE> in a record. +It will be named <CODE>name</CODE>, and will contain a single value (the +person's name). +</P><P> + +The types marked as "Multiple values through commas" are essentially the +same as the single value, single occurrence field types, but with one +crucial difference: they can contain multiple values in the form of a +comma-separated list. So, for example, while a <CODE>name</CODE> field with a +value of "foo, bar" would be treated as if it contained the single value +"foo, bar", a <CODE>net</CODE> field with the same data would be thought of as +having two separate values - "foo" and "bar". As in the single +occurrence, single value field types, there will be only one occurrence +of each "Multiple values through commas" field type, and the occurrence +will have the same name as the type. +</P><P> + +The "Multiple values through multiple occurrences" field type is the +most flexible of the four listed here. There can be multiple +occurrences of each type. This type necessarily does not have the name +restriction imposed by the previous two types. For example, there can +be multiple fields of the <CODE>address</CODE> type, none of which have to be +named <CODE>address</CODE>. One could be named <CODE>home</CODE>, and the other +could be named <CODE>work</CODE>. +</P><P> + +Special properties of the <CODE>notes</CODE> field type: All user-defined +fields that don't fit into the other predefined field types +(<CODE>name</CODE>, <CODE>company</CODE>, <CODE>AKA</CODE>, <CODE>net</CODE>, <CODE>address</CODE>, +and <CODE>phone</CODE>) will be created as a <CODE>notes</CODE>-type field. In +addition, several of the user-defined field names are "special". That +is, the <B>BBDB</B> treats the values of these "special" fields differently +than it does other user-defined fields. The "special" fields are: +</P><P> + +<A NAME="IDX2"></A> +<DL COMPACT> +<DT><CODE>attribution</CODE> +<DD><A NAME="IDX3"></A> +<I>(Available only when the Supercite-specific <B>BBDB</B> functions have been +enabled)</I> Used for the storage of Supercite attributions. For initialization +details, see <A HREF="bbdb_1.html#SEC26">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A>. For usage details, see <A HREF="bbdb_1.html#SEC52">1.6.3 Using the <B>BBDB</B> with Supercite</A>. The field used can be changed by changing the value of +<CODE>bbdb/sc-attribution-field</CODE>. +<DT><CODE>aka</CODE> +<DD>Used to store non-primary names associated with a given record. +<DT><CODE>face</CODE> +<DD><I>(XEmacs only)</I> Used for the storage of image data. This data is to be +in the format output by <CODE>compface</CODE>, and commonly found in +<CODE>X-Face:</CODE> headers in messages. If face support has been compiled +into XEmacs, the image contained in the <CODE>face</CODE> header will be +displayed when the record is viewed. +<DT><CODE>finger-host</CODE> +<DD><A NAME="IDX4"></A> +Address used in place of the listed net address for fingering the entity +indicated by the record. See section <A HREF="bbdb_1.html#SEC33">1.3 BBDB Mode</A>. The field used can be changed by +changing the value of <CODE>bbdb-finger-host-field</CODE>. +<DT><CODE>gnus-score</CODE> +<DD><A NAME="IDX5"></A> +<B>Gnus</B> scoring adjustment for this person. For initialization details, see +<A HREF="bbdb_1.html#SEC19">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A>. For usage details, see <A HREF="bbdb_1.html#SEC41">1.5.1 Gnus-specific Features</A>. The field used +can be changed by changing the value of <CODE>bbdb/gnus-score-field</CODE>. +<DT><CODE>mail-alias</CODE> +<DD>Value used instead of <CODE>name</CODE> for completion. See section <A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A>. +<DT><CODE>mail-name</CODE> +<DD><I>(Available only when the Reportmail-specific <B>BBDB</B> functions have been +enabled)</I> Used for the storage of non-default names to be used in the +reporting of new mail by Reportmail. For initialization details, +see <A HREF="bbdb_1.html#SEC25">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A>. For usage details, see <A HREF="bbdb_1.html#SEC51">1.6.2 Using the <B>BBDB</B> with Reportmail</A>. +<DT><CODE>mark-char</CODE> +<DD>The field containing the character to be used for marking a given poster +in the Gnus Summary Buffer. For usage details, see <A HREF="bbdb_1.html#SEC43">1.5.1.2 Gnus Summary Buffer Enhancements</A>. +<DT><CODE>tex-name</CODE> +<DD><A NAME="IDX6"></A> +<A NAME="IDX7"></A> +The value of this field is used in place of the <CODE>name</CODE> field when +printing the database using <CODE>bbdb-print</CODE>. See section <A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A>. +<DT><CODE>www</CODE> +<DD>This field contains the URL assocated with the <B>BBDB</B> record. Common uses +are with <CODE>bbdb-snarf</CODE> (see section <A HREF="bbdb_1.html#SEC61">1.8.3 <CODE>bbdb-snarf</CODE></A>) and the <B>BBDB</B>/Web Browser +functionality (for initialization details, see <A HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>. For +usage details, see <A HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>). +</DL> +<P> + +<A NAME="Basic Searching"></A> +<HR SIZE="6"> +<A NAME="SEC30"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC29"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC31"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.2.2 Basic searching commands </H3> +<!--docid::SEC30::--> +<P> + +You can list the contents of the database with the command +<KBD>M-x bbdb</KBD>. You will be prompted for a regular expression, and all +records which match that regexp in the name, company, network address, +or any notes fields will be displayed.<A NAME="IDX8"></A> +<A NAME="IDX9"></A> +<A NAME="IDX10"></A> +<A NAME="IDX11"></A> +<A NAME="IDX12"></A> +<A NAME="IDX13"></A> +</P><P> + +A narrower search may be made by using the commands <KBD>bbdb-name</KBD>, +<KBD>bbdb-company,</KBD> <KBD>bbdb-net,</KBD> or <KBD>bbdb-notes</KBD>. These commands +limit their searches to the name, company, email address, and notes +fields, respectively. If these commands are given a prefix argument, +the listing displayed will be one line per entry; otherwise, the full +database entry will be shown on multiple lines. +</P><P> + +The functions described above are predefined to certain keys in the +<CODE>*BBDB*</CODE> buffer. See section <A HREF="bbdb_1.html#SEC33">1.3 BBDB Mode</A>. for more details. +</P><P> + +<A NAME="IDX14"></A> +The <CODE>bbdb-notes</CODE> command will prompt for the notes field to search +(<KBD>RET</KBD> for all). In this way you can limit your searches to the +contents of one particular user-defined notes field. (You can add +user-defined fields with the <CODE>bbdb-insert-new-field</CODE> command; +See section <A HREF="bbdb_1.html#SEC33">1.3 BBDB Mode</A>.)</P><P> + +<A NAME="IDX15"></A> +<A NAME="IDX16"></A> +</P><P> + +<A NAME="Advanced Searching"></A> +<HR SIZE="6"> +<A NAME="SEC31"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC30"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC32"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.2.3 Advanced searching commands </H3> +<!--docid::SEC31::--> +<P> + +The following functions can be used to search for records based on +creation and/or modification dates. These functions will match records +that have <CODE>timestamp</CODE> and/or <CODE>creation-date</CODE> fields (as +appropriate. See section <A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A>. for more information on these +fields, which are created by default. +</P><P> + +<DL COMPACT> +<A NAME="IDX17"></A> +<DT><CODE>bbdb-timestamp-older</CODE> +<DD>Display all records modified before a given date. If this function is +called interactively, it will prompt for a date. If it is being called +non-interactively, the date should be provided as a string in +<SAMP>`yyyy-mm-dd'</SAMP> format. +<P> + +<A NAME="IDX18"></A> +<DT><CODE>bbdb-timestamp-newer</CODE> +<DD>Display all records modified after a given date. If this function is +called interactively, it will prompt for a date. If it is being called +non-interactively, the date should be provided as a string in +<SAMP>`yyyy-mm-dd'</SAMP> format. +<P> + +<A NAME="IDX19"></A> +<DT><CODE>bbdb-creation-older</CODE> +<DD>Display all records created before a given date. If this function is +called interactively, it will prompt for a date. If it is being called +non-interactively, the date should be provided as a string in +<SAMP>`yyyy-mm-dd'</SAMP> format. +<P> + +<A NAME="IDX20"></A> +<DT><CODE>bbdb-creation-newer</CODE> +<DD>Display all records created after a given date. If this function is +called interactively, it will prompt for a date. If it is being called +non-interactively, the date should be provided as a string in +<SAMP>`yyyy-mm-dd'</SAMP> format. +<P> + +<A NAME="IDX21"></A> +<DT><CODE>bbdb-creation-no-change</CODE> +<DD>Display all records that have not been changed since creation. +</DL> +<P> + +<A NAME="Manual Record Addition"></A> +<HR SIZE="6"> +<A NAME="SEC32"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC31"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.2.4 Manual record addition </H3> +<!--docid::SEC32::--> +<P> + +There are several ways to add new entries to the Insidious Big Brother +Database; the most straightforward is to use <KBD>M-x bbdb-create</KBD>, +which will prompt you for all relevant information. However, the +easiest way is to allow them to be added automatically by one of the +mail or news-reading interfaces (See section <A HREF="bbdb_1.html#SEC36">1.4 Interfaces</A>.). </P><P> + +<A NAME="IDX22"></A> +<A NAME="IDX23"></A> +</P><P> + +<A NAME="BBDB Mode"></A> +<HR SIZE="6"> +<A NAME="SEC33"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC32"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC34"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC28"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.3 BBDB Mode </H2> +<!--docid::SEC33::--> +<P> + +<HR SIZE="6"> +<A NAME="SEC34"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC35"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.3.1 Functions bound to keys in <B>BBDB</B> Mode </H3> +<!--docid::SEC34::--> +<P> + +When the <SAMP>`*BBDB*'</SAMP> buffer is active (either summoned by one of the +commands in the previous section [See section <A HREF="bbdb_1.html#SEC28">1.2 The <B>BBDB</B></A>.] or by your mail +or news program), a variety of commands become available for database +manipulation. Some of the commands listed below take numeric arguments. +These arguments can be generated by entering the number before pressing +the key(s) corresponding to the desired command. The output (if any) of +the listed commands will be displayed in the <SAMP>`*BBDB*'</SAMP> buffer, and +can be navigated through using the usual cursor motion commands. +<A NAME="IDX24"></A> +<A NAME="IDX25"></A> +</P><P> + +<DL COMPACT> +<DT><KBD>e</KBD> +<DD><A NAME="IDX26"></A> +<A NAME="IDX27"></A> +<A NAME="IDX28"></A> +(<CODE>bbdb-edit-current-field</CODE>) Edit the field on the current line. If +the cursor is in the middle of a multi-line field, such as an address or +comments section, then the entire field is edited, not just the current +line. <P> + +<DT><KBD>;</KBD> +<DD><A NAME="IDX29"></A> +(<CODE>bbdb-edit-notes</CODE>) A shortcut for editing the <VAR>notes</VAR> field. <P> + +<DT><KBD>d, C-k</KBD> +<DD><A NAME="IDX30"></A> +<A NAME="IDX31"></A> +<A NAME="IDX32"></A> +(<CODE>bbdb-delete-current-field-or-record</CODE>) Delete the field on the +current line. If the current line is the first line of a record, the +<B>BBDB</B> will, after prompting the user, delete the entire record from +the database. +<P> + +<DT><KBD>C-o</KBD> +<DD><A NAME="IDX33"></A> +<A NAME="IDX34"></A> +<A NAME="IDX35"></A> +<A NAME="IDX36"></A> +(<CODE>bbdb-insert-new-field</CODE>) Inserts a new field into the current +record. You are prompted (with completion) for the type of field to +insert (<B>phone</B>, <B>address</B>, <B>notes</B>, etc); if the string you type +is not a known field type, you will be asked whether to add a new field +with the entered name of type <CODE>notes</CODE>. +<P> + +<A NAME="IDX37"></A> +<A NAME="IDX38"></A> +<A NAME="IDX39"></A> +If you are inserting a new phone-number field, you can control whether +it is a North American or European phone number by providing a prefix +argument. A prefix arg of <KBD>^U</KBD> means it's to be a euronumber, and +any other prefix arg means it's to be a a structured North American +number. If no prefix argument is supplied, the style used is controlled +by the variable <CODE>bbdb-north-american-phone-numbers-p</CODE>. </P><P> + +<DT><KBD>C-x C-t</KBD> +<DD><A NAME="IDX40"></A> +<A NAME="IDX41"></A> +<A NAME="IDX42"></A> +(<CODE>bbdb-transpose-fields</CODE>) This is like the <CODE>transpose-lines</CODE> +command, but it is for <B>BBDB</B> fields. If the cursor is on a field of +a <B>BBDB</B> record, that field and the previous field will be +transposed.<P> + +With non-zero numeric argument <VAR>ARG</VAR>, the previous field is moved +past <VAR>ARG</VAR> fields. With argument 0, the field indicated by +<I>point</I> is interchanged with the one indicated by <I>mark</I>. +</P><P> + +Both fields must be in the same record, and must be of the same basic type +(that is, you can use this command to change the order in which phone-number +fields are listed, but you can't use it to make an address appear before a +phone number; the order of field types is fixed.)</P><P> + +<DT><KBD>n, p</KBD> +<DD><A NAME="IDX43"></A> +<A NAME="IDX44"></A> +(<CODE>bbdb-next-record</CODE>, <CODE>bbdb-prev-record</CODE>) Move to the next and +previous displayed record, respectively. <P> + +<DT><KBD>t</KBD> +<DD><A NAME="IDX45"></A> +(<CODE>bbdb-elide-record</CODE>) Toggles whether the current record is displayed +in a one-line listing, or a full multi-line listing. With a numeric argument +of 0, the current record will unconditionally be made elided; with any +other argument, the current record will unconditionally be shown +expanded. <P> + +If <KBD>*t</KBD> is used instead of simply <KBD>t</KBD>, then the state of all +records will be changed instead of just the one at point. In this case, +a numeric argument of 0 means that all records will unconditionally be +made elided; any other numeric argument means that all of the records +will unconditionally be shown expanded; and no numeric argument means +that the records are made to be in the opposite state of the record +under point. </P><P> + +<DT><KBD>o</KBD> +<DD><A NAME="IDX46"></A> +(<CODE>bbdb-omit-record</CODE>) Removes the current record from the display, +but does not delete it from the database; it merely makes it seem as if +the most recent search had not matched this record. With a numeric +argument, omit the next N records. With a negative argument, go +backwards. <P> + +<DT><KBD>m</KBD> +<DD><A NAME="IDX47"></A> +<A NAME="IDX48"></A> +<A NAME="IDX49"></A> +(<CODE>bbdb-send-mail</CODE>) Begin composing mail to the person represented +by the current record. The first email address is used. Normally, the +mail-sending package which is used is determined by which mail-reading +package is loaded; that is, if <B>MH-E</B> is loaded, then <CODE>mh-send</CODE> +will be used; if <B>VM</B> is loaded, then <CODE>vm-mail</CODE> is used; if +<B>message</B> is loaded, then it is used; otherwise, <CODE>mail</CODE> is used. +You can override this by setting the variable +<CODE>bbdb-send-mail-style</CODE> to one of the symbols <CODE>vm</CODE>, <CODE>mh</CODE>, +<CODE>message</CODE>, or <CODE>mail</CODE>. <P> + +If <KBD>*m</KBD> is used instead of simply <KBD>m</KBD>, then mail will be sent to +all of the folks listed in the <SAMP>`*BBDB*'</SAMP> buffer instead of just the +person under point. </P><P> + +This function does not at present use the facility provided by +<CODE>compose-mail</CODE> and <CODE>mail-user-agent</CODE>. In a future version of +the <B>BBDB</B>, it will. +</P><P> + +<DT><KBD>s, C-x C-s</KBD> +<DD><A NAME="IDX50"></A> +<A NAME="IDX51"></A> +(<CODE>bbdb-save-db</CODE>) Saves the <B>BBDB</B> file to disk. +<P> + +<DT><KBD>r</KBD> +<DD><A NAME="IDX52"></A> +<A NAME="IDX53"></A> +<A NAME="IDX54"></A> +(<CODE>bbdb-refile-record</CODE>) Merge the current record into some other record; +that is, delete the record under point after copying all of the data +within it into some other record. this is useful if you realize that +somehow a redundant record has gotten into the database, and you want to +merge it with another. <P> + +If both records have names and/or companies, you are asked which to use. +Phone numbers, addresses, and network addresses are simply concatenated. +The first record is the record under the point; the second is prompted +for. Completion behavior is as dictated by the variable +<CODE>bbdb-completion-type</CODE>. </P><P> + +<DT><KBD>M-d</KBD> +<DD><A NAME="IDX55"></A> +<A NAME="IDX56"></A> +<A NAME="IDX57"></A> +(<CODE>bbdb-dial</CODE>) If you are on a machine with the ability to play +sounds, this command will play the appropriate tones on the builtin +speaker to dial the phone number corresponding to the current line. If +the point is at the beginning of a record, dial the first phone number. +This does not dial the extension. This also does not dial the area code +if it is the same as <CODE>bbdb-default-area-code</CODE>, unless a prefix +argument is given. <P> + +The <B>BBDB</B> comes configured to play sounds on machines running +Solaris. If you are on another type of machine, you must set +<CODE>bbdb-sound-player</CODE> to a string containing the name of the audio +file player on your machine. You must also set <CODE>bbdb-sound-files</CODE> +to a vector of arguments to be passed to the program indicated by +<CODE>bbdb-sound-player</CODE>. <CODE>bbdb-sound-player</CODE> will be called with +the first element of <CODE>bbdb-sound-files</CODE> for the digit <SAMP>`0'</SAMP>, the +second for <SAMP>`1'</SAMP>, the third for <SAMP>`2'</SAMP>, and so on. +</P><P> + +<DL COMPACT> +<DT><CODE>bbdb-dial-local-prefix</CODE> +<DD><A NAME="IDX58"></A> +Set this to a string of digits if your phone system requires you to dial +some code to access an outside line.<P> + +<DT><CODE>bbdb-dial-long-distance-prefix</CODE> +<DD><A NAME="IDX59"></A> +Set this to a string of digits if your phone system requires you to dial +some code before dialing a long-distance number (one not in your local +area code.)</DL> +<P> + +<DT><KBD>f</KBD> +<DD><A NAME="IDX60"></A> +<A NAME="IDX61"></A> +(<CODE>bbdb-finger</CODE>) This command fingers the network address of a +<B>BBDB</B> record. If this command is executed from the <SAMP>`*BBDB*'</SAMP> buffer, +it fingers the network address of the record which is at point; otherwise, +it prompts in the minibuffer (with completion) for a user to finger. With a +numeric prefix argument, it fingers the <I>N</I>th network address of the +current record; with a prefix argument of <KBD>^U</KBD>, it fingers all of them. +The <SAMP>`*finger*'</SAMP> buffer is filled asynchronously, meaning that you don't +have to wait around for it to finish; but fingering another user before +the first finger has finished could have unpredictable results.<P> + +If this command is executed from the <SAMP>`*BBDB*'</SAMP> buffer, it may be prefixed +with <KBD>*</KBD> (as in <KBD>*f</KBD> instead of simply <KBD>f</KBD>), meaning to +finger all of the users currently listed instead of just the one under +point. The numeric prefix argument has the same interpretation. </P><P> + +<A NAME="IDX62"></A> +You can define a special network address to "finger" by defining a field +<CODE>finger-host</CODE>. The name of the field to be fingered can be changed +by setting <CODE>bbdb-finger-host-field</CODE>. +</P><P> + +<DT><KBD>q</KBD> +<DD><A NAME="IDX63"></A> +(<CODE>bbdb-bury-buffer</CODE>) Hides the <SAMP>`*BBDB*'</SAMP> buffer. <B>Note:</B> +This command does <B>not</B> kill the <SAMP>`*BBDB*'</SAMP> buffer. +<P> + +<DT><KBD>?</KBD> +<DD><A NAME="IDX64"></A> +(<CODE>bbdb-help</CODE>) This displays a one-line help message in the +minibuffer, showing some of the most common bbdb-mode commands. +<P> + +<DT><KBD>i</KBD> +<DD><A NAME="IDX65"></A> +(<CODE>bbdb-info</CODE>) This documentation is displayed. Please note that +either <TT>`bbdb'</TT> or <TT>`bbdb.info'</TT> must be installed in one of the +info directories known to Emacs for this command to work. +<P> + +<DL COMPACT> +<DT><CODE>bbdb-info-file</CODE> +<DD><A NAME="IDX66"></A> +If this documentation is not installed in the standard Info directory, +then you should set this variable to the name of the texinfo-formatted +version of this file; the <CODE>bbdb-info</CODE> command will use this file +instead.</DL> +<P> + +<DT><KBD>W</KBD> +<DD><A NAME="IDX67"></A> +<A NAME="IDX68"></A> +(<CODE>bbdb-www</CODE>) Displays the Web page listed in the <CODE>www</CODE> field +of the current record. See section <A HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A>. +<P> + +<DT><KBD>P</KBD> +<DD><A NAME="IDX69"></A> +<A NAME="IDX70"></A> +(<CODE>bbdb-print</CODE>) Creates a TeX file that contains a pretty-printed version +of <B>BBDB</B> records. If prefixed by <KBD>*</KBD>, only the records currently +displayed will print. See section <A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A>. +<P> + +<DT><KBD>h</KBD> +<DD><A NAME="IDX71"></A> +Moves point to another window via the <CODE>other-window</CODE> function. +<P> + +<DT><KBD>c</KBD> +<DD><A NAME="IDX72"></A> +<A NAME="IDX73"></A> +(<CODE>bbdb-create</CODE>) Create a new database record from information +supplied by the user. +<P> + +<DT><KBD>C</KBD> +<DD><A NAME="IDX74"></A> +<A NAME="IDX75"></A> +(<CODE>bbdb-changed</CODE>) Display all records that have been changed since +the last time the database was saved. +<P> + +<DT><KBD>b</KBD> +<DD><A NAME="IDX76"></A> +<A NAME="IDX77"></A> +(<CODE>bbdb</CODE>) Begin a new database search. The results of the new +search will be displayed in place of the results of the old search. +<P> + +<DT><KBD>S a, S c, S o, S n</KBD> +<DD><A NAME="IDX78"></A> +<A NAME="IDX79"></A> +<A NAME="IDX80"></A> +<A NAME="IDX81"></A> +<A NAME="IDX82"></A> +(<CODE>bbdb-net</CODE>, <CODE>bbdb-company</CODE>, <CODE>bbdb-notes</CODE>, +<CODE>bbdb-name</CODE>)<BR> +Begin a new database search. This search will be +limited to the net address, company, notes, or name fields, +respectively, of database records. See section <A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A>. for more +details. +<P> + +</DL> +<P> + +<HR SIZE="6"> +<A NAME="SEC35"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC34"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.3.2 Other database manipulation functions </H3> +<!--docid::SEC35::--> +<P> + +<DL COMPACT> +<A NAME="IDX83"></A> +<DT><CODE>bbdb-kill-older</CODE> +<DD>If called interactively (or with a single argument - a date in +<SAMP>`yyyy-mm-dd'</SAMP> format), it will kill all records that were last +modified before the given date as determined by the <CODE>timestamp</CODE> +field. See section <A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A>. If called non-interactively with a +date (in <SAMP>`yyyy-mm-dd'</SAMP> format), a comparison function and an action +function, the comparison function is applied to the <CODE>timestamp</CODE> +field of all records, and the action function applied to those for whom +the comparison function returns true. If <SAMP>`nil'</SAMP> is supplied as the +comparison function, <CODE>string-lessp</CODE> is used. +<P> + +</DL> +<P> + +<A NAME="Interfaces"></A> +<HR SIZE="6"> +<A NAME="SEC36"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC35"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC37"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC33"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.4 Interfaces </H2> +<!--docid::SEC36::--> +<P> + +The <B>BBDB</B> interfaces itself with several message-handling packages, but +certain parameters control its behavior depending on whether it is +being used from within a mail reader or a news reader. </P><P> + +In all of these packages, two new keybindings will be added: +</P><P> + +<DL COMPACT> +<DT><KBD>:</KBD> +<DD><A NAME="IDX84"></A> +<A NAME="IDX85"></A> +<A NAME="IDX86"></A> +<A NAME="IDX87"></A> +<A NAME="IDX88"></A> +(<CODE>bbdb/<I>package</I>-show-sender</CODE>) Displays the <B>BBDB</B> entry corresponding +to the author of the current message. If there is none, you will be +asked whether to create one. The function called is +<CODE>bbdb/<I>package</I>-show-sender</CODE>, where <CODE><I>package</I></CODE> is either +<CODE>gnus</CODE>, <CODE>mh</CODE>, <CODE>rmail</CODE>, or <CODE>vm</CODE>, depending on the +mail or news program being used when the command is invoked. +<P> + +<DT><KBD>;</KBD> +<DD><A NAME="IDX89"></A> +<A NAME="IDX90"></A> +<A NAME="IDX91"></A> +<A NAME="IDX92"></A> +<A NAME="IDX93"></A> +(<CODE>bbdb/<I>package</I>-annotate-sender</CODE>) Lets you edit the <SAMP>`notes'</SAMP> +field of the <B>BBDB</B> record corresponding to the sender of the current +message. If there is no record for the current author, you will be +asked whether to create one. The function called is +<CODE>bbdb/<I>package</I>-annotate-sender</CODE>, where <CODE><I>package</I></CODE> is +either <CODE>gnus</CODE>, <CODE>mh</CODE>, <CODE>rmail</CODE>, or <CODE>vm</CODE>, depending on +the mail or news program being used when the command is invoked. +</DL> +<P> + +These keybindings (and several other features) will not be +available unless you call the appropriate "insinuation" +function; See section <A HREF="bbdb_1.html#SEC2">1.1 Installation</A>.</P><P> + +It is possible to configure <B>BBDB</B> so that it automatically creates a +record when it sees a message from a person who is not in the database. +It is also possible to have text automatically added to the notes field +of the corresponding record depending on the contents of the message +headers. See section <A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A>.</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC37">1.4.1 Mail Reading Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC38">1.4.2 News Reading Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Mail Reading Interfaces"></A> +<HR SIZE="6"> +<A NAME="SEC37"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC38"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.4.1 Mail Reading Interfaces </H3> +<!--docid::SEC37::--> +<P> + +There are BBDB interfaces for the following mail readers: +</P><P> + +<UL> +<LI> +<B>Gnus</B>, a news- and email- reader written by Lars Magne Ingebrigtsen +(based on <B>GNUS</B> by Mansanobu Umeda). +<LI> +<B>MH-E</B>, the Emacs interface to <B>Mail Handler</B> (<B>MH</B>), from the +standard emacs library, but packaged separately from XEmacs since +version 20.4.<LI> +<B>RMAIL</B>, from the standard emacs library (packaged separately for +XEmacs users as of 20.4); +<LI> +<B>View Mail</B>, by Kyle Jones, version 5.31 or newer; +</UL> +<P> + +<A NAME="News Reading Interfaces"></A> +<HR SIZE="6"> +<A NAME="SEC38"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC37"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC39"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.4.2 News Reading Interfaces </H3> +<!--docid::SEC38::--> +<P> + +There are BBDB interfaces for the following news readers: +</P><P> + +<UL> +<LI> +<B>GNUS</B>, a newsreader written by Masanobu Umeda. <LI> +<B>Gnus</B>, the modern news- and email-reading incarnation of <B>GNUS</B>. +<B>Gnus</B> is written by Lars Magne Ingebrigtsen.</UL> +<P> + +<A NAME="Mail Sending Interfaces"></A> +<HR SIZE="6"> +<A NAME="SEC39"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC38"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.4.3 Mail Sending Interfaces </H3> +<!--docid::SEC39::--> +<P> + +<A NAME="IDX94"></A> +<A NAME="IDX95"></A> +<A NAME="IDX96"></A> +<A NAME="IDX97"></A> +<A NAME="IDX98"></A> +<A NAME="IDX99"></A> +When sending mail, the keystroke <KBD>M-TAB</KBD> is bound to the +function <CODE>bbdb-complete-name</CODE>. This will take the string that +you have typed (from point back to the preceding colon, comma, or +the beginning of the line) and will complete that against the +contents of the database. What you have typed may be an initial +subsequence of a person's full name or network address; if it +completes ambiguously, then what you have typed will be replaced +with the common portion of the matches. Typing <KBD>M-TAB</KBD> again will +show a list of possible completions. If it completes unambiguously, +then an address will be inserted. The variable +<CODE>bbdb-completion-type</CODE> controls whether completion is done on real +names, or network addresses, or both. The address inserted is normally +of the form <CODE>User Name <email-address></CODE>; however, if +<CODE>User Name</CODE> has an address of the form +<CODE><user.name@somedomain></CODE>, only the <CODE><email-address></CODE> portion +is inserted. This can be overridden by setting +<CODE>bbdb-dwim-net-address-allow-redundancy</CODE> to <CODE>t</CODE>. </P><P> + +This binding is automatically set by the various insinuation functions +documented earlier in this manual. (See section <A HREF="bbdb_1.html#SEC13">1.1.4 Initial Configuration</A>.) +Briefly, the forms for these functions are: +</P><P> + +<DL COMPACT> +<DT><B>Gnus</B> +<DD><CODE>(setq gnus-Startup-hook 'bbdb-insinuate-gnus)</CODE> <I>for Gnus 3.14 or older</I><BR> +<CODE>(setq gnus-startup-hook 'bbdb-insinuate-gnus)</CODE> <I>for Gnus 3.15 or newer</I> +<DT><B>MH-E</B> +<DD><CODE>(setq mh-folder-mode-hook 'bbdb-insinuate-mh)</CODE> +<DT><B>RMAIL</B> +<DD><CODE>(setq rmail-mode-hook 'bbdb-insinuate-rmail)</CODE> +<DT><B>sendmail</B> +<DD><CODE>(setq mail-setup-hook 'bbdb-insinuate-sendmail)</CODE> +<DT><B>VM</B> +<DD><CODE>(bbdb-insinuate-vm)</CODE> <I>Add to <TT>`~/.vm'</TT> file</I> +</DL> +<P> + +The above forms should be added to your Emacs initialization file, +except where otherwise noted. +</P><P> + +You can control what "real name" is inserted with the +<CODE>mail-alias</CODE> field: if a record has a <CODE>mail-alias</CODE> +field, then that is used instead of their <CODE>name</CODE> field. +</P><P> + +<A NAME="IDX100"></A> +If the variable <CODE>bbdb-completion-display-record</CODE> is true (the +default) then when you successfully complete an address with +<KBD>M-TAB</KBD>, the corresponding record will be appended to +the <SAMP>`*BBDB*'</SAMP> buffer. The buffer will not be displayed if it +is not already visible, but the record will be displayed there. +</P><P> + +<A NAME="IDX101"></A> +<A NAME="IDX102"></A> +When sending mail, you can use the command <CODE>bbdb-yank-addresses</CODE> +to CC the current message to the people currently displayed in +the <SAMP>`*BBDB*'</SAMP> buffer. This is useful if you are in the midst of +sending or replying to a message, and you decide to add some recipients. +You can use one of the <KBD>M-x bbdb</KBD> commands to display the set of +people that you want to CC the message to, and then execute this command +to add them to the list. +</P><P> + +<A NAME="IDX103"></A> +<A NAME="IDX104"></A> +<A NAME="IDX105"></A> +<A NAME="IDX106"></A> +</P><P> + +If you are using Jamie Zawinski's <TT>`mail-abbrevs.el'</TT> package, which +uses the word-abbrev mechanism for mail aliases, then you can store your +mail aliases in the BBDB instead of duplicating the information +elsewhere.</P><P> + +If you want a mail alias to be defined for a person, simply add a +<CODE>mail-alias</CODE> field to their record. You may have multiple aliases +for the same person; simply separate them with commas.</P><P> + +If more than one person has the same mail-alias, then that alias expands +to the addresses of all of those people; in this way you can maintain +mailing lists within the BBDB.</P><P> + +To actually define the aliases which are stored in the BBDB, call the +function <CODE>bbdb-define-all-aliases</CODE> from your +<CODE>mail-setup-hook</CODE>. This will search the database, and call +<CODE>define-mail-alias</CODE> to define each of the resulting aliases.</P><P> + +<A NAME="Reader-specific Features"></A> +<HR SIZE="6"> +<A NAME="SEC40"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC39"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC36"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.5 Reader-specific Features </H2> +<!--docid::SEC40::--> +<P> + +There are features of the <B>BBDB</B> that are available only for specific +mail- and news-readers. These features are described below. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC41">1.5.1 Gnus-specific Features</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC47">1.5.2 VM-specific features</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">VM-specific Features</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Gnus Features"></A> +<HR SIZE="6"> +<A NAME="SEC41"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC42"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.5.1 Gnus-specific Features </H3> +<!--docid::SEC41::--> +<P> + +The <B>BBDB</B> can be used to provide score information, or to integrate +database information into the <B>Gnus</B> Summary buffer or the <B>GNUS</B> +Subject List. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Store score adjustments in the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC43">1.5.1.2 Gnus Summary Buffer Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in the Summary buffer</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in the Subject List</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Gnus Scoring"></A> +<HR SIZE="6"> +<A NAME="SEC42"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC43"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.5.1.1 Scoring </H4> +<!--docid::SEC42::--> +<P> + +The <B>BBDB</B> can provide scoring information to <B>Gnus</B> in one of two +ways. +</P><P> + +<OL> +<LI> +Articles whose authors appear in the <B>BBDB</B> and who have +<CODE>gnus-score</CODE> fields will have their scores adjusted by the value +contained in that field. +<LI> +Articles whose authors appear in the <B>BBDB</B> but who do not have +<CODE>gnus-score</CODE> fields will have their scores adjusted by +<CODE>bbdb/gnus-score-default</CODE>. If <CODE>bbdb/gnus-score-default</CODE> is +<CODE>nil</CODE>, no score adjustment will be made. +</OL> +<P> + +The <B>BBDB</B> by default searches the field contained in +<CODE>bbdb/gnus-score-field</CODE> for score values. To have the <B>BBDB</B> use +a different field, change the value of this variable. +</P><P> + +To enable <B>BBDB</B>-assisted scoring, add the <CODE>bbdb/gnus-score</CODE> +function to <CODE>gnus-score-find-score-files-function</CODE>. Assuming that +you want to preserve the default value of this variable, use a form +similar to the following: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(setq gnus-score-find-score-files-function + '(gnus-score-find-bnews bbdb/gnus-score)) +</pre></td></tr></table></P><P> + +<B>Note:</B> The default value in <B>Gnus</B> 5.5 is <CODE>gnus-score-find-bnews</CODE>. +Check your configuration before using the above code, as your values may +be different. +</P><P> + +<A NAME="Gnus Summary Buffer"></A> +<HR SIZE="6"> +<A NAME="SEC43"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC42"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC46"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.5.1.2 Gnus Summary Buffer Enhancements </H4> +<!--docid::SEC43::--> +<P> + +<B>Gnus</B> can use the <B>BBDB</B> to do one of two things: +</P><P> + +<UL> +<LI> +Mark authors in the Summary Buffer who have records in the <B>BBDB</B> with +a user-defined mark character. See Marking Posters, below. +<LI> +For authors in the Summary Buffer who also have records in the <B>BBDB</B>, +replace their name as listed in the Summary Buffer with their name as +stored in the <B>BBDB</B>. See Using Names from the <B>BBDB</B>, below. +</UL> +<P> + +<A NAME="SEC44"></A> +<H4> Marking Posters </H4> +<!--docid::SEC44::--> +<P> + +Authors with records in the <B>BBDB</B> can be marked either with a +user-defined mark character, or with a default one. The marking is +enabled by the use of a Gnus user format code, as determined by +<CODE>bbdb/gnus-summary-in-bbdb-format-letter</CODE>. This variable, which +defaults to <SAMP>`b'</SAMP>, is used to create a format code which is intended +for use in <CODE>gnus-summary-line-format</CODE>. The format code is created +by concatenating <SAMP>`%u'</SAMP> with the value of +<CODE>bbdb/gnus-summary-in-bbdb-format-letter</CODE>. In the default case +this results in the creation of the format code <SAMP>`%ub'</SAMP>. +</P><P> + +Posts are marked as follows: If the record for the poster has the field +indicated in <CODE>bbdb-message-marker-field</CODE> (the default is +<CODE>mark-char</CODE>), the value of that field is used as the mark +character.<A NAME="DOCF5" HREF="bbdb_fot.html#FOOT5">(5)</A> If no such field is present, the value of +<CODE>bbdb/gnus-summary-known-poster-mark</CODE> will be used instead. If the +author is not in the <B>BBDB</B>, a space will be used as the mark character. +</P><P> + +<A NAME="SEC45"></A> +<H4> Using Names from the <B>BBDB</B> </H4> +<!--docid::SEC45::--> +<P> + +The names reported for authors of posts in the Summary buffer can be +altered to conform to the values present in their respective <B>BBDB</B> +records (if any). This rewriting is enabled by the use of a Gnus user +format code, as determined by +<CODE>bbdb/gnus-summary-user-format-letter</CODE>. This variable, which +defaults to <SAMP>`B'</SAMP>, is used to create a format code which is intended +for use in <CODE>gnus-summary-line-format</CODE>. The format code is created +by concatenating <SAMP>`%u'</SAMP> with the value of +<CODE>bbdb/gnus-summary-user-format-letter</CODE>. In the default case this +results in the creation of the format code <SAMP>`%uB'</SAMP>. This format code +is intended to <B>replace</B> the format code previously used in the Summary +buffer format line to indicate the author and/or net address (usually +<SAMP>`%a'</SAMP>, <SAMP>`%n'</SAMP>, and/or <SAMP>`$N'</SAMP>). +</P><P> + +The effects of this format code are in two independent parts - the +marking of known posters, and the rewriting of posters names. The +first, the marking of posters, occurs only when +<CODE>bbdb/gnus-summary-mark-known-posters</CODE> is <CODE>t</CODE> (the default) +and the posters have entries in the <B>BBDB</B>. When this variable is +true, the marking occurs as described in the previous section, Marking +Posters, above. +</P><P> + +The poster name rewriting is done for all posters - not just for those +with records in the <B>BBDB</B>. That said, rewriting rules for posters in +the <B>BBDB</B> are more flexible than for those not listed. The rewriting is +governed by two variables, as described below. +</P><P> + +<CODE>bbdb/gnus-summary-prefer-real-names</CODE> can have one of three values - +<SAMP>`t'</SAMP>, <SAMP>`bbdb'</SAMP>, or <CODE>nil</CODE>. In general, this variable governs +the preference between net addresses and names. If it is <SAMP>`t'</SAMP>, the +name (if any) will be used. If <SAMP>`nil'</SAMP>, the net address will be +used. The third value, <SAMP>`bbdb'</SAMP>, can be used as a method for +distinguishing between authors with records in the <B>BBDB</B> and those +without. If the variable is set to <SAMP>`bbdb'</SAMP>, the name from the +<B>BBDB</B> record will be used if the author has a record in the +<B>BBDB</B>. If the author is not in the <B>BBDB</B>, the net address from +the message will be printed. This variable makes little sense if +<CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE> is <SAMP>`nil'</SAMP>, as no names +will be printed in the Summary buffer in this case - only net addresses. +</P><P> + +<CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE> is used to (dis)allow use of +the <B>BBDB</B> for author data retrieval. If it is <SAMP>`t'</SAMP>, data from +the <B>BBDB</B> will be used if available. If it is <SAMP>`nil'</SAMP>, data from +the <B>BBDB</B> will not be used. +</P><P> + +In the following examples, assume the following: +</P><P> + +<OL> +<LI>Message: <CODE>From: Jamie <jwz@netscape.com></CODE><BR> +<B>BBDB</B>: No record +<LI>Message: <CODE>From: Matt <simmonmt@acm.org></CODE><BR> +<B>BBDB</B>: Name: <SAMP>`Matthew'</SAMP>, Net: <SAMP>`simmonmt@purdue.edu'</SAMP> +</OL> +<P> + +<TABLE> +<TR><TD><CODE>bbdb/gnus-summary-prefer-bbdb-data</CODE></TD> +</TD><TD> @center <CODE>t</CODE> +</TD><TD> @center <CODE>t</CODE> +</TD><TD> @center <CODE>nil</CODE> +</TR> +<TR><TD><CODE>bbdb/gnus-summary-prefer-real-names</CODE></TD> +</TD><TD> @center <CODE>t</CODE> +</TD><TD> @center <CODE>bbdb</CODE> +</TD><TD> @center <CODE>t</CODE> +</TR> +<TR><TD>Printed in Summary buffer for</TD> +</TR> +<TR><TD>@center Case 1</TD> +</TD><TD> @center Jamie +</TD><TD> @center jwz@netscape.com +</TD><TD> @center Jamie +</TR> +<TR><TD>@center Case 2</TD> +</TD><TD> @center Matthew +</TD><TD> @center Matthew +</TD><TD> @center Matt +</TR></TABLE> +<P> + +<A NAME="GNUS Subject List"></A> +<HR SIZE="6"> +<A NAME="SEC46"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC43"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.5.1.3 GNUS Summary Buffer Enhancements </H4> +<!--docid::SEC46::--> +<P> + +<I>This section is remarkably terse, as I don't have a copy of <B>GNUS</B>. +If anybody can provide more descriptive information, please let me +know.</I> +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(autoload 'bbdb/gnus-lines-and-from "bbdb-gnus") +(setq gnus-optional-headers 'bbdb/gnus-lines-and-from) +</pre></td></tr></table></P><P> + +<DL COMPACT> +<DT><CODE>bbdb/gnus-mark-known-posters</CODE> +<DD><A NAME="IDX107"></A> +<A NAME="IDX108"></A> +If <CODE>t</CODE> (the default), then the <B>GNUS</B> subject list will contain an +indication of those messages posted by people who have entries in +the Insidious Big Brother Database (they will be marked with an +asterisk.) <P> + +<A NAME="IDX109"></A> +You can change the character used to mark records on a record-by-record +basis by adding a <CODE>mark-char</CODE> property to the record, whose value +is be the string to display (preferably one character.) </P><P> + +<DT><CODE>bbdb/gnus-header-prefer-real-names</CODE> +<DD><A NAME="IDX110"></A> +Default: <CODE>nil</CODE>. if <CODE>t</CODE>, then the <B>GNUS</B> subject list will +display real names instead of network addresses. <P> + +<DT><CODE>bbdb/gnus-header-show-bbdb-names</CODE> +<DD><A NAME="IDX111"></A> +Default: <CODE>t</CODE>. If both this variable and +the <CODE>bbdb/gnus-header-prefer-real-names</CODE> variable are true, then +for news messages from people who are in your database, the name displayed +will be the primary name from the database, rather than the one from +the <SAMP>`From:'</SAMP> line of the message. This doesn't affect the names of +people who aren't in the database, of course.<P> + +<DT><CODE>bbdb/gnus-lines-and-from-length</CODE> +<DD><A NAME="IDX112"></A> +Default: 18. The number of characters used to display <SAMP>`From:'</SAMP> info in +<B>GNUS</B>, if you have set <CODE>gnus-optional-headers</CODE> to +<CODE>bbdb/gnus-lines-and-from</CODE>. </DL> +<P> + +<A NAME="VM Features"></A> +<HR SIZE="6"> +<A NAME="SEC47"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC46"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC48"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.5.2 VM-specific features </H3> +<!--docid::SEC47::--> +<P> + +The <B>BBDB</B> can be used to integrate database information into the +message summary. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"><B>BBDB</B> information in message summary</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="VM Message Summary"></A> +<HR SIZE="6"> +<A NAME="SEC48"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC41"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC47"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.5.2.1 VM Message Summary Enhancements </H4> +<!--docid::SEC48::--> +<P> + +<A NAME="IDX113"></A> +<A NAME="IDX114"></A> +<A NAME="IDX115"></A> +<A NAME="IDX116"></A> +VM users can cause their summary buffer to display the name of the +message sender according to BBDB data, instead of according to the +contents of the current message's headers. In VM 5.40 or later, use +the summary format control <CODE>%UB"</CODE> instead of <CODE>"%F"</CODE>, and the +current record name will be shown there if available. If no entry is +found it behaves like <CODE>"%F"</CODE>. See the documentation for +<CODE>vm-summary-format</CODE> for more details. Warning, this may +significantly slow down summary generation for large folders. +</P><P> + +<A NAME="Other Packages"></A> +<HR SIZE="6"> +<A NAME="SEC49"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC48"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC50"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC40"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.6 Using the <B>BBDB</B> with other packages </H2> +<!--docid::SEC49::--> +<P> + +The <B>BBDB</B> adds functionality to several packages. The following sections +detail these augmentations. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC50">1.6.1 Using the <B>BBDB</B> with Message Mode</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC51">1.6.2 Using the <B>BBDB</B> with Reportmail</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC52">1.6.3 Using the <B>BBDB</B> with Supercite</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Using Message Mode"></A> +<HR SIZE="6"> +<A NAME="SEC50"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC51"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.6.1 Using the <B>BBDB</B> with Message Mode </H3> +<!--docid::SEC50::--> +<P> + +At this time, the only feature the <B>BBDB</B> adds to Message mode is the binding +to <KBD>M-TAB</KBD> which allows for <B>BBDB</B> record completion. +</P><P> + +<A NAME="Using Reportmail"></A> +<HR SIZE="6"> +<A NAME="SEC51"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC50"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC52"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.6.2 Using the <B>BBDB</B> with Reportmail </H3> +<!--docid::SEC51::--> +<P> + +The <B>BBDB</B> can modify the <TT>`reportmail.el'</TT> package to use information +from <B>BBDB</B> records when identifying the senders or recipients of e-mail +messages. +</P><P> + +In normal operation, Reportmail displays the name and net address sender and +recipient of incoming messages. The <B>BBDB</B> can be configured to intercept +and rewrite this information before it appears in the Emacs mode-line. It +first attempts to rewrite the sender and/or recipient information by +substituting those addresses with information from the <B>BBDB</B>. Replacement +information is first sought from the <CODE>mail-name</CODE> field in the respective +<B>BBDB</B> records. If no such field is found, the <CODE>name</CODE> field is +returned. If no <B>BBDB</B> record is found, no rewriting is performed. +</P><P> + +The <B>BBDB</B>-Reportmail augmentation is accomplished through the advising of +the Reportmail <CODE>display-time-get-field</CODE> function in order to do +a-posteriori modification of the returned value. The augmentation uses the +<CODE>bbdb/reportmail-alternate-full-name</CODE> function to retrieve data from the +<B>BBDB</B> for use in rewriting. +</P><P> + +<A NAME="Using Supercite"></A> +<HR SIZE="6"> +<A NAME="SEC52"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC51"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC53"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.6.3 Using the <B>BBDB</B> with Supercite </H3> +<!--docid::SEC52::--> +<P> + +The <B>BBDB</B> can be used with Supercite to store attributions with <B>BBDB</B> +records. Normally, when a non-default attribution is entered for a given +message, the entered attribution is used for that message, and is then +discarded. When the <B>BBDB</B>-Supercite augmentation is enabled, the +non-default attribution will be added to the record (if any) for the entity +being cited. This poor explanation sounds complicated, but it's not. If a +message from <SAMP>`Jamie Zawinski <jwz@netscape.com>'</SAMP> is being replied to, +Supercite will, by default, suggest the citation <SAMP>`Jamie'</SAMP>. If the +non-default citation <SAMP>`jwz'</SAMP> is entered, Supercite can save it with the +<B>BBDB</B> record for <SAMP>`Jamie Zawinski'</SAMP> in the <CODE>attribution</CODE> field. +</P><P> + +The field used can be changed by changing the value of +<CODE>bbdb/sc-attribution-field</CODE>. +</P><P> + +<A NAME="Using Web Browsers"></A> +<HR SIZE="6"> +<A NAME="SEC53"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC52"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.6.4 Using the <B>BBDB</B> with Web Browsers </H3> +<!--docid::SEC53::--> +<P> + +The <B>BBDB</B>/Web Browser integration is in two parts, one which is +automatically enabled, and one which must be manually enabled (see section <A HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>). The first feature added is the ability to display the URL +associated with a given record in a Web Browser. The second is the ability to +add URLs to <B>BBDB</B> records from within W3, the Emacs Web Browser. +</P><P> + +Pressing <KBD>W</KBD> in the <CODE>*BBDB*</CODE> buffer while the cursor is positioned +over a record with a <CODE>www</CODE> field will cause the first URL in the field to +be loaded in a Web Browser. This functionality uses <CODE>browse-url</CODE> to +display URLs - see the documentation for <CODE>browse-url</CODE> for information on +selecting the browser to be used. +</P><P> + +If W3 is used, and if the <B>BBDB</B>/W3 functionality has been enabled as +described in <A HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A>, pressing the <KBD>:</KBD> key will add the URL +currently being displayed in W3 to a user-specified <B>BBDB</B> record. +</P><P> + +<A NAME="Options"></A> +<HR SIZE="6"> +<A NAME="SEC54"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC53"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC55"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC49"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.7 Options </H2> +<!--docid::SEC54::--> +<P> + +There are many variables which control the behavior of the Insidious Big +Brother Database, and there are many hook-variables which can be used to +modify its behavior in more complex ways. Several pieces of functionality +are included which use the hooks in this way. </P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP"></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Customization Parameters"></A> +<HR SIZE="6"> +<A NAME="SEC55"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC56"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.7.1 Customization Parameters </H3> +<!--docid::SEC55::--> +<P> + +<DL COMPACT> +<DT><CODE>bbdb-file</CODE> +<DD><A NAME="IDX117"></A> +The name of the file which contains your personal database. Default: +<TT>`~/.bbdb'</TT>. +<P> + +<DT><CODE>bbdb-default-area-code</CODE> +<DD><A NAME="IDX118"></A> +<A NAME="IDX119"></A> +The default area code to use when prompting for a new phone number. +Default: 415. This must be a number, not a string.<P> + +<DT><CODE>bbdb-north-american-phone-numbers-p</CODE> +<DD><A NAME="IDX120"></A> +<A NAME="IDX121"></A> +<A NAME="IDX122"></A> +Whether syntax-checking of phone numbers should be enforced. Default: +<CODE>t</CODE>. This only works for Bell-system phone numbers. If this is true, +then you can't enter invalid phone numbers, and all phone numbers are +pretty-printed in the same way. European phone numbers don't have as +strict a syntax, however, so this is a harder problem for them (on which +I am punting). <P> + +You can have both styles of phone number in your database by providing a +prefix argument to the <CODE>bbdb-insert-new-field</CODE> command. </P><P> + +<DT><CODE>bbdb-electric-p</CODE> +<DD><A NAME="IDX123"></A> +<A NAME="IDX124"></A> +Whether bbdb mode should be <I>"electric"</I> like <CODE>electric-buffer-list</CODE>. +Default: <CODE>t</CODE>. Basically this means that when you type space after +<KBD>M-x bbdb</KBD>, your window configuration will be restored to what it was +before you invoked the db list. (The <CODE>bbdb-mode</CODE> commands still work as +well.) <P> + +There are some problems with electric modes; for example, keyboard +macros and incremental search don't work. (This is not a bug in BBDB, +but in <TT>`electric.el'</TT>.)</P><P> + +<DT><CODE>bbdb-case-fold-search</CODE> +<DD><A NAME="IDX125"></A> +Default: the same as <CODE>case-fold-search</CODE>. <CODE>case-fold-search</CODE> is +bound to this by <KBD>M-x bbdb</KBD> and related commands. This variable lets +the case-sensitivity of <KBD>^S</KBD> and of the bbdb searching commands be +different. +<P> + +<DT><CODE>bbdb/mail-auto-create-p</CODE> +<DD><A NAME="IDX126"></A> +If this is <CODE>t</CODE> (the default), then <B>VM</B>, <B>MH</B>, and <B>RMAIL</B> +will automatically create new bbdb records for people you receive mail +from. If this variable is a function name or lambda expression, then it +is called with no arguments to decide whether an entry should be +automatically created. You can use this to, for example, not create +records for messages which have reached you through a particular mailing +list, or to only create records automatically if the mail has a +particular subject. See the variables +<CODE>bbdb-ignore-most-messages-alist</CODE> and +<CODE>bbdb-ignore-some-messages-alist</CODE> (See section <A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A>.) <P> + +<DT><CODE>bbdb/news-auto-create-p</CODE> +<DD><A NAME="IDX127"></A> +<A NAME="IDX128"></A> +If this is <CODE>t</CODE> (default: <CODE>nil</CODE>), then <B>GNUS</B> will +automatically create new <B>BBDB</B> records for people you read messages +by. If this is a function name or lambda expression, then it is called +with no arguments to decide whether an entry should be automatically +created. You can use this to, for example, create or not create +messages which have a particular subject. See the variable +<CODE>bbdb-auto-notes-alist</CODE> (See section <A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A>.). <P> + +If you want to autocreate messages based on the current newsgroup, it's +probably a better idea to set this variable to <CODE>t</CODE> or <CODE>nil</CODE> from your +<CODE>gnus-select-group-hook</CODE> instead. </P><P> + +To automatically remember users in certain groups, you can do something +like <TABLE><tr><td> </td><td class=example><pre>(setq gnus-select-group-hook +'(lambda () +(setq bbdb/news-auto-create-p +(or (string= "some.news.group" gnus-newsgroup-name) +(string= "other.news.group" gnus-newsgroup-name))))) +</pre></td></tr></table></P><P> + +<DT><CODE>bbdb-quiet-about-name-mismatches</CODE> +<DD><A NAME="IDX129"></A> +If this is false (the default), then <B>BBDB</B> will prompt you when it notices a +name change, that is, when the "real name" in a message doesn't correspond +to a record already in the database with the same network address. As in, +<I>"John Smith <jqs@frob.com>"</I> versus +<I>"John Q. Smith <jqs@frob.com>".</I> If this is true, then you will +not be asked if you want to change it (and it will not be changed.) <P> + +<DT><CODE>bbdb-use-alternate-names</CODE> +<DD><A NAME="IDX130"></A> +<A NAME="IDX131"></A> +<A NAME="IDX132"></A> +If this is false, then the <B>BBDB</B> will not use the <B>AKA</B> field. +Otherwise (the default) then the mail and news interfaces will ask you +if you want to add an alternate name when a name-change is noticed, and +will ask you whether the new name should be made the primary one. +Note that if <CODE>bbdb-quiet-about-name-mismatches</CODE> is true, you will +not be asked any questions about alternate names. +<P> + +<DT><CODE>bbdb-readonly-p</CODE> +<DD><A NAME="IDX133"></A> +If this is true (default: <CODE>nil</CODE>), then nothing will attempt to change the +database implicitly, and you will be prevented from doing it +explicitly. If you have more than one emacs running at the same time, +you might want to arrange for this to be set to <CODE>t</CODE> in all but one of +them. <P> + +<DT><CODE>bbdb-auto-revert-p</CODE> +<DD><A NAME="IDX134"></A> +If this variable is true (default: <CODE>nil</CODE>) and the <B>BBDB</B> file is noticed to +have changed on disk, it will be automatically reverted without +prompting you first. Otherwise you will be asked. (But if the file has +changed and you have made changes in memory as well, you will always be +asked.) <P> + +<DT><CODE>bbdb-notice-auto-save-file</CODE> +<DD><A NAME="IDX135"></A> +<A NAME="IDX136"></A> +If this is true (default: <CODE>nil</CODE>), then the <B>BBDB</B> will notice when its +auto-save file is newer than the file is was read from, and will offer +to revert. <P> + +<DT><CODE>bbdb-use-pop-up</CODE> +<DD><A NAME="IDX137"></A> +<A NAME="IDX138"></A> +If true (the default), display a continuously-updating <B>BBDB</B> +window while in <B>VM</B>, <B>MH</B>, <B>RMAIL</B>, or <B>GNUS</B>. +Each time a new message is selected, the record corresponding to +that message's sender will be displayed in another window. The +buffer in this other window will be in bbdb-mode, and all +corresponding commands will be available. <P> + +This buffer will be positioned on the screen by finding the tallest +of the windows present, and splitting it such that the bottom +<CODE>bbdb-pop-up-target-lines</CODE> lines of the window display the +<SAMP>`*BBDB*'</SAMP> buffer. With the default configurations of <B>VM</B>, +<B>MH</B>, <B>RMAIL</B>, and <B>GNUS</B>, this means that the bbdb-list +buffer will be just below the message-body buffer. </P><P> + +If this is the symbol <CODE>horiz</CODE>, then the <B>BBDB</B> window will be +stacked horizontally instead of vertically, if there is room to do that +tastefully. </P><P> + +<DT><CODE>bbdb-pop-up-target-lines</CODE> +<DD><A NAME="IDX139"></A> +Desired number of lines in a <B>VM/MH/RMAIL/GNUS</B> pop-up <B>BBDB</B> window, +default 5. <P> + +<DT><CODE>bbdb-completion-type</CODE> +<DD><A NAME="IDX140"></A> +<A NAME="IDX141"></A> +<A NAME="IDX142"></A> +<A NAME="IDX143"></A> +<A NAME="IDX144"></A> +Controls the behavior of the <CODE>bbdb-complete-name</CODE> command. If <CODE>nil</CODE> +(the default), completion is done across the set of all full-names and +user-ids in the database; if the symbol <CODE>name</CODE>, completion is +done on real-names only; if the symbol <CODE>net</CODE>, completion is done +on network addresses only; if it is <CODE>primary</CODE>, then completion is +done only across the set of primary network addresses (the first address +in the list of addresses for a given user). If it is +<CODE>primary-or-name</CODE>, completion is done across primaries and real +names. <P> + +<DT><CODE>bbdb-user-mail-names</CODE> +<DD><A NAME="IDX145"></A> +A regular expression identifying the addresses that belong to you. If a +message from an address matching this is seen, the <B>BBDB</B> record for the +<SAMP>`To:'</SAMP> line will be shown instead of the one for the <SAMP>`From:'</SAMP> +line. If this is <CODE>nil</CODE>, it will default to the value of +<CODE>(user-login-name)</CODE>. <P> + +<DT><CODE>bbdb-always-add-addresses</CODE> +<DD><A NAME="IDX146"></A> +If this is <CODE>t</CODE>, then whenever the Insidious Big Brother Database +notices a new email address corresponding to a person who is in the +database, it will add it to the database. If this is <CODE>nil</CODE> (the +default), then whenever a new network address is noticed for a person in +the database, you will be asked whether to add the address. If this is +the symbol <CODE>never</CODE> (really if it is not <CODE>t</CODE> and not <CODE>nil</CODE>) +then new network addresses will never be automatically added. <P> + +<DT><CODE>bbdb-new-nets-always-primary</CODE> +<DD><A NAME="IDX147"></A> +If this is <CODE>t</CODE>, then when the Insidious Big Brother Database adds a new +address to a record, it will always add it to the front of the list of +addresses, making it the primary address. If this is <CODE>nil</CODE> (the default), +then you will be asked. If this is the symbol <CODE>never</CODE> (really if +it is not <CODE>t</CODE> and not <CODE>nil</CODE>) then new network addresses will +always be added to the end of the list. <P> + +<DT><CODE>bbdb-canonicalize-redundant-nets-p</CODE> +<DD><A NAME="IDX148"></A> +If this is non-<CODE>nil</CODE>, redundant network addresses will be ignored. +If a record has an address of the form <CODE>foo@baz.com</CODE>, setting this +to <CODE>t</CODE> will cause subsequently-noticed addresses +like <CODE>foo@bar.baz.com</CODE> to be ignored (since we already have a more +general form of that address.) This is similar in function to one of +the possible uses of the variable <CODE>bbdb-canonicalize-net-hook</CODE> +but is somewhat more automatic. (This can't quite be implemented in +terms of the canonicalize-net-hook because it needs access to the +database to determine whether an address is redundant, and the +canonicalize-net-hook is purely a textual manipulation which is +performed before any database access.) +<P> + +<DT><CODE>bbdb-message-caching-enabled</CODE> +<DD><A NAME="IDX149"></A> +Whether caching of the message->bbdb-record association should be +used for the interfaces which support it (<B>VM</B>, <B>MH</B>, and +<B>RMAIL</B>). This can speed things up a lot. One implication of +this variable being true (the default) is that the +<CODE>bbdb-notice-hook</CODE> will not be called each time a message is +selected, but only the first time. Likewise, if selecting a message +would generate a question (whether to add an address, change the +name, etc) you will only be asked that question the very first time +the message is selected. <P> + +<DT><CODE>bbdb-elided-display</CODE> +<DD><A NAME="IDX150"></A> +Default: <CODE>nil</CODE>. Set this to <CODE>t</CODE> to make the bbdb-display commands +default to displaying one line per record instead of a full listing. +Set this to a list of some of the symbols <CODE>'(address phone net +notes)</CODE> to select those fields to be left out of the listing (you can't +leave out the name field). <P> + +This is the default state for <KBD>M-x bbdb</KBD> and friends. You can have a +different default for when the <B>BBDB</B> buffer is automatically updated by the +mail and news interfaces by setting the variable +<CODE>bbdb-pop-up-elided-display</CODE>. If that variable is unbound, this +variable will be consulted instead.</P><P> + +<DT><CODE>bbdb-pop-up-elided-display</CODE> +<DD><A NAME="IDX151"></A> +Default: unbound. Set this to <CODE>t</CODE> if to make the pop-up <B>BBDB</B> buffer +default to displaying one line per record instead of a full listing. +Set this to a list of some of the symbols <CODE>'(address phone net +notes)</CODE> to select those fields to be left out of the listing (you can't +leave out the name field). <P> + +The default state for <KBD>M-x bbdb</KBD> and friends is controlled by the +variable <CODE>bbdb-elided-display</CODE>; this variable is the default for +when the <B>BBDB</B> buffer is automatically updated by the mail and news +interfaces. If bbdb-pop-up-elided-display is unbound, then +bbdb-elided-display the former will be consulted instead by mail and +news.</P><P> + +<DT><CODE>bbdb-offer-save</CODE> +<DD><A NAME="IDX152"></A> +If <CODE>t</CODE> (the default), then certain actions will cause the <B>BBDB</B> to +ask you whether you wish to save the database. If <CODE>nil</CODE>, then the +offer to save will never be made. If not <CODE>t</CODE> and not <CODE>nil</CODE>, then +any time it would ask you, it will just save it without asking. <P> + +</DL> +<P> + +<A NAME="Customization Hooks"></A> +<HR SIZE="6"> +<A NAME="SEC56"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC55"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC57"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.7.2 Customization Hooks </H3> +<!--docid::SEC56::--> +<P> + +All of the hooks variables described below may be set to a symbol or +lambda expression, which will be funcalled; or may be set to a list of +symbols or lambda expressions, each of which will be funcalled in turn. +Almost all hooks in Emacs work this way. But notice that some of the +hooks described below are called with arguments. +</P><P> + +<DL COMPACT> +<DT><CODE>bbdb-list-hook</CODE> +<DD><A NAME="IDX153"></A> +Hook or hooks invoked after the bbdb-list-buffer is filled in. Invoked +with no arguments. <P> + +<DT><CODE>bbdb-create-hook</CODE> +<DD><A NAME="IDX154"></A> +Hook or hooks invoked each time a new bbdb-record is created. Invoked +with one argument, the new record. This is called <EM>before</EM> the record is +added to the database. Note that <CODE>bbdb-change-hook</CODE> will be called as +well. <P> + +<DT><CODE>bbdb-change-hook</CODE> +<DD><A NAME="IDX155"></A> +Hook or hooks invoked each time a bbdb-record is altered. Invoked with +one argument, the record. This is called <EM>before</EM> the database buffer +is modified. Note that if a new bbdb record is created, both this hook and +<CODE>bbdb-create-hook</CODE> will be called. <P> + +<DT><CODE>bbdb-mode-hook</CODE> +<DD><A NAME="IDX156"></A> +Hook or hooks invoked when the <SAMP>`*BBDB*'</SAMP> buffer is created. +<P> + +<DT><CODE>bbdb-notice-hook</CODE> +<DD><A NAME="IDX157"></A> +Hook or hooks invoked each time a bbdb-record is "noticed," that +is, each time it is displayed by the news or mail interfaces. +Invoked with one argument, the new record. The record need not have +been modified for this to be called - use <CODE>bbdb-change-hook</CODE> for that. +You can use this to, for example, add something to the notes field +based on the subject of the current message. It is up to your hook +to determine whether it is running in <B>GNUS</B>, <B>VM</B>, +<B>MH</B>, or <B>RMAIL</B>, and to act appropriately. <P> + +Also note that <CODE>bbdb-change-hook</CODE> will <EM>not</EM> be called as a +result of any modifications you may make to the record inside this +hook. </P><P> + +Beware that if the variable <CODE>bbdb-message-caching-enabled</CODE> is +true (a good idea) then when you are using <B>VM</B>, <B>MH</B>, or +<B>RMAIL</B>, this hook will be called only the first time that +message is selected. (The <B>GNUS</B> interface does not use caching.) +When debugging the value of this hook, it is a good idea to set +caching-enabled to <CODE>nil</CODE>. </P><P> + +<DT><CODE>bbdb-after-read-db-hook</CODE> +<DD><A NAME="IDX158"></A> +Hook or hooks invoked (with no arguments) just after the Insidious Big +Brother Database is read in. Note that this can be called more than once if +the <B>BBDB</B> is reverted. One possible use for this is to rename the +<TT>`.bbdb'</TT> buffer; for example <P> + +<CODE>(setq bbdb-after-read-db-hook '(lambda () (rename-buffer " bbdb")))</CODE> +</P><P> + +will cause the buffer visiting the <CODE>bbdb-file</CODE> to be +called <CODE>" bbdb"</CODE>. The leading space in its name will prevent +it from showing up in the buffer list. +</P><P> + +<DT><CODE>bbdb-load-hook</CODE> +<DD><A NAME="IDX159"></A> +Hook or hooks invoked (with no arguments) when the Insidious Big Brother +Database code is first loaded. WARNING: Slow functions should not be +put on this hook, as the <B>BBDB</B> code will, if not loaded before, be +loaded during the first use of <B>BBDB</B>-related Customization +functions. Slow functions should be put on <CODE>bbdb-initialize-hook</CODE>. +<P> + +<DT><CODE>bbdb-initialize-hook</CODE> +<DD><A NAME="IDX160"></A> +<A NAME="IDX161"></A> +Hook or hooks invoked (with no arguments) when the +<CODE>bbdb-initialize</CODE> function is called. +<P> + +<DT><CODE>bbdb-canonicalize-net-hook</CODE> +<DD><A NAME="IDX162"></A> +If this is non-<CODE>nil</CODE>, it should be a function of one argument: a +network address string. (Note that, unlike the other hook-variables +described above, this may not be a list of functions.) Whenever the +Insidious Big Brother Database "notices" a message, the corresponding +network address will be passed to this function first, as a kind of +"filter" to do whatever transformations upon it you like before it is +compared against or added to the database. For example: it is the case +that <CODE>CS.CMU.EDU</CODE> is a valid return address for all mail +originating at a machine in the <CODE>.CS.CMU.EDU</CODE> domain. So, if you +wanted all such addresses to be canonically hashed as +<CODE>user@CS.CMU.EDU</CODE>, instead of as <CODE>user@somehost.CS.CMU.EDU</CODE>, +you might set this variable to a function like this: <P> + +<TABLE><tr><td> </td><td class=example><pre>(setq bbdb-canonicalize-net-hook + '(lambda (addr) + (cond ((string-match + "\\`\\([^@]+@\\).*\\.\\(CS\\.CMU\\.EDU\\)\\'" + addr) + (concat (substring addr + (match-beginning 1) (match-end 1)) + (substring addr + (match-beginning 2) (match-end 2)))) + (t addr)))) +</pre></td></tr></table></P><P> + +You could also use this function to rewrite UUCP-style addresses into +domain-style addresses, or any number of other things.</P><P> + +This function will be called repeatedly until it returns a value EQ to the +value passed in. So multiple rewrite rules might apply to a single +address.</P><P> + +There is an example of the use of this variable in the +file <TT>`bbdb-hooks.el'</TT>: the function +<CODE>sample-bbdb-canonicalize-net-hook</CODE>.</DL> +<P> + +<A NAME="IDX163"></A> +<A NAME="IDX164"></A> +The <CODE>bbdb-canonicalize-net-hook</CODE> is powerful in that it allows +arbitrary rewriting of addresses, however, in many cases that is +overkill. The function <CODE>bbdb-delete-redundant-nets</CODE> can be +used as a value of <CODE>bbdb-change-hook</CODE> to cause network addresses +which appear to be "redundant" to be deleted each time a modification +is made to a record. </P><P> + +This works as follows: suppose one gets mail from <CODE>user@foo.bar.com</CODE>, +and then later gets mail from <CODE>user@bar.com</CODE>. At this point, one +can generally delete the <CODE>user@foo.bar.com</CODE> address, since the +<CODE>user@bar.com</CODE> address is more general. (See also the +variable `bbdb-canonicalize-redundant-nets-p', which has the effect of +ignoring subsequent addresses from <CODE>user@quux.bar.com</CODE> if the +address <CODE>user@bar.com</CODE> is already known.)</P><P> + +<A NAME="Predefined Hooks"></A> +<HR SIZE="6"> +<A NAME="SEC57"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC56"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.7.3 Predefined Hooks </H3> +<!--docid::SEC57::--> +<P> + +<A NAME="IDX165"></A> +<A NAME="IDX166"></A> +If the variable <CODE>bbdb-change-hook</CODE> is set to the symbol +<CODE>bbdb-timestamp-hook</CODE> (the default), then every record in the +database will have a field named <SAMP>`timestamp'</SAMP>, which will always +contain the date and time at which this record was created or last +modified. +</P><P> + +<A NAME="IDX167"></A> +If the variable <CODE>bbdb-create-hook</CODE> is set to the symbol +<CODE>bbdb-creation-date-hook</CODE> (the default), then every record in the +database will have a field named <SAMP>`creation-date'</SAMP>, which will +contain the date and time at which this record was added to the +database. +</P><P> + +<A NAME="IDX168"></A> +<A NAME="IDX169"></A> +<A NAME="IDX170"></A> +If the variable <CODE>bbdb/mail-auto-create-p</CODE> is set to the symbol +<CODE>bbdb-ignore-most-messages-hook</CODE>, then the variable +<CODE>bbdb-ignore-most-messages-alist</CODE> will determine which messages +should have records automatically created for them. The format of this +alist is <TABLE><tr><td> </td><td class=example><pre>(( <VAR>HEADER-NAME</VAR> . <VAR>REGEXP</VAR> ) <small>...</small> ) +</pre></td></tr></table>for example, +<TABLE><tr><td> </td><td class=example><pre>(("From" . "@.*\\.maximegalon\\.edu") + ("Subject" . "time travel")) +</pre></td></tr></table></P><P> + +will cause <B>BBDB</B> entries to be made only for messages sent by +people at Maximegalon U., or (that's <EM>or</EM>) people posting +about time travel. </P><P> + +There may be only one entry per header in this alist: that is, </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(("From" . "addr1\\|addr2") <small>...</small> ) +</pre></td></tr></table></P><P> + +is legal, but +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(("From" . "addr1") ("From" . "addr2") <small>...</small> ) +</pre></td></tr></table></P><P> + +is not. +</P><P> + +<A NAME="IDX171"></A> +<A NAME="IDX172"></A> +<A NAME="IDX173"></A> +<A NAME="IDX174"></A> +If the variable <CODE>bbdb/mail-auto-create-p</CODE> is set to the symbol +<CODE>bbdb-ignore-some-messages-hook</CODE>, then the variable +<CODE>bbdb-ignore-some-messages-alist</CODE> will determine which messages +should have records automatically created for them. This is the exact +inverse of the semantics of the <CODE>bbdb-ignore-most-messages-alist</CODE>: +the alist specifies which messages should <EM>not</EM> have records +automatically created for them, instead of which should. For +example, </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(("From" . "mailer.daemon") + ("To" . "mailing-list-1\\|mailing-list-2") + ("CC" . "mailing-list-1\\|mailing-list-2")) +</pre></td></tr></table></P><P> + +will cause <B>BBDB</B> entries to not be made for messages from any mailer daemon, +or messages sent to or <B>CC</B>ed to either of two mailing lists. </P><P> + +The variable <CODE>bbdb/news-auto-create-p</CODE> may be set to either of the +above-mentioned functions as well, to get this behavior for netnews +messages instead of mail messages.</P><P> + +<A NAME="IDX175"></A> +<A NAME="IDX176"></A> +<A NAME="IDX177"></A> +If the variable <CODE>bbdb-notice-hook</CODE> is set to the symbol +<CODE>bbdb-auto-notes-hook</CODE>, then the variable <CODE>bbdb-auto-notes-alist</CODE> +may be used to automatically add text to the notes fields of the records +corresponding to certain messages. The format of this alist is </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(( <VAR>HEADER-NAME</VAR> + (<VAR>REGEXP</VAR> . <VAR>STRING</VAR>) <small>...</small> ) + <small>...</small> ) +</pre></td></tr></table></P><P> + +for example, +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(("To" ("-vm@" . "VM mailing list")) + ("Subject" ("sprocket" . "mail about sprockets") + ("you bonehead" . "called me a bonehead"))) +</pre></td></tr></table></P><P> + +will cause the text <CODE>"VM mailing list"</CODE> to be added to the notes field of +the record corresponding to anyone you get mail from via one of the <B>VM</B> +mailing lists. If, that is, <CODE>bbdb/mail-auto-create-p</CODE> is set such +that the record would have been created, or if the record already +existed.</P><P> + +The format of elements of this list may also be +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(<VAR>REGEXP</VAR> <VAR>FIELD-NAME</VAR> <VAR>STRING</VAR>) +</pre></td></tr></table>or +<TABLE><tr><td> </td><td class=example><pre>(<VAR>REGEXP</VAR> <VAR>FIELD-NAME</VAR> <VAR>STRING</VAR> <VAR>REPLACE-P</VAR>) +</pre></td></tr></table></P><P> + +meaning add the given string to the named field. The field-name may not +be <SAMP>`name'</SAMP>, <SAMP>`aka'</SAMP>, <SAMP>`address'</SAMP>, <SAMP>`phone'</SAMP>, or <SAMP>`net'</SAMP> +(builtin fields) but must be either <SAMP>`notes'</SAMP>, <SAMP>`company'</SAMP>, or the +name of a user-defined note-field. </P><P> + +<TABLE><tr><td> </td><td class=example><pre>("pattern" . "string to add") +</pre></td></tr></table></P><P> + +is equivalent to +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>("pattern" notes "string to add") +</pre></td></tr></table></P><P> + +<VAR>STRING</VAR> can contain <CODE>\&</CODE> or <CODE>\N</CODE> escapes like in the function +<CODE>replace-match</CODE>. For example, to automatically add the contents of the +<B>organization</B> field of a message to the <CODE>company</CODE> field of a <B>BBDB</B> +record, you can use this: </P><P> + +<TABLE><tr><td> </td><td class=example><pre>("Organization" (".*" company "\\&")) +</pre></td></tr></table></P><P> + +(Note you need two \ to get a single \ into a lisp string literal.) +</P><P> + +If STRING is an integer <I>N</I>, the <I>N</I>th matching subexpression is +used, so the above example could be written more efficiently as </P><P> + +<TABLE><tr><td> </td><td class=example><pre>("Organization" (".*" company 0)) +</pre></td></tr></table></P><P> + +If STRING is neither a string or an integer, it should be a function +which is called with the contents of the field, and the result of the +function call is used. +</P><P> + +If the <VAR>REPLACE-P</VAR> flag is true, then the string replaces the old +contents instead of being appended to it. +</P><P> + +If multiple clauses match the message, all of the corresponding strings +will be added. </P><P> + +If the string is being appended (<VAR>REPLACE-P</VAR> is false or not +provided) then the new string is appended to the end of the existing +field value, with an intervening newline. So each piece of text +automatically added to this field will go on its own line. </P><P> + +You can control what the separator is by putting a <CODE>field-separator</CODE> +property on the symbol naming the field. For example, to make text +automatically added to a field named <CODE>newsgroups</CODE> be separated by +commas, you could do </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(put 'newsgroups 'field-separator "; ") +</pre></td></tr></table></P><P> + +This variable works for news as well. You might want to arrange for +this to have a different value when in mail as when in news. </P><P> + +There may be only one entry per header in this alist: that is,</P><P> + +<TABLE><tr><td> </td><td class=example><pre> (("Subject" ("\\bfoo\\b" . "Foo!!") + ("bar" . "Bar!"))) +</pre></td></tr></table></P><P> + +will work, but +</P><P> + +<TABLE><tr><td> </td><td class=example><pre> (("Subject" ("\\bfoo\\b" . "Foo!!")) + ("Subject" ("bar" . "Bar!"))) +</pre></td></tr></table></P><P> + +will not. +</P><P> + +Here's a more complicated example: some people include bitmaps of +themselves in their mail messages in an <B>X-Face:</B> header field. +You can capture this field into the <SAMP>`*BBDB*'</SAMP> with the +following: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>(setq bbdb-auto-notes-alist + (append bbdb-auto-notes-alist + (list "x-face" + (list (concat "[ \t\n]*\\([^ \t\n]*\\)" + "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" + "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" + "\\([ \t\n]+\\([^ \t\n]+\\)\\)?" + ) + 'face + "\\1\\3\\5\\7")))) +</pre></td></tr></table></P><P> + +(The calls to <CODE>list</CODE> and <CODE>concat</CODE> are just for readability, it +could easily be a constant.) The tricky bit here is that it strips out +the newlines and whitespace used for header continuation, which are not +actually a part of the face data. So though the mail message may have +the face data on multiple lines, the entry in the <SAMP>`*BBDB*'</SAMP> will +be just one line. +</P><P> + +<A NAME="IDX178"></A> +<CODE>bbdb-auto-notes-ignore</CODE> is an alist of headers and regexps to +ignore in <CODE>bbdb-auto-notes-hook</CODE>. Each element looks like </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(<VAR>HEADER</VAR> . <VAR>REGEXP</VAR>) +</pre></td></tr></table></P><P> + +for example, +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>("Organization" . "^Gatewayed from\\|^Source only") +</pre></td></tr></table></P><P> + +would exclude the phony <CODE>Organization:</CODE> headers in GNU mailing-lists +gatewayed to the <CODE>gnu.*</CODE> newsgroups. Note that this exclusion +applies only to a single field, not to the entire message. For that, +use the variable <CODE>bbdb-auto-notes-ignore-all</CODE>. +</P><P> + +<A NAME="IDX179"></A> +<CODE>bbdb-auto-notes-ignore-all</CODE> is an alist of headers and regexps +which cause the entire message to be ignored in <CODE>bbdb-auto-notes-hook</CODE>. +Each element looks like </P><P> + +<TABLE><tr><td> </td><td class=example><pre>(<VAR>HEADER</VAR> . <VAR>REGEXP</VAR>) +</pre></td></tr></table></P><P> + +for example, +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>("From" . "BLAT\\.COM") +</pre></td></tr></table></P><P> + +would exclude any notes recording for message coming from <CODE>BLAT.COM</CODE>. +Note that this is different from <CODE>bbdb-auto-notes-ignore</CODE>, which +applies only to a particular header field, rather than the entire message. +</P><P> + +<A NAME="Utilities"></A> +<HR SIZE="6"> +<A NAME="SEC58"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC57"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC59"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC54"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.8 Utilities </H2> +<!--docid::SEC58::--> +<P> + +This section describes <B>BBDB</B> functionality that does not fit neatly into +other sections. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC59">1.8.1 <CODE>bbdb-ftp</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Storing FTP sites in the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Print the <B>BBDB</B></TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC61">1.8.3 <CODE>bbdb-snarf</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Record generation from raw text</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC62">1.8.4 <CODE>bbdb-srv</CODE></A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">External control of the <B>BBDB</B></TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="bbdb-ftp"></A> +<HR SIZE="6"> +<A NAME="SEC59"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC60"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.8.1 <CODE>bbdb-ftp</CODE> </H3> +<!--docid::SEC59::--> +<P> + +The <CODE>bbdb-ftp</CODE> utility enables the storage of FTP sites as <B>BBDB</B> +records. The <CODE>bbdb-create-ftp-site</CODE> function is used to create a +<B>BBDB</B> record for an FTP site. The command will prompt for information +needed to create the record. The FTP site for a given record can be accessed +with the <CODE>bbdb-ftp</CODE> command. +</P><P> + +<A NAME="bbdb-print"></A> +<HR SIZE="6"> +<A NAME="SEC60"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC59"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC61"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.8.2 <CODE>bbdb-print</CODE> </H3> +<!--docid::SEC60::--> +<P> + +<CODE>bbdb-print</CODE> is a utility for pretty-printing entries from the <B>BBDB</B> +using TeX. It is invoked by pressing <KBD>P</KBD> in the <CODE>*BBDB*</CODE> buffer - +this will cause all records in the <B>BBDB</B> to be printed as governed by the +variables described below. If <KBD>P</KBD> is prefixed by a <KBD>*</KBD>, only the +currently-displayed records will be printed. Once invoked, <CODE>bbdb-print</CODE> +will generate the TeX output in a buffer named <TT>`~/bbdb.tex'</TT> (controlled +by <CODE>bbdb-print-file-name</CODE>). The generated output will be shown, and must +be <B>manually</B> saved. +</P><P> + +For each record printed, <CODE>bbdb-print</CODE> will look for the presence of the +<CODE>tex-name</CODE> field. If this field is found, its value will be printed +instead of the <CODE>name</CODE> field for the record in question. This field is +intended to allow the storage of names with accents or other characters that +would be illegal in the address portion of a message. While other fields have +special characters quoted by <CODE>bbdb-print</CODE> as described below, the +contents of the <CODE>tex-name</CODE> field (if present) are used verbatim. +</P><P> + +The following variables govern the printing of records (and of the printing of +the fields therein): +</P><P> + +<DL COMPACT> +<DT><CODE>bbdb-print-elide</CODE> +<DD><A NAME="IDX180"></A> +This variable should be set to a list of the fields that are not to be printed +by <CODE>bbdb-print</CODE>. It defaults to:<BR> +<center> + <CODE>(tex-name aka mail-alias)</CODE> +</center> +<P> + +<DT><CODE>bbdb-print-file-name</CODE> +<DD><A NAME="IDX181"></A> +The name of the file where generated TeX output is to be stored. The default +is <TT>`~/bbdb.tex'</TT>. +<P> + +<DT><CODE>bbdb-print-require</CODE> +<DD><A NAME="IDX182"></A> +The fields required for printing a record. This allows, for example, only +records with phone numbers to be printed. The value of the value of the +variable will be evaluated once for each record, and the record will be +printed only if the evaluation returns a non-nil value. The symbols +<CODE>name</CODE>, <CODE>company</CODE>, <CODE>net</CODE>, <CODE>phone</CODE>, <CODE>address</CODE>, and +<CODE>notes</CODE> will be set to the appropriate values during evaluation; they +will be nil if the field does not exist or is elided. +<P> + +The value of this variable can be any lisp expression, but typically +it will be used for a boolean combination of the field variables, as +in the following simple examples: +</P><P> + +<UL> +<LI>Print only people whose phone numbers are known:<BR> +<center> + <CODE>(setq bbdb-print-require 'phone)</CODE> +</center> +<LI>Print people whose names AND companies are known:<BR> +<center> + <CODE>(setq bbdb-print-require '(and name company))</CODE> +</center> +<LI>Print people whose names, and either addresses OR phone numbers are +known:<BR> +<center> + <CODE>(setq bbdb-print-require '(and name (or address phone))).</CODE> +</center> +<P> + +The default value is:<BR> +<center> + <CODE>(or address phone)</CODE> +</center> +</UL> +<P> + +<DT><CODE>bbdb-print-alist</CODE> +<DD><A NAME="IDX183"></A> +Formatting options for all formats of <CODE>bbdb-print</CODE>. The value is an +alist of the form<BR> +<center> + <CODE>((<VAR>OPTION</VAR> . <VAR>VALUE</VAR>) (<VAR>OPTION</VAR> . <VAR>VALUE</VAR>) ...)</CODE> +</center> +<P> + +Separate settings can be configured using <CODE>bbdb-print-brief-alist</CODE> and +<CODE>bbdb-print-full-alist</CODE>. Settings in these variables will override the +ones in <CODE>bbdb-print-alist</CODE>. +</P><P> + +The possible options and legal settings are: +<DL COMPACT> +<DT><CODE>columns</CODE> +<DD><CODE>1</CODE>, <CODE>2</CODE>, <CODE>3</CODE>, <CODE>4</CODE>, <CODE>quad</CODE> (4 little +2-column pages per sheet) or <CODE>grid</CODE> (12 credit-card-sized pages per +sheet). +<P> + +<DT><CODE>separator</CODE> +<DD><CODE>0</CODE>-<CODE>7</CODE>, the style of heading for each letter. <CODE>0</CODE>=none, +<CODE>1</CODE>=line, <CODE>2</CODE>=boxed letters, <CODE>3</CODE>=large boxed letters, +<CODE>4</CODE>=large letters, <CODE>5</CODE>=letters with lines, <CODE>6</CODE>=letters with +suits, <CODE>7</CODE>=boxed letters with suits. +<P> + +<DT><CODE>omit-area-code</CODE> +<DD>A regular expression matching area codes to omit. +<P> + +<DT><CODE>phone-on-first-line</CODE> +<DD>If <CODE>t</CODE>, the first phone number will be put on the same line as the name. +If <CODE>nil</CODE>, the name will be the only text on the line. If set to a +string, the field of type <CODE>phone</CODE> whose name matches the string will be +used. The string should be a valid regular expression. +<P> + +<DT><CODE>n-phones</CODE> +<DD>Maximum number of phone numbers to include. +<P> + +<DT><CODE>n-addresses</CODE> +<DD>Maximum number of addresses to include. +<P> + +<DT><CODE>include-files</CODE> +<DD>List of TeX files to <CODE>\input</CODE>. If the filenames are not absolute, the +files must be located somewhere in the TeX input path. +<P> + +<DT><CODE>ps-fonts</CODE> +<DD>Postscript fonts (TimesNewRoman and Courier) will be used if the value +is non-<CODE>nil</CODE>. Standard TeX fonts (ec-fonts) will be used +otherwise. +<P> + +<DT><CODE>font-size</CODE> +<DD>The integer point size of the font to be used. +<P> + +<DT><CODE>hsize</CODE> +<DD>The horizontal dimension of the pages. The value must be a string, and must +be a valid TeX dimension. Alternatively, the TeX default will be used if the +value is <CODE>nil</CODE>. +<P> + +<DT><CODE>vsize</CODE> +<DD>The vertical dimension of the pages. The value must be a string, and must +be a valid TeX dimension. Alternatively, the TeX default will be used if the +value is <CODE>nil</CODE>. +<P> + +<DT><CODE>hoffset</CODE> +<DD>The TeX output will be offset to the right by the value of this option. The +value must be either a string containing a valid TeX dimension or <CODE>nil</CODE> +or <CODE>0</CODE> to use the default TeX horizontal offset. +<P> + +<DT><CODE>voffset</CODE> +<DD>The TeX output will be offset downward by the value of this option. The +value must be either a string containing a valid TeX dimension or <CODE>nil</CODE> +or <CODE>0</CODE> to use the default TeX vertical offset. +<P> + +<DT><CODE>quad-hsize</CODE> +<DD>Horizontal size to be used for the individual pages in the quad format. The +value must be a string containing a valid TeX dimension. +<P> + +<DT><CODE>quad-vsize</CODE> +<DD>Vertical size to be used for the individual pages in the quad format. The +value must be a string containing a valid TeX dimension. +</DL> +<P> + +The default value is +<TABLE><tr><td> </td><td class=example><pre>((omit-area-code . "(<VAR>AREA-CODE</VAR>)") + (phone-on-first-line . "^[ \t]*$") + (ps-fonts . nil) + (font-size . 6) + (quad-hsize . "3.15in") + (quad-vsize . "4.5in")) +</pre></td></tr></table></P><P> + +Where <VAR>AREA-CODE</VAR> is the value of <CODE>bbdb-default-area-code</CODE> or +<SAMP>`000'</SAMP> if there is no default area code. +</P><P> + +<DT><CODE>bbdb-print-brief-alist</CODE> +<DD><A NAME="IDX184"></A> +Extra options for the <CODE>bbdb-print</CODE> brief format. The value(s) of +this variable can either supplement or override the values in +<CODE>bbdb-print-alist</CODE>. The format and possible values of this variable are +as in <CODE>bbdb-print-alist</CODE>, described above. +<P> + +The default value is +<TABLE><tr><td> </td><td class=example><pre>((columns . 1) + (separator . 1) + (n-phones . 2) + (n-addresses . 1) + (include-files "bbdb-print-brief" "bbdb-cols")) +</pre></td></tr></table></P><P> + +<DT><CODE>bbdb-print-full-alist</CODE> +<DD><A NAME="IDX185"></A> +Extra options for the <CODE>bbdb-print</CODE> non-brief format. The value(s) of +this variable can either supplement or override the values in +<CODE>bbdb-print-alist</CODE>. The format and possible values of this variable are +as in <CODE>bbdb-print-alist</CODE>, described above. +<P> + +The default value is +<TABLE><tr><td> </td><td class=example><pre>((columns . 3) + (separator . 2) + (include-files "bbdb-print" "bbdb-cols")) +</pre></td></tr></table></P><P> + +<DT><CODE>bbdb-print-prolog</CODE> +<DD><A NAME="IDX186"></A> +TeX statements to include at the beginning of the <CODE>bbdb-print</CODE> output +file. +<P> + +<DT><CODE>bbdb-print-epilog</CODE> +<DD><A NAME="IDX187"></A> +TeX statements to include at the end of the <CODE>bbdb-print</CODE> output file. +<P> + +</DL> +<P> + +<A NAME="bbdb-snarf"></A> +<HR SIZE="6"> +<A NAME="SEC61"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC60"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC62"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.8.3 <CODE>bbdb-snarf</CODE> </H3> +<!--docid::SEC61::--> +<P> + +<CODE>bbdb-snarf</CODE> provides the ability to generate <B>BBDB</B> records from raw +text. If invoked as <CODE>bbdb-snarf</CODE>, it attempts to generate the record +from the information around point (the cursor). If invoked as +<CODE>bbdb-snarf-region</CODE><A NAME="DOCF6" HREF="bbdb_fot.html#FOOT6">(6)</A>, the active region is used to generate the record. +</P><P> + +<B>Restrictions:</B> +</P><P> + +<OL> +<LI> +<CODE>bbdb-snarf</CODE> currently recognizes only US-style phone numbers. +<LI> +<CODE>bbdb-snarf</CODE> works best with things that look like mailing addresses. +</OL> +<P> + +Example of an address that <CODE>bbdb-snarf</CODE> will recognize: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>another test person +1234 Gridley St. +Los Angeles, CA 91342 +555-1212 +test@person.net +http://www.foo.bar/ +other stuff about this person +</pre></td></tr></table></P><P> + +<A NAME="bbdb-srv"></A> +<HR SIZE="6"> +<A NAME="SEC62"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC61"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.8.4 <CODE>bbdb-srv</CODE> </H3> +<!--docid::SEC62::--> +<P> + +<CODE>bbdb-srv</CODE> provides the ability to initiate the display of <B>BBDB</B> +records from outside of Emacs. This allows external programs to cause +the <B>BBDB</B> record for a given person to appear in the running Emacs +when, for example, mail is recieved from that person. One specific +application, described below, is the integration of Netscape and the +<B>BBDB</B>, allowing the display of <B>BBDB</B> records corresponding to Mail +and/or News messages displayed in Netscape. +</P><P> + +<CODE>bbdb-srv</CODE> is composed of two parts - an external Perl script +(<TT>`utils/bbdb-srv.pl'</TT>), and an Emacs Lisp file +(<TT>`lisp/bbdb-srv.el'</TT>). The external portion is used to send +commands to the internal portion. +</P><P> + +<B>NOTE:</B> <CODE>bbdb-srv</CODE> requires <CODE>gnuserv</CODE> and <CODE>itimer</CODE>, +both included with XEmacs. <CODE>gnuserv</CODE> must be started with the +<CODE>gnuserv-start</CODE> command before <CODE>bbdb-srv</CODE> can be used. +</P><P> + +In it's most basic form, mail or news headers are passed to the Perl +script. The Perl script then causes the <B>BBDB</B> record (if any) +corresponding to the passed headers to be displayed in the running +Emacs. While <CODE>bbdb-srv</CODE> will operate with just a <SAMP>`From:'</SAMP> +field, it works better when passed both <SAMP>`From:'</SAMP> and <SAMP>`To:'</SAMP> +headers. When <CODE>bbdb-srv</CODE> notices that the logged-in user is named +in the <SAMP>`From:'</SAMP> header, it will attempt to display the record (if +any) for the person named in the <SAMP>`To:'</SAMP> header. If no <SAMP>`To:'</SAMP> +header is passed, it falls back on the record (if any) for the logged-in +user (the person named in the <SAMP>`From:'</SAMP> header). +</P><P> + +An example manual invocation of <CODE>bbdb-srv</CODE> is as follows: +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>% cat |bbdb-srv.pl +From: Jamie Zawinski <jwz@netscape.com> +To: Matt Simmons <simmonmt@acm.org> +<KBD>CTRL-D</KBD> +</pre></td></tr></table></P><P> + +If the invoking user is Jamie Zawinski, the record for Matt Simmons (if +any) will be displayed. If the invoking user is not Jamie Zawinski, the +record for Jamie Zawinski (if any) will be displayed. +</P><P> + +As mentioned above <CODE>bbdb-srv</CODE> can be used with Netscape Mail and +Netscape News. Please note that it can only be used with the UNIX +versions 3.0b2 and greater of these applications. To allow Netscape to +use <CODE>bbdb-srv</CODE>, set the <SAMP>`NS_MSG_DISPLAY_HOOK'</SAMP> variable to +<CODE>bbdb-srv.pl</CODE><A NAME="DOCF7" HREF="bbdb_fot.html#FOOT7">(7)</A> as follows: +</P><P> + +Bourne Shell (<TT>`/bin/sh'</TT>) and variants: +<TABLE><tr><td> </td><td class=example><pre># NS_MSG_DISPLAY_HOOK bbdb-srv.pl +# export NS_MSG_DISPLAY_HOOK +</pre></td></tr></table></P><P> + +C-Shell (<TT>`/bin/csh'</TT>) and variants: +<TABLE><tr><td> </td><td class=example><pre>% setenv NS_MSG_DISPLAY_HOOK bbdb-srv.pl +</pre></td></tr></table></P><P> + +The following variables can be used to customize the behavior of +<CODE>bbdb-srv</CODE>: +</P><P> + +<DL COMPACT> +<A NAME="IDX188"></A> +<DT><CODE>bbdb/srv-auto-create-p</CODE> +<DD>This variable is similar to <CODE>bbdb/news-auto-create-p</CODE> and +<CODE>bbdb/mail-auto-create-p</CODE>. That is, when headers are passed in to +<CODE>bbdb-srv</CODE>, a new <B>BBDB</B> record can be created if none exists, +depending on the value of this variable. Possible values are: +<DL COMPACT> +<DT><CODE>t</CODE> +<DD>Automatically create new <B>BBDB</B> records if the headers passed in do +not correspond to an already-existing record. +<DT><CODE>nil</CODE> +<DD>Do not automatically create new <B>BBDB</B> records. +<DT><VAR>FUNCTION</VAR> +<DD><VAR>FUNCTION</VAR> is called. If it returns <CODE>t</CODE>, a record will be +created for the person named in the <SAMP>`From:'</SAMP> header. If it returns +<CODE>nil</CODE>, no record will be created. +<P> + +A suggested function for use is +<CODE>bbdb/srv-auto-create-mail-news-dispatcher</CODE>. This function will +attempt to determine the source of the passed headers - whether they +were part of a mail message or of a news article. The action (if any) +dictated by the value of either <CODE>bbdb/mail-auto-create-p</CODE> or +<CODE>bbdb/news-auto-create-p</CODE>, based on the determined source of the +passed headers. +</P><P> + +</DL> +<P> + +<A NAME="IDX189"></A> +<DT><CODE>bbdb/srv/display-delay</CODE> +<DD><CODE>bbdb-srv</CODE> pauses between displaying the records corresponding to +each passed set of headers. This variable controls the length of time +(in seconds) of the delay between the display of different records. +Note when setting this variable that only one set of headers can be +queued at a time. If three sets of headers are passed to +<CODE>bbdb-srv</CODE> in less than the delay time, only the first and last +will be displayed. +</DL> +<P> + +<A NAME="Internals"></A> +<HR SIZE="6"> +<A NAME="SEC63"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC62"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC64"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC58"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC71"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.9 Internals </H2> +<!--docid::SEC63::--> +<P> + +<B>This section is currently a dumping ground for things that should +eventually go here, but were found elsewhere in the file.</B> +</P><P> + +<B>INFORMATION IN THIS SECTION IS FOR INFORMATIONAL PURPOSES ONLY. IT +SHOULD NOT BE TAKEN AS DOCUMENTATION OF AN EXTERNAL API. EVERYTHING +LISTED BELOW IS SUBJECT TO CHANGE WITHOUT NOTICE</B> +</P><P> + +The first time you use +one of the <B>BBDB</B> commands, this file is read into an emacs buffer, and +remains there. As you make changes to the database, this buffer is +changed as well, ensuring that if it is auto-saved, it will be saved in +its most current state. </P><P> + +<HR SIZE="6"> +<A NAME="SEC64"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC65"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.9.1 BBDB data file format </H3> +<!--docid::SEC64::--> +<P> + +The data file is arranged in a hierarchical fashion. At the top level +are vectors, with one vector per database record. It is <B>very</B> +important that each vector be on its own line, as the BBDB builds and +stores markers based on this layout. The markers are then used to +increase the speed of database modifications (more on this later). The +record vectors contain the individual fields of the record. These +fields can be of any type, but are currently integers, strings, lists of +strings, alists, vectors, or lists of vectors. In the case of fields +that contain one or more vectors, they can be further broken down in +terms of the fields of their component vectors. +</P><P> + +In an effort to provide a more concrete example to illustrate the above, +and to provide a reference for database accessor and modifier functions, +we describe the database format below. This description starts with the +fields of the individual record vectors, and drills down through the +vectors used by some of the fields. +</P><P> + +<HR SIZE="6"> +<A NAME="SEC65"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC64"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC66"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.1 Record Vectors </H4> +<!--docid::SEC65::--> +<P> + +<TABLE> +<TR><TD><B>Name</B></TD> +</TD><TD> <B>Type</B> +</TD><TD> <B>Accessor and Modifier</B> +</TD><TD> <B>Description</B> + +</TR> +<TR><TD>First name</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-record-firstname</CODE><BR> + <CODE>bbdb-record-set-firstname</CODE> +</TD><TD> Entity's first name + +</TR> +<TR><TD>Last name</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-record-lastname</CODE><BR> + <CODE>bbdb-record-set-lastname</CODE> +</TD><TD> Entity's last name + +</TR> +<TR><TD>AKAs</TD> +</TD><TD> List of Strings +</TD><TD> <CODE>bbdb-record-aka</CODE><BR> + <CODE>bbdb-record-set-aka</CODE> +</TD><TD> Alternate names for entity + +</TR> +<TR><TD>Company</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-record-company</CODE><BR> + <CODE>bbdb-record-set-company</CODE> +</TD><TD> Company with which entity is associated + +</TR> +<TR><TD>Phones</TD> +</TD><TD> List of Vectors +</TD><TD> <CODE>bbdb-record-phones</CODE><BR> + <CODE>bbdb-record-set-phones</CODE> +</TD><TD> List of phone number vectors + +</TR> +<TR><TD>Addresses</TD> +</TD><TD> List of Vectors +</TD><TD> <CODE>bbdb-record-addresses</CODE><BR> + <CODE>bbdb-record-set-addresses</CODE> +</TD><TD> List of address vectors + +</TR> +<TR><TD>Net address</TD> +</TD><TD> List of Strings +</TD><TD> <CODE>bbdb-record-net</CODE><BR> + <CODE>bbdb-record-set-net</CODE> +</TD><TD> List of network addresses + +</TR> +<TR><TD>Notes</TD> +</TD><TD> String or Alist +</TD><TD> <CODE>bbdb-record-raw-notes</CODE><BR> + <CODE>bbdb-record-set-raw-notes</CODE> +</TD><TD> String or Association list of note fields (strings) + +</TR> +<TR><TD>Cache</TD> +</TD><TD> Vector +</TD><TD> <CODE>bbdb-record-cache</CODE><BR> + <CODE>bbdb-record-set-cache</CODE> +</TD><TD> Record cache.<BR> + <I>Internal version only.</I> + +</TR></TABLE> +<P> + +The phone, address and cache vector fields are described below. Please +note that, as indicated in the table above, the cache is present only in +the internal version of the database - it is not written out as part of +the <TT>`.bbdb'</TT> file. +</P><P> + +In addition, the accessor and modifier functions for the notes alist +are described. +</P><P> + +<HR SIZE="6"> +<A NAME="SEC66"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC65"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC67"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.2 Phone Vectors </H4> +<!--docid::SEC66::--> +<P> + +To access the fields in the below table, you must first get the list of +phone vectors using the <CODE>bbdb-record-phones</CODE> function. Note that +if you alter the phones field with the <CODE>bbdb-record-set-phones</CODE> +function, you are altering the entire phones list for the given record. +Use the modifier functions below for modifications to individual phone +vectors. +</P><P> + +<TABLE> +<TR><TD><B>Name</B></TD> +</TD><TD> <B>Type</B> +</TD><TD> <B>Accessor and Modifier</B> +</TD><TD> <B>Description</B> + +</TR> +<TR><TD>Location</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-phone-location</CODE><BR> + <CODE>bbdb-phone-set-location</CODE> +</TD><TD> Phone number identifier + +</TR> +<TR><TD>Area</TD> +</TD><TD> Integer +</TD><TD> <CODE>bbdb-phone-area</CODE><BR> + <CODE>bbdb-phone-set-area</CODE> +</TD><TD> Area code for phone number + +</TR> +<TR><TD>Exchange</TD> +</TD><TD> Integer +</TD><TD> <CODE>bbdb-phone-exchange</CODE><BR> + <CODE>bbdb-phone-set-exchange</CODE> +</TD><TD> Exchange (aka prefix) for phone number + +</TR> +<TR><TD>Suffix</TD> +</TD><TD> Integer +</TD><TD> <CODE>bbdb-phone-suffix</CODE><BR> + <CODE>bbdb-phone-set-suffix</CODE> +</TD><TD> Suffix for phone number + +</TR> +<TR><TD>Extension</TD> +</TD><TD> Integer +</TD><TD> <CODE>bbdb-phone-extension</CODE><BR> + <CODE>bbdb-phone-set-extension</CODE> +</TD><TD> Phone number extension (<SAMP>`0'</SAMP> if none) + +</TR></TABLE> +<P> + +<HR SIZE="6"> +<A NAME="SEC67"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC66"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC68"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.3 Address Vectors </H4> +<!--docid::SEC67::--> +<P> + +To access the fields in the below table, you must first get the list of +address vectors using the <CODE>bbdb-record-addresses</CODE> function. Note +that if you alter the addresses field with the +<CODE>bbdb-record-set-addresses</CODE> function, you are altering the entire +addresses list for the given record. Use the modifier functions below +for modifications to individual address vectors. +</P><P> + +<TABLE> +<TR><TD><B>Name</B></TD> +</TD><TD> <B>Type</B> +</TD><TD> <B>Accessor and Modifier</B> +</TD><TD> <B>Description</B> + +</TR> +<TR><TD>Location</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-address-location</CODE><BR> + <CODE>bbdb-address-set-location</CODE> +</TD><TD> Address identifier + +</TR> +<TR><TD>Streets</TD> +</TD><TD> List +</TD><TD> <CODE>bbdb-address-streets</CODE><BR> + <CODE>bbdb-address-set-streets</CODE> +</TD><TD> List of street address lines. <CODE>nil</CODE> if none. + +</TR> +<TR><TD>City</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-address-city</CODE><BR> + <CODE>bbdb-address-set-city</CODE> +</TD><TD> City name + +</TR> +<TR><TD>State</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-address-state</CODE><BR> + <CODE>bbdb-address-set-state</CODE> +</TD><TD> State abbreviation + +</TR> +<TR><TD>Zip</TD> +</TD><TD> Integer (american) + List (non-american) +</TD><TD> <CODE>bbdb-address-zip</CODE><BR> + <CODE>bbdb-address-set-zip</CODE> +</TD><TD> Zip code + +</TR> +<TR><TD>Country</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-address-country</CODE><BR> + <CODE>bbdb-address-set-country</CODE> +</TD><TD> Country + +</TR></TABLE> +<P> + +<HR SIZE="6"> +<A NAME="SEC68"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC67"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC69"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.4 Cache Vector </H4> +<!--docid::SEC68::--> +<P> + +This vector is present only in the internal database representation. It +is not written out to the database file because it contains information +aggregated from the rest of the record that is reconstructed when the +database is read. To write the cache information to the database file +would increase the risk of database inconsistency, and would violate the +principles of normalization. +</P><P> + +To access the cache fields using the functions listed below that begin +with <CODE>bbdb-cache-</CODE>, you must first get the cache vector using the +<CODE>bbdb-record-cache</CODE> function. The functions that begin with +<CODE>bbdb-record-</CODE> get the cache vector internally. Note that if you +alter the cache field in the high-level record with the +<CODE>bbdb-record-set-cache</CODE> function, you are altering the entire cache +vector for the given record. Use the modifier functions below for +modifications to individual cache fields. +</P><P> + +<TABLE> +<TR><TD><B>Name</B></TD> +</TD><TD> <B>Type</B> +</TD><TD> <B>Accessor and Modifier</B> +</TD><TD> <B>Description</B> + +</TR> +<TR><TD>Name Cache</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-cache-namecache</CODE><BR> + <CODE>bbdb-cache-set-namecache</CODE> +</TD><TD> Preconcatenated name of entity + +</TR> +<TR><TD>Sort Key</TD> +</TD><TD> String +</TD><TD> <CODE>bbdb-cache-sortkey</CODE><BR> + <CODE>bbdb-cache-set-sortkey</CODE> +</TD><TD> Preconcatenated sort key for record + +</TR> +<TR><TD>Marker</TD> +</TD><TD> Marker +</TD><TD> <CODE>bbdb-cache-marker</CODE><BR> + <CODE>bbdb-record-marker</CODE><BR> + <CODE>bbdb-cache-set-marker</CODE><BR> + <CODE>bbdb-record-set-marker</CODE><BR> +</TD><TD> Marker in <TT>`.bbdb'</TT> for start of record + +</TR> +<TR><TD>Deleted</TD> +</TD><TD> Boolean +</TD><TD> <CODE>bbdb-cache-deleted-p</CODE><BR> + <CODE>bbdb-record-deleted-p</CODE><BR> + <CODE>bbdb-cache-set-deleted-p</CODE><BR> + <CODE>bbdb-record-set-deleted-p</CODE> +</TD><TD> Set to <CODE>t</CODE> if record has been deleted, <CODE>nil</CODE> if not + +</TR></TABLE> +<P> + +The functions listed above will return <CODE>nil</CODE> if their respective +cache fields are not set. The functions listed below will return the +value of their cache fields if set, but will also build (and set) the +correct field values if the fields are unset: +</P><P> + +<DL COMPACT> +<DT><CODE>bbdb-record-name</CODE> +<DD>Return the name in the Name Cache field of the cache (if set). If +the name has not been built yet (if the field is <CODE>nil</CODE>), the name is +built, stored in the Name Cache field, and returned. +<P> + +<DT><CODE>bbdb-record-sortkey</CODE> +<DD>Return the name it the Sort Key field of the cache (if set). If the +Sort Key field has not yet been set (if the field is <CODE>nil</CODE>), the +Sort Key is built, stored in the Sort Key field, and returned. +<P> + +</DL> +<P> + +<HR SIZE="6"> +<A NAME="SEC69"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC68"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC70"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.5 Notes String or Alist </H4> +<!--docid::SEC69::--> +<P> + +If there is only a single note for a given record, the notes field for +that record will be a string. If there is more than one note, the notes +field will be an association list (alist) with elements of the form +</P><P> + +<center> + ( <VAR>NAME</VAR> . <VAR>VALUE</VAR> ) +</center> +</P><P> + +where <VAR>NAME</VAR> is the symbol for the name of the note, and +<VAR>VALUE</VAR> is the value of the note. +</P><P> + +<HR SIZE="6"> +<A NAME="SEC70"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC69"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC71"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H4> 1.9.1.6 Example BBDB record </H4> +<!--docid::SEC70::--> +<P> + +<A NAME="Mailing Lists"></A> +<HR SIZE="6"> +<A NAME="SEC71"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC70"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC63"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.10 Mailing Lists </H2> +<!--docid::SEC71::--> +<P> + +There are three mailing lists for the <B>BBDB</B>. +<CODE>bbdb-info@lists.sourceforge.net</CODE> gets moderate traffic, and is +intended for the discussion and distribution of development versions of +the <B>BBDB</B>. Users of development versions of the <B>BBDB</B> should be +subscribed to this list. It is also to this list that bugs should be +reported. See section <A HREF="bbdb_1.html#SEC79">1.13.1 Known Bugs</A>. for instructions on submitting bug reports. +</P><P> + +The second mailing list <CODE>bbdb-announce@lists.sourceforge.net</CODE> has +very low volume. Any user of the <B>BBDB</B> should consider subscribing to +this list, as new releases and security issues will be posted here. +</P><P> + +A third mailing list, <CODE>bbdb-cvs@lists.sourceforge.net</CODE>, is +intended for developers to follow the changes made to the <B>BBDB</B> +development version. Developers of the <B>BBDB</B> should consider to +subscribe to this list. +</P><P> + +<A NAME="Changes"></A> +<HR SIZE="6"> +<A NAME="SEC72"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC71"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC73"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC71"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.11 Changes in this Version </H2> +<!--docid::SEC72::--> +<P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC73">1.11.1 Major Changes</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Major changes in this version</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC75">1.11.2 Other Changes</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Not-so-major changes</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Major Changes"></A> +<HR SIZE="6"> +<A NAME="SEC73"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC75"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.11.1 Major Changes </H3> +<!--docid::SEC73::--> +<P> + +<A NAME="SEC74"></A> +<H4> Database File Version Change </H4> +<!--docid::SEC74::--> +<P> + +(the following version-migration text will move in a future version. It is in +this section currently because new users will likely not experience it) +</P><P> + +There has been a version change in the <B>BBDB</B> database file. The new +version supports non-US zip codes, and an additional "Country" field +in addresses. +</P><P> + +An automatic version-migration mechanism has been implemented that allows +older version <TT>`.bbdb'</TT> files to either be migrated to the new version, or +used as-is without migrating. When the <B>BBDB</B> detects a database file with +an old version, it will display the features that have been introduced <B>in +the database file</B> from the time of the older version's implementation. It +will offer the choice of migration or use of the <B>BBDB</B> with the +older-version file. +</P><P> + +If migration is chosen, the database file will be automatically changed to the +new format. If migration is declined, the file will kept in the older format +in the <CODE>.bbdb</CODE> buffer, but will be stored internally in the new format. +When changes need to be made to the <CODE>.bbdb</CODE> buffer, changed records will +be reverse-migrated from their internal version to that of the disk file. +</P><P> + +<A NAME="Other Changes"></A> +<HR SIZE="6"> +<A NAME="SEC75"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC73"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.11.2 Other Changes </H3> +<!--docid::SEC75::--> +<P> + +<A NAME="SEC76"></A> +<H4> TeX Output </H4> +<!--docid::SEC76::--> +<P> + +By default, ec fonts are used for TeX output instead of cm fonts. With +the <CODE>ps-fonts</CODE> option set in <CODE>bbdb-print-alist</CODE>, TimesNewRoman +and Courier fonts are used. +</P><P> + +<UL> +</UL> +<P> + +<A NAME="The Latest Version"></A> +<HR SIZE="6"> +<A NAME="SEC77"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC75"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC72"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.12 The Latest Version </H2> +<!--docid::SEC77::--> +<P> + +Released versions of the <B>BBDB</B> can be found at the +following site: +</P><P> + +<UL> +<LI> +WWW: <CODE>http://bbdb.sourceforge.net</CODE> +<LI> +FTP: <CODE>ftp://ftp.sourceforge.net/pub/bbdb</CODE> +</UL> +<P> + +Development versions of the <B>BBDB</B> can be obtained in the +following ways: +</P><P> + +<UL> +<LI> +WWW: <CODE>http://bbdb.sourceforge.net</CODE> +<LI> +Anonymous CVS: See <CODE>http://bbdb.sourceforge.net</CODE> for instructions. +</UL> +<P> + +Users of development versions of the <B>BBDB</B> should subscribe to the +<CODE>bbdb-info</CODE> mailing list. See section <A HREF="bbdb_1.html#SEC71">1.10 Mailing Lists</A>. +</P><P> + +<A NAME="The Future"></A> +<HR SIZE="6"> +<A NAME="SEC78"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC79"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC77"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.13 The Future </H2> +<!--docid::SEC78::--> +<P> + +The future consists of Bugs and Features. +</P><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC79">1.13.1 Known Bugs</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">Known Bugs, and how to submit new ones</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC80">1.13.2 TODO List</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">The TODO List</TD></TR> +<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="bbdb_1.html#SEC84">1.13.3 End of Life (EOL) Statements</A></TD><TD> </TD><TD ALIGN="left" VALIGN="TOP">EOL (End Of Life) Statements</TD></TR> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Known Bugs"></A> +<HR SIZE="6"> +<A NAME="SEC79"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC80"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.13.1 Known Bugs </H3> +<!--docid::SEC79::--> +<P> + +<OL> +<LI><B><KBD>M-TAB</KBD> conflicts with ispell.</B> Workaround: The binding +installed by the <B>BBDB</B> for address completion/expansion conflicts with +that used by ispell. The suggested workarounds are to rebind the ispell +key (the <B>BBDB</B> binding is not configurable at this time), to manually +invoke ispell via <KBD>M-x</KBD>, or to not use ispell completion functionality +in <B>BBDB</B>-enabled message composition buffers. +<P> + +<LI><B><B>BBDB</B> and abbrev expansion is inconsistent.</B> Workaround: +Currently, <KBD>M-TAB</KBD> must be used to expand/complete against <B>BBDB</B> +names and net addresses, and <KBD>TAB</KBD> must be used to expand abbrevs (the +values in the <CODE>mail-alias</CODE> field). Unification is planned for a +future version. +<P> + +<LI><B>The <CODE>*BBDB*</CODE> buffer does not always come up when the first +article in a Gnus Summary Buffer is selected.</B> Workaround: Pressing +<KBD>g</KBD> to reload the article. This will cause the <CODE>*BBDB*</CODE> buffer +to be displayed. +<P> + +<LI><B>Expansion will fail when the name to be expanded is a subset of +the name for another record.</B> For example, if you have entries for +<SAMP>`John'</SAMP> and <SAMP>`Johnathan'</SAMP>, you will not be able to expand the +name for <SAMP>`John'</SAMP>. Workaround: Use the net address for the subset +name (<SAMP>`John'</SAMP> in this example). +<P> + +</OL> +<P> + +It is commonly known that there are no bugs in the <B>BBDB</B>. Bugs found +in defiance of this rule should be submitted to the <CODE>bbdb-info</CODE> +mailing list. To assist the developers, please include the version +numbers of the various programs used when the bug occurred. An example +report follows. +</P><P> + +<TABLE><tr><td> </td><td class=example><pre>BBDB Version: +Emacs/XEmacs Version: +Mail/News reader (Gnus, VM, etc) used: +Bug Description: +</pre></td></tr></table></P><P> + +<A NAME="TODO List"></A> +<HR SIZE="6"> +<A NAME="SEC80"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC79"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC84"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.13.2 TODO List </H3> +<!--docid::SEC80::--> +<P> + +<A NAME="SEC81"></A> +<H4> The Near Future </H4> +<!--docid::SEC81::--> +<P> + +<UL> +<LI> +Add bbdb/<I>MUA</I>-delete-sender-record +<P> + +<LI> +Configurable completion. Should allow user to specify "complete on +names first, then nets", etc. +<P> + +<LI> +More variables for upgrading. Specifically a variable that lets users +specify extra fields for upgrading (an alist <SAMP>`(a . b)'</SAMP> that says +field <SAMP>`a'</SAMP> should be upgraded the same way as field <SAMP>`b'</SAMP>. +<P> + +<LI> +Change all functions that switch on MUAs to use compose-mail (ex: +<CODE>bbdb-send-mail-internal</CODE>). +<P> + +<LI> +Soren Dayton's method for generically extending the <B>BBDB</B> with +special-purpose fields +<P> + +<LI> +Sorting records on alternate keys. <CODE>bbdb-sort-by</CODE> from Boris +Goldowsky. +<P> + +<LI> +Sorting individual types of fields - Sam Steingold's method. +<P> + +<LI> +Button 3 menus (Mark Moll and Soren Dayton) +<P> + +<LI> +<B>BBDB</B>-controlled mail splitting in Gnus. Add hook for Soren to make +splitting better. Routine from Brian Edmonds. +<P> + +<LI> +Conditionalized erasure of properties when text is pasted into the <B>BBDB</B>. +<P> + +<LI> +Should notice when there are <SAMP>`Reply-To:'</SAMP> addresses.<P> + +<LI> +Should have a command for merging together two divergent copies of +a <TT>`.bbdb'</TT> file (in case you read mail on one machine and news on +another, for instance.)<P> + +<LI> +The <SAMP>`*BBDB*'</SAMP> buffer should be resized to exactly fit what it's +displaying, even when not in "electric" mode.<P> + +<LI> +It should be possible to do completion on last names as well as first +names.<P> + +<LI> +The BBDB buffer is left at the top of the stack when GNUS is exited +because GNUS runs its exit-hooks too early. This should be fixed.<P> + +<LI> +String area codes (German area codes can begin with zeroes) patch from +<CODE>Michael Sperber <sperber@informatik.uni-tuebingen.de></CODE> +<P> + +<LI> +Internationalization of addresses. Country code to control formats for +printing, etc. Country->Format mapping. +<P> + +<LI> +Default country variable, similar to <CODE>bbdb-default-area-code</CODE>. +<P> + +<LI> +Make format self-describing in comment +<P> + +<LI> +ISO-8859-x characters in records for printing. +<P> + +<LI> +Prefix for <KBD>W</KBD> (<CODE>bbdb-www</CODE>) command to allow selection of +different addresses. +<P> + +<LI> +Generalized buttons (via extents) for fields. Example: <SAMP>`(a . b)'</SAMP> +means create button that calls <SAMP>`b'</SAMP> for each entry in the <SAMP>`a'</SAMP> +field. +<P> + +<LI> +Remove support for GNUS. Start with lisp Makefile (remove nntp and gnus +loads). +<P> + +<LI> +More flexible auto-addition. Conditionalizing of addition (conditions +or supplied function). Prompt if multiple records that meet criteria exist. +<P> + +<LI> +Different output formats. See Toby Speight's <CODE><s8iurdodvm.fsf@plato.ansa.co.uk></CODE> +and Bin Mu's <CODE><199801221605.KAA23663@DerivaTech.Com></CODE>. +<P> + +<LI> +Generalized area-code-split program that could split, for example, based +on input copied (or straight fetch of page) from the Bellcore NANP page. +<P> + +<LI> +Print multivalue (comma-separated) fields with one value per line +<P> + +<LI> +Easier BBDB extension. See <CODE><xcdyb30f3hb.fsf@ra.cs.uchicago.edu></CODE> +from Soren Dayton. +<P> + +<LI> +Take birthdays from the <B>BBDB</B>, add them to calendar. From Boris +Goldowsky. +<P> + +<LI> +Make mail aliases file for other mailers. From Boris Goldowsky. +<P> + +<LI> +Various patches from Boris Goldowsky in <TT>`bbdb-ext'</TT>. +<P> + +<LI> +Various other patches: +<UL> +<LI> +<CODE>bbdb-filters-0.2</CODE> +<LI> +<CODE>bbdb-frame.el</CODE> +<LI> +<CODE>bbdb-letter-1.0</CODE> +<LI> +<CODE>bbdb-plz</CODE> +<LI> +<CODE>bbdb-query</CODE> +<LI> +<CODE>country</CODE> +<LI> +<CODE>country-info</CODE> +</UL> +Note that these files have not been investigated. They may or +may not be incorporated. +<P> + +<LI> +Ability to remove all properties from copied strings. +<P> + +</UL> +<P> + +<A NAME="SEC82"></A> +<H4> Not-So-Near Future </H4> +<!--docid::SEC82::--> +<P> + +<UL> +<LI> +Fix Gnus scoring so it rebuilds when gnus-score disappears +<P> + +<LI> +Multiline note fields +<P> + +<LI> +Change key to be some kind of unique number +<P> + +<LI> +There should be better support for non-American addresses and phone +numbers. This might be Near Future if somebody volunteers to send me patches. +<P> + +<LI> +Should reimplement "electric" mode to not be so broken.<P> + +<LI> +The <KBD>*C-o</KBD> keystroke should add a field to all displayed records. +Perhaps <KBD>*;</KBD> should append some text to an arbitrary field of all +displayed records. <P> + +<LI> +Multiple <TT>`.bbdb'</TT> files with precedence relationships. See Wes +Hardaker's <BR><CODE><sdu3awz75a.fsf@oakdale.ucdavis.edu></CODE> +<P> + +<LI> +Automatically grab information about a person from their sig. See +Graham Clark's <CODE>info-bbdb</CODE> post +<CODE><6282.199706161624@havra.dcs.ed.ac.uk></CODE> and Adrian Aichner's +<CODE>info-bbdb</CODE> post +<CODE><rxsiuzebpgp.fsf@midnight.ecf.teradyne.com></CODE>. Would like to have +<CODE>bbdb-snarf</CODE> attack the sig then compare the snarfed data with the +header data. +<P> + +</UL> +<P> + +<A NAME="SEC83"></A> +<H4> Thoughts </H4> +<!--docid::SEC83::--> +<P> + +<UL> +<LI> +Are there enough hooks? +<P> + +<LI> +The interfaces should share more code. <P> + +<LI> +The <CODE>bbdb-create-internal</CODE> function should be more forgiving.<P> + +<LI> +More <KBD>*</KBD> commands in general, including <KBD>*d</KBD>. +</UL> +<P> + +<A NAME="EOL Statements"></A> +<HR SIZE="6"> +<A NAME="SEC84"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC80"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC85"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC78"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H3> 1.13.3 End of Life (EOL) Statements </H3> +<!--docid::SEC84::--> +<P> + +The items in the following list describe items for which support will be +removed in coming versions of the <B>BBDB</B>. The items listed are +guaranteed to be supported and present only until the EOL date. They +may be removed without warning at any time thereafter. +</P><P> + +<OL> +<LI><CODE>advertized-bbdb-delete-current-field-or-record</CODE><BR> +Support for this function will be removed for version 2.2. It is +recommended that all code depending on this variable be switched to use +<CODE>bbdb-delete-current-field-or-record</CODE>. The two functions have the +same calling conventions and effects. This EOL statement was added for +version 2.1. +<P> + +<LI>Support for the GNUS (not Gnus) newsreader<BR> +The GNUS-specific parts of the <B>BBDB</B> will be actively removed for the +2.2 release. No further maintenance and/or bugfixes are planned for +GNUS code at this time. This EOL statement was added for version 2.1. +</OL> +<P> + +<A NAME="Thanks"></A> +<HR SIZE="6"> +<A NAME="SEC85"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC84"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_2.html#SEC89"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H2> 1.14 Thanks </H2> +<!--docid::SEC85::--> +<P> + +Thanks to everyone on the info-bbdb mailing list for many useful +suggestions. This hack would be far less insidious without their input ! +</P><P> + +<A NAME="SEC86"></A> +<H3> Thanks list for versions after 2.00.06. </H3> +<!--docid::SEC86::--> +<P> + +Thanks to Alex Schroeder, Ronan Waide, Thomas DeWeese. +</P><P> + +Last, but not least, thanks to Jamie Zawinski for writing <B>BBDB</B> in the +first place. +</P><P> + +<A NAME="SEC87"></A> +<H3> Thanks list for versions after 1.51 prior to and including 2.00.06. </H3> +<!--docid::SEC87::--> +<P> + +Thanks to Adrian Aichner, Kees de Bruin, David Carlton, Soren Dayton, +Brian Edmonds, Boris Goldowsky, Seth Golub, John Heidemann, Christopher +Kline, Carsten Leonhardt, Hrvoje Niksic, Jens-Ulrik Hoger Petersen, +Colin Rafferty, Matt Simmons, Sam Steingold, Marco Walther, Christoph +Wedler. +</P><P> + +<A NAME="SEC88"></A> +<H3> Thanks list for versions prior to and including 1.51. </H3> +<!--docid::SEC88::--> +<P> + +And special thanks to Sebastian Kremer, Joe Wells, Todd Kaufmann, Andy +Norman, Ivan Vazquez, Stewart Clamen, Roland McGrath, Dave Brennan, +Kimball Collins, Dirk Grunwald, Philippe Queinnec, Boris Putanec, Dave +Disser, Francois Felix Ingrand, Sean Owens, Guido Bosch, Lance Brown, +Tom Emerson, George Hartzell, Luis Miguel Silveira, Kimmo Suominen, +Derek Upham, David Zuhn, Rod Whitby, Richard Mlynarik. +</P><P> + +<A NAME="_"></A> +<HR SIZE="6"> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_2.html b/html/bbdb_2.html new file mode 100644 index 0000000..e547532 --- /dev/null +++ b/html/bbdb_2.html @@ -0,0 +1,75 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: _</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: _"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: _"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC89"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_1.html#SEC85"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1> _ </H1> +<!--docid::SEC89::--> +<TABLE><tr><td> </td><td class=example><pre>in.sid.i.ous aj \in-'sid-e-*s\ + [L insidiosus, fr. insidiae ambush, fr. insidere to sit in, sit on, + fr. in- + sedere to sit -- more at SIT] + 1 a : awaiting a chance to entrap TREACHEROUS + b : harmful but enticing SEDUCTIVE + 2 a : having a gradual and cumulative effect SUBTLE + b of a disease + : developing so gradually as to be well established before + becoming apparent + in.sid.i.ous.ly av + in.sid.i.ous.ness n +</pre></td></tr></table><P> + +<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> +</TABLE></BLOCKQUOTE> +<P> + +<A NAME="Concept Index"></A> +<HR SIZE="6"> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_3.html b/html/bbdb_3.html new file mode 100644 index 0000000..7cb62b8 --- /dev/null +++ b/html/bbdb_3.html @@ -0,0 +1,253 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Concept Index</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Concept Index"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Concept Index"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC90"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_2.html#SEC89"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_4.html#SEC91"> > </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_4.html#SEC91"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1> Concept Index </H1> +<!--docid::SEC90::--> +<table><tr><th valign=top>Jump to: </th><td><A HREF="bbdb_3.html#cp_%" style="text-decoration:none"><b>%</b></A> + +<A HREF="bbdb_3.html#cp_*" style="text-decoration:none"><b>*</b></A> + +<BR> +<A HREF="bbdb_3.html#cp_A" style="text-decoration:none"><b>A</b></A> + +<A HREF="bbdb_3.html#cp_B" style="text-decoration:none"><b>B</b></A> + +<A HREF="bbdb_3.html#cp_C" style="text-decoration:none"><b>C</b></A> + +<A HREF="bbdb_3.html#cp_D" style="text-decoration:none"><b>D</b></A> + +<A HREF="bbdb_3.html#cp_E" style="text-decoration:none"><b>E</b></A> + +<A HREF="bbdb_3.html#cp_F" style="text-decoration:none"><b>F</b></A> + +<A HREF="bbdb_3.html#cp_G" style="text-decoration:none"><b>G</b></A> + +<A HREF="bbdb_3.html#cp_I" style="text-decoration:none"><b>I</b></A> + +<A HREF="bbdb_3.html#cp_M" style="text-decoration:none"><b>M</b></A> + +<A HREF="bbdb_3.html#cp_N" style="text-decoration:none"><b>N</b></A> + +<A HREF="bbdb_3.html#cp_O" style="text-decoration:none"><b>O</b></A> + +<A HREF="bbdb_3.html#cp_P" style="text-decoration:none"><b>P</b></A> + +<A HREF="bbdb_3.html#cp_R" style="text-decoration:none"><b>R</b></A> + +<A HREF="bbdb_3.html#cp_S" style="text-decoration:none"><b>S</b></A> + +<A HREF="bbdb_3.html#cp_T" style="text-decoration:none"><b>T</b></A> + +<A HREF="bbdb_3.html#cp_U" style="text-decoration:none"><b>U</b></A> + +<A HREF="bbdb_3.html#cp_X" style="text-decoration:none"><b>X</b></A> + +</td></tr></table><br><P></P> +<TABLE border=0> +<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_%"></A>%</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX115">%F</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX116">%UB</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_*"></A>*</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX25">*BBDB* buffer</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_A"></A>A</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX34">Adding new fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX23">Adding new records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC32">1.2.4 Manual record addition</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX98">Address completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX144">Address completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX132">AKA</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX131">Alternate names</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX89">Annotating the sender of the current message</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC36">1.4 Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX136">Auto-save files</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX138">Automatic display of the corresponding record</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX177">Automatically adding text to records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX128">Automatically creating records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX170">Automatically creating records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_B"></A>B</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX24">BBDB Mode</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX67">Browsing the Web page for the current record</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX1">Builtin field types</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_C"></A>C</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX28">Changing fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX71">Changing windows</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX141">Completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX22">Creating new records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC32">1.2.4 Manual record addition</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX72">Creating new records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_D"></A>D</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX31">Deleting fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX57">Dialing phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX74">Displaying changed records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_E"></A>E</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX27">Editing fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX124">Electric display</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX15">Elided display</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX39">European phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX122">European phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_F"></A>F</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX61">Finger interface</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX53">Fixing mistakes</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX99">Format of completed address</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_G"></A>G</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX108">GNUS Subject-buffer</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_I"></A>I</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC13">Initial Configuration</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC13">1.1.4 Initial Configuration</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX35">Inserting new fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC2">Installation</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC2">1.1 Installation</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_M"></A>M</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX97">Mail address completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX143">Mail address completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX104">Mail Aliases</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX103">Mailing lists</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC2">Makefile</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC2">1.1 Installation</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX109">mark-char</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX54">Merging records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_N"></A>N</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX96">Name completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX142">Name completion</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC4">Normal User Installation</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX38">North American phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX121">North American phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_O"></A>O</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX16">One-line display</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_P"></A>P</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX37">Phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX119">Phone numbers</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX6">Printing records in the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX69">Printing records in the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">Printing records in the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_R"></A>R</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX32">Removing fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX41">Reordering fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_S"></A>S</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX51">Saving your changes</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX8">Searching the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX76">Searching the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX78">Searching the database</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX48">Sending mail</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX102">Sending mail</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX84">Showing the sender of the current message</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC36">1.4 Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX56">Sound support</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX2">Special Field Names</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC59">Storing FTP sites in the BBDB</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC59">1.8.1 <CODE>bbdb-ftp</CODE></A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_T"></A>T</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX166">Timestamping records</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX42">Transposing fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_U"></A>U</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX14">User-defined fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX36">User-defined fields</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="cp_X"></A>X</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC10">XEmacs Package Installation</A></TD><TD valign=top><A HREF="bbdb_1.html#SEC10">1.1.3 XEmacs Package Installation</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +</TABLE><P></P><table><tr><th valign=top>Jump to: </th><td><A HREF="bbdb_3.html#cp_%" style="text-decoration:none"><b>%</b></A> + +<A HREF="bbdb_3.html#cp_*" style="text-decoration:none"><b>*</b></A> + +<BR> +<A HREF="bbdb_3.html#cp_A" style="text-decoration:none"><b>A</b></A> + +<A HREF="bbdb_3.html#cp_B" style="text-decoration:none"><b>B</b></A> + +<A HREF="bbdb_3.html#cp_C" style="text-decoration:none"><b>C</b></A> + +<A HREF="bbdb_3.html#cp_D" style="text-decoration:none"><b>D</b></A> + +<A HREF="bbdb_3.html#cp_E" style="text-decoration:none"><b>E</b></A> + +<A HREF="bbdb_3.html#cp_F" style="text-decoration:none"><b>F</b></A> + +<A HREF="bbdb_3.html#cp_G" style="text-decoration:none"><b>G</b></A> + +<A HREF="bbdb_3.html#cp_I" style="text-decoration:none"><b>I</b></A> + +<A HREF="bbdb_3.html#cp_M" style="text-decoration:none"><b>M</b></A> + +<A HREF="bbdb_3.html#cp_N" style="text-decoration:none"><b>N</b></A> + +<A HREF="bbdb_3.html#cp_O" style="text-decoration:none"><b>O</b></A> + +<A HREF="bbdb_3.html#cp_P" style="text-decoration:none"><b>P</b></A> + +<A HREF="bbdb_3.html#cp_R" style="text-decoration:none"><b>R</b></A> + +<A HREF="bbdb_3.html#cp_S" style="text-decoration:none"><b>S</b></A> + +<A HREF="bbdb_3.html#cp_T" style="text-decoration:none"><b>T</b></A> + +<A HREF="bbdb_3.html#cp_U" style="text-decoration:none"><b>U</b></A> + +<A HREF="bbdb_3.html#cp_X" style="text-decoration:none"><b>X</b></A> + +</td></tr></table><br><P> + +<A NAME="Variable Index"></A> +<HR SIZE="6"> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[ << ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_4.html#SEC91"> >> </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_4.html b/html/bbdb_4.html new file mode 100644 index 0000000..ac9a1b1 --- /dev/null +++ b/html/bbdb_4.html @@ -0,0 +1,150 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Variable Index</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Variable Index"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Variable Index"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC91"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90"> < </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ > ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top"> Up </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1> Variable Index </H1> +<!--docid::SEC91::--> +<table><tr><th valign=top>Jump to: </th><td><A HREF="bbdb_4.html#vr_B" style="text-decoration:none"><b>B</b></A> + +<A HREF="bbdb_4.html#vr_G" style="text-decoration:none"><b>G</b></A> + +<A HREF="bbdb_4.html#vr_V" style="text-decoration:none"><b>V</b></A> + +</td></tr></table><br><P></P> +<TABLE border=0> +<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="vr_B"></A>B</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX158"><CODE>bbdb-after-read-db-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX146"><CODE>bbdb-always-add-addresses</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX176"><CODE>bbdb-auto-notes-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX178"><CODE>bbdb-auto-notes-ignore</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX179"><CODE>bbdb-auto-notes-ignore-all</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX134"><CODE>bbdb-auto-revert-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX162"><CODE>bbdb-canonicalize-net-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX148"><CODE>bbdb-canonicalize-redundant-nets-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX125"><CODE>bbdb-case-fold-search</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX155"><CODE>bbdb-change-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX163"><CODE>bbdb-change-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX100"><CODE>bbdb-completion-display-record</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX140"><CODE>bbdb-completion-type</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX154"><CODE>bbdb-create-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX118"><CODE>bbdb-default-area-code</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX58"><CODE>bbdb-dial-local-prefix</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX59"><CODE>bbdb-dial-long-distance-prefix</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX95"><CODE>bbdb-dwim-net-address-allow-redundancy</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX123"><CODE>bbdb-electric-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX150"><CODE>bbdb-elided-display</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX117"><CODE>bbdb-file</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX4"><CODE>bbdb-finger-host-field</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX62"><CODE>bbdb-finger-host-field</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX169"><CODE>bbdb-ignore-most-messages-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX174"><CODE>bbdb-ignore-some-messages-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX66"><CODE>bbdb-info-file</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX160"><CODE>bbdb-initialize-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX153"><CODE>bbdb-list-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX159"><CODE>bbdb-load-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX149"><CODE>bbdb-message-caching-enabled</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX156"><CODE>bbdb-mode-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX147"><CODE>bbdb-new-nets-always-primary</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX120"><CODE>bbdb-north-american-phone-numbers-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX135"><CODE>bbdb-notice-auto-save-file</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX157"><CODE>bbdb-notice-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX175"><CODE>bbdb-notice-hook</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX152"><CODE>bbdb-offer-save</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX151"><CODE>bbdb-pop-up-elided-display</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX139"><CODE>bbdb-pop-up-target-lines</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX183"><CODE>bbdb-print-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX184"><CODE>bbdb-print-brief-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX180"><CODE>bbdb-print-elide</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX187"><CODE>bbdb-print-epilog</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX181"><CODE>bbdb-print-file-name</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX185"><CODE>bbdb-print-full-alist</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX186"><CODE>bbdb-print-prolog</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX182"><CODE>bbdb-print-require</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX129"><CODE>bbdb-quiet-about-name-mismatches</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX133"><CODE>bbdb-readonly-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX49"><CODE>bbdb-send-mail-style</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX130"><CODE>bbdb-use-alternate-names</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX137"><CODE>bbdb-use-pop-up</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX145"><CODE>bbdb-user-mail-names</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX110"><CODE>bbdb/gnus-header-prefer-real-names</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX111"><CODE>bbdb/gnus-header-show-bbdb-names</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX112"><CODE>bbdb/gnus-lines-and-from-length</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX107"><CODE>bbdb/gnus-mark-known-posters</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC42"><CODE>bbdb/gnus-score-default</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX5"><CODE>bbdb/gnus-score-field</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC42"><CODE>bbdb/gnus-score-field</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX126"><CODE>bbdb/mail-auto-create-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX171"><CODE>bbdb/mail-auto-create-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX127"><CODE>bbdb/news-auto-create-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX172"><CODE>bbdb/news-auto-create-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX3"><CODE>bbdb/sc-attribution-field</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX188"><CODE>bbdb/srv-auto-create-p</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC62">1.8.4 <CODE>bbdb-srv</CODE></A></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX189"><CODE>bbdb/srv-display-delay</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC62">1.8.4 <CODE>bbdb-srv</CODE></A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="vr_G"></A>G</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#SEC42"><CODE>gnus-score-find-score-files-function</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +<TR><TH><A NAME="vr_V"></A>V</TH><TD></TD><TD></TD></TR> +<TR><TD></TD><TD valign=top><A HREF="bbdb_1.html#IDX113"><CODE>vm-summary-format</CODE></A></TD><TD valign=top><A HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A></TD></TR> +<TR><TD COLSPAN=3> <HR></TD></TR> +</TABLE><P></P><table><tr><th valign=top>Jump to: </th><td><A HREF="bbdb_4.html#vr_B" style="text-decoration:none"><b>B</b></A> + +<A HREF="bbdb_4.html#vr_G" style="text-decoration:none"><b>G</b></A> + +<A HREF="bbdb_4.html#vr_V" style="text-decoration:none"><b>V</b></A> + +</td></tr></table><br><P> + +<HR SIZE="6"> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90"> << </A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[ >> ]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_abt.html b/html/bbdb_abt.html new file mode 100644 index 0000000..3aeb569 --- /dev/null +++ b/html/bbdb_abt.html @@ -0,0 +1,201 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: About this document</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: About this document"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: About this document"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC_About"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1>About this document</H1> +This document was generated by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> +<P></P> +The buttons in the navigation panels have the following meaning: +<P></P> +<table border = "1"> +<TR> +<TH> Button </TH> +<TH> Name </TH> +<TH> Go to </TH> +<TH> From 1.2.3 go to</TH> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ < ] </TD> +<TD ALIGN="CENTER"> +Back +</TD> +<TD> +previous section in reading order +</TD> +<TD> +1.2.2 +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ > ] </TD> +<TD ALIGN="CENTER"> +Forward +</TD> +<TD> +next section in reading order +</TD> +<TD> +1.2.4 +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ << ] </TD> +<TD ALIGN="CENTER"> +FastBack +</TD> +<TD> +previous or up-and-previous section +</TD> +<TD> +1.1 +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ Up ] </TD> +<TD ALIGN="CENTER"> +Up +</TD> +<TD> +up section +</TD> +<TD> +1.2 +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ >> ] </TD> +<TD ALIGN="CENTER"> +FastForward +</TD> +<TD> +next or up-and-next section +</TD> +<TD> +1.3 +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [Top] </TD> +<TD ALIGN="CENTER"> +Top +</TD> +<TD> +cover (top) of document +</TD> +<TD> + +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [Contents] </TD> +<TD ALIGN="CENTER"> +Contents +</TD> +<TD> +table of contents +</TD> +<TD> + +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [Index] </TD> +<TD ALIGN="CENTER"> +Index +</TD> +<TD> +concept index +</TD> +<TD> + +</TD> +</TR> +<TR> +<TD ALIGN="CENTER"> + [ ? ] </TD> +<TD ALIGN="CENTER"> +About +</TD> +<TD> +this page +</TD> +<TD> + +</TD> +</TR> +</TABLE> +<P></P> +where the <STRONG> Example </STRONG> assumes that the current position +is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of +the following structure: +<UL> +<LI> 1. Section One </LI> +<UL> +<LI>1.1 Subsection One-One</LI> +<UL> +<LI> ... </LI> +</UL> +<LI>1.2 Subsection One-Two</LI> +<UL> +<LI>1.2.1 Subsubsection One-Two-One +</LI><LI>1.2.2 Subsubsection One-Two-Two +</LI><LI>1.2.3 Subsubsection One-Two-Three <STRONG> +<== Current Position </STRONG> +</LI><LI>1.2.4 Subsubsection One-Two-Four +</LI></UL> +<LI>1.3 Subsection One-Three</LI> +<UL> +<LI> ... </LI> +</UL> +<LI>1.4 Subsection One-Four</LI> +</UL> +</UL> + +<HR SIZE=1> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_fot.html b/html/bbdb_fot.html new file mode 100644 index 0000000..e3998b2 --- /dev/null +++ b/html/bbdb_fot.html @@ -0,0 +1,76 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Footnotes</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Footnotes"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Footnotes"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="bbdb_fot.html"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1>Footnotes</H1> +<H3><A NAME="FOOT1" HREF="bbdb_1.html#DOCF1">(1)</A></H3> +<P>"Core Functionality" is defined as the parts of +the <B>BBDB</B> used to implement basic record creation (<SAMP>`M-x +bbdb-create'</SAMP>) and searching (<SAMP>`M-x bbdb'</SAMP>). +<H3><A NAME="FOOT2" HREF="bbdb_1.html#DOCF2">(2)</A></H3> +<P>This +documentation can be accessed by typing <KBD>C-h f bbdb-initialize RET</KBD>. +<H3><A NAME="FOOT3" HREF="bbdb_1.html#DOCF3">(3)</A></H3> +<P>If you are using GNUS (not Gnus), + and if your GNUS version is 3.14 or older, use the <CODE>Gnus</CODE> (note + the capitalization) symbol. +<H3><A NAME="FOOT4" HREF="bbdb_1.html#DOCF4">(4)</A></H3> +<P>For the VM + initialization to work properly, you must either call + <CODE>bbdb-initialize</CODE> with the <CODE>vm</CODE> symbol from within your VM + initialization file (<TT>`~/.vm'</TT>), or you must call + <CODE>bbdb-insinuate-vm</CODE> manually from within your VM initialization + file. +<H3><A NAME="FOOT5" HREF="bbdb_1.html#DOCF5">(5)</A></H3> +<P>While it is possible to put a multi-character mark +in <CODE>bbdb-message-marker-field</CODE> and/or in +<CODE>bbdb/gnus-summary-known-poster-mark</CODE>, the resulting summary buffer +will be misaligned as a result. This misalignment will result from fact +that at this time the character used to indicate posts whose authors are +not in the <B>BBDB</B> is always a single character, and cannot be +changed. +<H3><A NAME="FOOT6" HREF="bbdb_1.html#DOCF6">(6)</A></H3> +<P><CODE>bbdb-snarf</CODE> is actually a wrapper for +<CODE>bbdb-snarf-region</CODE> that determines the relevant region and passes it +on. +<H3><A NAME="FOOT7" HREF="bbdb_1.html#DOCF7">(7)</A></H3> +<P>Use the full path to <CODE>bbdb-srv.pl</CODE> if +it is not in the default path. +<HR SIZE=1> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_ovr.html b/html/bbdb_ovr.html new file mode 100644 index 0000000..74eabf1 --- /dev/null +++ b/html/bbdb_ovr.html @@ -0,0 +1,54 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Short Table of Contents</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Short Table of Contents"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Short Table of Contents"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC_OVERVIEW"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1>Short Table of Contents</H1> +<BLOCKQUOTE> +<A NAME="TOC1" HREF="bbdb_1.html#SEC1">1. BBDB</A> +<BR> +<A NAME="TOC89" HREF="bbdb_2.html#SEC89">_</A> +<BR> +<A NAME="TOC90" HREF="bbdb_3.html#SEC90">Concept Index</A> +<BR> +<A NAME="TOC91" HREF="bbdb_4.html#SEC91">Variable Index</A> +<BR> + +</BLOCKQUOTE> +<HR SIZE=1> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/bbdb_toc.html b/html/bbdb_toc.html new file mode 100644 index 0000000..0f52339 --- /dev/null +++ b/html/bbdb_toc.html @@ -0,0 +1,215 @@ +<HTML> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<!-- Created on July, 21 2000 by texi2html 1.64 --> +<!-- +Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) + Karl Berry <karl@freefriends.org> + Olaf Bachmann <obachman@mathematik.uni-kl.de> + and many others. +Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de> +Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> + +--> +<HEAD> +<TITLE>Insidious Big Brother Database User Manual: Table of Contents</TITLE> + +<META NAME="description" CONTENT="Insidious Big Brother Database User Manual: Table of Contents"> +<META NAME="keywords" CONTENT="Insidious Big Brother Database User Manual: Table of Contents"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<META NAME="Generator" CONTENT="texi2html 1.64"> +<link rel="stylesheet" href="bbdb.css"> +</HEAD> + +<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"> + +<A NAME="SEC_Contents"></A> +<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0> +<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb.html#SEC_Top">Top</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_toc.html#SEC_Contents">Contents</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_3.html#SEC90">Index</A>]</TD> +<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bbdb_abt.html#SEC_About"> ? </A>]</TD> +</TR></TABLE> +<H1>Table of Contents</H1> +<UL> +<A NAME="TOC1" HREF="bbdb_1.html#SEC1">1. BBDB</A> +<BR> +<UL> +<A NAME="TOC2" HREF="bbdb_1.html#SEC2">1.1 Installation</A> +<BR> +<UL> +<A NAME="TOC3" HREF="bbdb_1.html#SEC3">1.1.1 General Prerequisites</A> +<BR> +<A NAME="TOC4" HREF="bbdb_1.html#SEC4">1.1.2 Normal User Installation</A> +<BR> +<A NAME="TOC10" HREF="bbdb_1.html#SEC10">1.1.3 XEmacs Package Installation</A> +<BR> +<A NAME="TOC13" HREF="bbdb_1.html#SEC13">1.1.4 Initial Configuration</A> +<BR> +<UL> +<A NAME="TOC19" HREF="bbdb_1.html#SEC19">1.1.4.1 Initializing <B>BBDB</B> support for Gnus</A> +<BR> +<A NAME="TOC20" HREF="bbdb_1.html#SEC20">1.1.4.2 Initializing <B>BBDB</B> support for MH-E</A> +<BR> +<A NAME="TOC21" HREF="bbdb_1.html#SEC21">1.1.4.3 Initializing <B>BBDB</B> support for RMAIL</A> +<BR> +<A NAME="TOC22" HREF="bbdb_1.html#SEC22">1.1.4.4 Initializing <B>BBDB</B> support for Sendmail</A> +<BR> +<A NAME="TOC23" HREF="bbdb_1.html#SEC23">1.1.4.5 Initializing <B>BBDB</B> support for VM</A> +<BR> +<A NAME="TOC24" HREF="bbdb_1.html#SEC24">1.1.4.6 Initializing <B>BBDB</B> support for Message mode</A> +<BR> +<A NAME="TOC25" HREF="bbdb_1.html#SEC25">1.1.4.7 Initializing <B>BBDB</B> support for Reportmail</A> +<BR> +<A NAME="TOC26" HREF="bbdb_1.html#SEC26">1.1.4.8 Initializing <B>BBDB</B> support for Supercite</A> +<BR> +<A NAME="TOC27" HREF="bbdb_1.html#SEC27">1.1.4.9 Initializing <B>BBDB</B> support for Web Browsers</A> +<BR> +</UL> +</UL> +<A NAME="TOC28" HREF="bbdb_1.html#SEC28">1.2 The <B>BBDB</B></A> +<BR> +<UL> +<A NAME="TOC29" HREF="bbdb_1.html#SEC29">1.2.1 Database Fields</A> +<BR> +<A NAME="TOC30" HREF="bbdb_1.html#SEC30">1.2.2 Basic searching commands</A> +<BR> +<A NAME="TOC31" HREF="bbdb_1.html#SEC31">1.2.3 Advanced searching commands</A> +<BR> +<A NAME="TOC32" HREF="bbdb_1.html#SEC32">1.2.4 Manual record addition</A> +<BR> +</UL> +<A NAME="TOC33" HREF="bbdb_1.html#SEC33">1.3 BBDB Mode</A> +<BR> +<UL> +<A NAME="TOC34" HREF="bbdb_1.html#SEC34">1.3.1 Functions bound to keys in <B>BBDB</B> Mode</A> +<BR> +<A NAME="TOC35" HREF="bbdb_1.html#SEC35">1.3.2 Other database manipulation functions</A> +<BR> +</UL> +<A NAME="TOC36" HREF="bbdb_1.html#SEC36">1.4 Interfaces</A> +<BR> +<UL> +<A NAME="TOC37" HREF="bbdb_1.html#SEC37">1.4.1 Mail Reading Interfaces</A> +<BR> +<A NAME="TOC38" HREF="bbdb_1.html#SEC38">1.4.2 News Reading Interfaces</A> +<BR> +<A NAME="TOC39" HREF="bbdb_1.html#SEC39">1.4.3 Mail Sending Interfaces</A> +<BR> +</UL> +<A NAME="TOC40" HREF="bbdb_1.html#SEC40">1.5 Reader-specific Features</A> +<BR> +<UL> +<A NAME="TOC41" HREF="bbdb_1.html#SEC41">1.5.1 Gnus-specific Features</A> +<BR> +<UL> +<A NAME="TOC42" HREF="bbdb_1.html#SEC42">1.5.1.1 Scoring</A> +<BR> +<A NAME="TOC43" HREF="bbdb_1.html#SEC43">1.5.1.2 Gnus Summary Buffer Enhancements</A> +<BR> +<A NAME="TOC46" HREF="bbdb_1.html#SEC46">1.5.1.3 GNUS Summary Buffer Enhancements</A> +<BR> +</UL> +<A NAME="TOC47" HREF="bbdb_1.html#SEC47">1.5.2 VM-specific features</A> +<BR> +<UL> +<A NAME="TOC48" HREF="bbdb_1.html#SEC48">1.5.2.1 VM Message Summary Enhancements</A> +<BR> +</UL> +</UL> +<A NAME="TOC49" HREF="bbdb_1.html#SEC49">1.6 Using the <B>BBDB</B> with other packages</A> +<BR> +<UL> +<A NAME="TOC50" HREF="bbdb_1.html#SEC50">1.6.1 Using the <B>BBDB</B> with Message Mode</A> +<BR> +<A NAME="TOC51" HREF="bbdb_1.html#SEC51">1.6.2 Using the <B>BBDB</B> with Reportmail</A> +<BR> +<A NAME="TOC52" HREF="bbdb_1.html#SEC52">1.6.3 Using the <B>BBDB</B> with Supercite</A> +<BR> +<A NAME="TOC53" HREF="bbdb_1.html#SEC53">1.6.4 Using the <B>BBDB</B> with Web Browsers</A> +<BR> +</UL> +<A NAME="TOC54" HREF="bbdb_1.html#SEC54">1.7 Options</A> +<BR> +<UL> +<A NAME="TOC55" HREF="bbdb_1.html#SEC55">1.7.1 Customization Parameters</A> +<BR> +<A NAME="TOC56" HREF="bbdb_1.html#SEC56">1.7.2 Customization Hooks</A> +<BR> +<A NAME="TOC57" HREF="bbdb_1.html#SEC57">1.7.3 Predefined Hooks</A> +<BR> +</UL> +<A NAME="TOC58" HREF="bbdb_1.html#SEC58">1.8 Utilities</A> +<BR> +<UL> +<A NAME="TOC59" HREF="bbdb_1.html#SEC59">1.8.1 <CODE>bbdb-ftp</CODE></A> +<BR> +<A NAME="TOC60" HREF="bbdb_1.html#SEC60">1.8.2 <CODE>bbdb-print</CODE></A> +<BR> +<A NAME="TOC61" HREF="bbdb_1.html#SEC61">1.8.3 <CODE>bbdb-snarf</CODE></A> +<BR> +<A NAME="TOC62" HREF="bbdb_1.html#SEC62">1.8.4 <CODE>bbdb-srv</CODE></A> +<BR> +</UL> +<A NAME="TOC63" HREF="bbdb_1.html#SEC63">1.9 Internals</A> +<BR> +<UL> +<A NAME="TOC64" HREF="bbdb_1.html#SEC64">1.9.1 BBDB data file format</A> +<BR> +<UL> +<A NAME="TOC65" HREF="bbdb_1.html#SEC65">1.9.1.1 Record Vectors</A> +<BR> +<A NAME="TOC66" HREF="bbdb_1.html#SEC66">1.9.1.2 Phone Vectors</A> +<BR> +<A NAME="TOC67" HREF="bbdb_1.html#SEC67">1.9.1.3 Address Vectors</A> +<BR> +<A NAME="TOC68" HREF="bbdb_1.html#SEC68">1.9.1.4 Cache Vector</A> +<BR> +<A NAME="TOC69" HREF="bbdb_1.html#SEC69">1.9.1.5 Notes String or Alist</A> +<BR> +<A NAME="TOC70" HREF="bbdb_1.html#SEC70">1.9.1.6 Example BBDB record</A> +<BR> +</UL> +</UL> +<A NAME="TOC71" HREF="bbdb_1.html#SEC71">1.10 Mailing Lists</A> +<BR> +<A NAME="TOC72" HREF="bbdb_1.html#SEC72">1.11 Changes in this Version</A> +<BR> +<UL> +<A NAME="TOC73" HREF="bbdb_1.html#SEC73">1.11.1 Major Changes</A> +<BR> +<A NAME="TOC75" HREF="bbdb_1.html#SEC75">1.11.2 Other Changes</A> +<BR> +</UL> +<A NAME="TOC77" HREF="bbdb_1.html#SEC77">1.12 The Latest Version</A> +<BR> +<A NAME="TOC78" HREF="bbdb_1.html#SEC78">1.13 The Future</A> +<BR> +<UL> +<A NAME="TOC79" HREF="bbdb_1.html#SEC79">1.13.1 Known Bugs</A> +<BR> +<A NAME="TOC80" HREF="bbdb_1.html#SEC80">1.13.2 TODO List</A> +<BR> +<A NAME="TOC84" HREF="bbdb_1.html#SEC84">1.13.3 End of Life (EOL) Statements</A> +<BR> +</UL> +<A NAME="TOC85" HREF="bbdb_1.html#SEC85">1.14 Thanks</A> +<BR> +</UL> +<A NAME="TOC89" HREF="bbdb_2.html#SEC89">_</A> +<BR> +<A NAME="TOC90" HREF="bbdb_3.html#SEC90">Concept Index</A> +<BR> +<A NAME="TOC91" HREF="bbdb_4.html#SEC91">Variable Index</A> +<BR> +</UL> +<HR SIZE=1> +<BR> +<FONT SIZE="-1"> +This document was generated +by <I>Ronan Waide</I> on <I>July, 21 2000</I> +using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html +"><I>texi2html</I></A> + +</BODY> +</HTML> diff --git a/html/index.html b/html/index.html index f7fcea7..80bab3b 100644 --- a/html/index.html +++ b/html/index.html @@ -2,23 +2,24 @@ <html> <head> <title>The Insidious Big Brother DataBase @ SourceForge</title> +<link rel="styleshee" href="bbdb.css"> </head> <!-- $Revision$ --> -<body bgcolor="#faebd7"><!-- yeah, I kept the hideous page colour --> +<body> <h1 align="center"><img src="images/headright.gif" alt="head"> The Insidious Big Brother Database <img src="images/headleft.gif" alt="head"></h1> - <p align="center">Quicklinks: - <a href="#get">get the bbdb</a> - | <a href="#lists">mailing lists</a> - | <a href="#links">links</a> - | <a href="#manual">manual</a> - | <a href="https://sourceforge.net/projects/bbdb/">project home</a> - </p> +<p align="center">Quicklinks: +<a href="#get">get the bbdb</a> +| <a href="#lists">mailing lists</a> +| <a href="#links">links</a> +| <a href="#manual">manual</a> +| <a href="http://sourceforge.net/projects/bbdb/">project home</a> +</p> - <h2>What is The Insidious Big Brother Database?</h2> +<h2>What is The Insidious Big Brother Database?</h2> <p>The Insidious Big Brother Database (BBDB) is a contact management utility created by <a href="http://www.jwz.org/">Jamie Zawinski</a> for @@ -29,54 +30,52 @@ usual with applications for Emacs, this record creation can be configured in many ways, ranging from a boolean create/don't create setting to creation based on the result of a user-supplied function.</p> - <p>Database records can be used to store many types of - information, from name and address to URLs and X-Face images. - This information can be displayed when a message from an entity - named in a database record is recieved. In addition, messages - from database members can be tagged in the Gnus Summary Buffer, - and Gnus scoring can be configured based on the contents of - database records. Supercite citations can even be preset - through the use of records in the BBDB.</p> - - <h2>Requirements:</h2> - - <h3>Supported versions of Emacs</h3> - <ul> - <li><a href="http://www.gnu.org/">Gnu</a> <a - href="ftp://ftp.gnu.org/pub/emacs/">Emacs</a> versions 19.34 and - above</li> - - <li><a href="http://www.xemacs.org/">XEmacs</a> versions 19.16 and - above</li> - </ul> - - <h3>Supported Mail and News readers</h3> - - <p>The BBDB can be used without a mail- or news-reader. It has, - however, been optimized for use with one.</p> - <ul> - <li><a href="http://www.gnus.org/">Gnus</a></li> - <li><a href="http://www.wonderworks.com/vm/">VM</a></li> - <li>MH-e</li> - <li>Rmail</li> - <li>UNIX <a href="http://www.netscape.com/">Netscape</a> Mail - (via bbdb-srv)</li> - <li>UNIX <a href="http://www.netscape.com/">Netscape</a> News - (via bbdb-srv)</li> - </ul> +<p>Database records can be used to store many types of +information, from name and address to URLs and X-Face images. +This information can be displayed when a message from an entity +named in a database record is recieved. In addition, messages +from database members can be tagged in the Gnus Summary Buffer, +and Gnus scoring can be configured based on the contents of +database records. Supercite citations can even be preset +through the use of records in the BBDB.</p> + +<h2>Requirements:</h2> + +<h3>Supported versions of Emacs</h3> +<ul> + <li><a href="http://www.gnu.org/">Gnu</a> <a + href="ftp://ftp.gnu.org/pub/emacs/">Emacs</a> versions 19.34 and + above</li> + + <li><a href="http://www.xemacs.org/">XEmacs</a> versions 19.16 and + above</li> +</ul> + +<h3>Supported Mail and News readers</h3> + +<p>The BBDB can be used without a mail- or news-reader. It has, +however, been optimized for use with one.</p> +<ul> + <li><a href="http://www.gnus.org/">Gnus</a></li> + <li><a href="http://www.wonderworks.com/vm/">VM</a></li> + <li>MH-e</li> + <li>Rmail</li> + <li>UNIX <a href="http://www.netscape.com/">Netscape</a> Mail + (via bbdb-srv)</li> + <li>UNIX <a href="http://www.netscape.com/">Netscape</a> News + (via bbdb-srv)</li> +</ul> <h2><a name="get">Getting the BBDB</a></h2> <p><a href="bbdb-2.00.06.tar.gz">BBDB 2.00.06</a> is the current released version. It fixes a number of things that emacs 20.x breaks in -BBDB 2.00, such as key mappings. See also the <a -href="bbdb-2.00.06.tar.gz.sig">PGP signature</a> and the <a -href="fixme!!">PGP key</a>.</p> +BBDB 2.00, such as key mappings.</p> - <h3>Current development version: Provisionally 2.2</h3> +<h3>Current development version: Provisionally 2.2</h3> - <p>This is as-yet untagged; the change in not-quite-major number reflects - the following caveat: +<p>This is as-yet untagged; the change in not-quite-major number reflects +the following caveat: <p><strong>WARNING</strong>: this modifies the BBDB file format. Anything which relies on BBDB's current file format will no longer work. @@ -85,47 +84,47 @@ Alex has also written a function to revert the file format to the I've modified it to handle the further hack I've inflicted on the streets field.</p> - <p>This is now in CVS at the head of the tree; you can grab the - <a href="bbdb-2.2.tar.gz">tarball</a>. Note, the tarball - might have one or two things that aren't yet in CVS, most notably - updates to documentation. The code is solid, though, since it's my - live copy of BBDB.</p> +<p>This is now in CVS at the head of the tree; you can grab the +<a href="bbdb-2.2.tar.gz">tarball</a>. Note, the tarball +might have one or two things that aren't yet in CVS, most notably +updates to documentation. The code should be solid, though, since it's +my live copy of BBDB.</p> - <h3>Compilation notes:</h3> - <ol> +<h3>Compilation notes:</h3> +<ol> - <li>Compilation is known to work with Solaris make and with GNU - make. If you discover compilation problems with other - versions of make, please submit a bug report to <a - href="mailto:bbdb-info@lists.sourceforge.net">bbdb-info@lists.sourceforge.net</a>. - The make binary shipped with IRIX 6.2 is known not to work - with BBDB version 2.00. Also, some of the test targets don't - work with GNU make, since MAKEFLAGS doesn't include "-". + <li>Compilation is known to work with Solaris make and with GNU + make. If you discover compilation problems with other + versions of make, please submit a bug report to <a + href="mailto:bbdb-info@lists.sourceforge.net">bbdb-info@lists.sourceforge.net</a>. + The make binary shipped with IRIX 6.2 is known not to work + with BBDB version 2.00. Also, some of the test targets don't + work with GNU make, since MAKEFLAGS doesn't include "-". - <li>Texinfo 3.11 (or later) is required to compile the texinfo - documentation. It is available at <a - href="ftp://ftp.gnu.org/pub/gnu">the GNU FTP site</a>. - Precompiled info files are included in the tarball. - </ol> + <li>Texinfo 3.11 (or later) is required to compile the texinfo + documentation. It is available at <a + href="ftp://ftp.gnu.org/pub/gnu">the GNU FTP site</a>. + Precompiled info files are included in the tarball. +</ol> - <h2>CVS tree</h2> +<h2>CVS tree</h2> <p>The development and release versions are available via Anon-CVS to the CVS tree at <code>cvs.bbdb.sourceforge.net</code>. To access the tree, log in with the following command: - <pre> - cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb login - </pre> +<pre> +cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb login +</pre> - The password is blank; just hit return at the prompt.</p> +The password is blank; just hit return at the prompt.</p> - To check out a version of the BBDB, use one of the following commands: +To check out a version of the BBDB, use one of the following commands: - <pre> - cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb checkout bbdb - cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb checkout -r rev bbdb - </pre> +<pre> +cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb checkout bbdb +cvs -d :pserver:anonymous@cvs.bbdb.sourceforge.net:/cvsroot/bbdb checkout -r rev bbdb +</pre> <p>The first command will check out a copy of the latest version. Usually this latest version will be a development version, but it may @@ -143,55 +142,54 @@ retrieved, as in <var>x</var>.<var>yy</var>. <strong>Note:</strong> <code>unoff</code> should be appended to the above word for all versions prior to 2.00.</p> - To retrieve version 1.90, use the following argument:<br> +To retrieve version 1.90, use the following argument:<br> - <pre> - -r BBDB_1_90unoff - </pre> +<pre> +-r BBDB_1_90unoff +</pre> - To retrieve version 2.00.06, use the following argument:<br> +To retrieve version 2.00.06, use the following argument:<br> - <pre> - -r BBDB_2_00_06 - </pre> +<pre> +-r BBDB_2_00_06 +</pre> <h2><a name="manual">Manual</a></h2> <p><a href="bbdb.html">This</a> is a HTML version of the texinfo manual -that accompanies BBDB. It's rough, but it'll do for the mo until I -organise myself some more.</p> +that accompanies BBDB generated <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html"><I>texi2html</I></A>.</p> <h2><a name="get">Mailing Lists</a></h2> <p>There are two mailing lists for the BBDB:</p> <dl> - <dt><strong>bbdb-info</strong></dt> + <dt><strong>bbdb-info</strong></dt> <dd>General discussion about the BBDB, both for users and - developers. Some of it is archived at - <a href="ftp://ftp.xemacs.org/xemacs/bbdb/">ftp://ftp.xemacs.org/xemacs/bbdb/</a>, but this is very old (June - 1996). The archive for mails up to end of April 2000 can be found - at <a href="http://www.mail-archive.com/bbdb-info%40xemacs.org/">http://www.mail-archive.com/bbdb-info%40xemacs.org/</a>. Since - April 2000 mails are archived at - <a href="http://www.mail-archive.com/bbdb-info%40lists.sourceforge.net/">http://www.mail-archive.com/bbdb-info%40lists.sourceforge.net/</a>. - - <p>SourceForge has built-in archiving which doesn't seem to be - working just yet, which means some of the messages have been, well, not - archived. Working on this. - - <dt><strong>bbdb-announce</strong></dt> + developers. Some of it was archived at + Xemacs.org, but was very old (June 1996) and I've asked them to + remove it - it'll reappear here soon for posterity. The archive + for mails up to end of April 2000 can be found + at <a href="http://www.mail-archive.com/bbdb-info%40xemacs.org/">http://www.mail-archive.com/bbdb-info%40xemacs.org/</a>. Since + April 2000 mails are archived at + <a href="http://www.mail-archive.com/bbdb-info%40lists.sourceforge.net/">http://www.mail-archive.com/bbdb-info%40lists.sourceforge.net/</a>. + + <p>SourceForge has built-in archiving which didn't initially + seem to be working, but is apparently okay now.</p> + + <dt><strong>bbdb-announce</strong></dt> <dd>Announcements of new BBDB versions. This list is moderated, and -has very low volume.</dd> + has very low volume.</dd> </dl> - To subscribe to either mailing list, send mail to - <var>listname</var><code>-request@lists.sourceforge.net</code> with - <code>subscribe</code> as the body. You will receive a reply - requesting confirmation of your subscription; return the - confirmation as described in the email, and you're on the - list. Alternatively you can visit the list signup page, linked - from the <a href="http://sourceforge.net/projects/bbdb">sourceforge - project page</a>. +To subscribe to either mailing list, send mail to +<var>listname</var><code>-request@lists.sourceforge.net</code> with +<code>subscribe</code> as the body. You will receive a reply +requesting confirmation of your subscription; return the +confirmation as described in the email, and you're on the +list. Alternatively you can visit the list signup page, linked +from the <a href="http://sourceforge.net/projects/bbdb">sourceforge +project page</a>. <h2><a name="links">Links</a></h2> @@ -202,34 +200,37 @@ what they're at.</p> the 2.00.06 release. Also, check to see if patches are in CVS before you try to apply them.</p> - <ul> - <li>My <a href="http://www.waider.ie/hacks/emacs/bbdb-abuse.html">own page</a> currently - containing a half-hearted attempt at a "smart" - <code>bbdb-snarf</code>.</li> - - <li><a href="http://hammer.prohosting.com/~gumbart/">Alex - Schroeder</a> has done some work on <a - href="http://hammer.prohosting.com/~gumbart/emacs.html#12">de-americanising - the address formats</a> and <a - href="http://hammer.prohosting.com/~gumbart/bbdb-funcs.html">some - other stuff</a>. This is now in the CVS tree.</li> - - <li><a href="http://www.Jochen-Kuepper.de">Jochen - Küpper</a> has done some work on - <code>bbdb-print</code>, which is now in CVS.</li> - - <li><a href="mailto:Thomas.DeWeese@Kodak.com?subject=BBDB">Thomas +<ul> + <li>My <a href="http://www.waider.ie/hacks/emacs/bbdb-abuse.html">own page</a> currently + containing a half-hearted attempt at a "smart" + <code>bbdb-snarf</code>.</li> + + <li><a href="http://hammer.prohosting.com/~gumbart/">Alex + Schroeder</a> has done some work on <a + href="http://hammer.prohosting.com/~gumbart/emacs.html#12">de-americanising + the address formats</a> and <a + href="http://hammer.prohosting.com/~gumbart/bbdb-funcs.html">some + other stuff</a>. This is now in the CVS tree.</li> + + <li><a href="http://www.Jochen-Kuepper.de">Jochen + Küpper</a> has done some work on + <code>bbdb-print</code>, which is now in CVS.</li> + + <li><a href="mailto:Thomas.DeWeese@Kodak.com?subject=BBDB">Thomas DeWeese</a> has created a <a href="patches/multi-record.patch">patch</a> to support multiple records with the same name. This is in CVS.</li> - </ul> + <li>The <code>bits</code> subdirectory in the source tree contains + random bits and pieces that I've collected but not + integrated.</li> +</ul> - <hr> - <address><a href="mailto:waider@waider.ie?subject=BBDB">Ronan - Waide</a> (based on <a - href="http://pweb.netcom.com/~simmonmt/bbdb/">Matt Simmons' bbdb - page</a>)</address> +<hr> +<address><a href="mailto:waider@waider.ie?subject=BBDB">Ronan +Waide</a> (based on <a +href="http://pweb.netcom.com/~simmonmt/bbdb/">Matt Simmons' bbdb +page</a>)</address> <p align="center">Hosted by<br><a href="http://sourceforge.net/"><img |