TODO List
---------
The Near Future
...............
* Add bbdb/MUA-delete-sender-record
* Configurable completion. Should allow user to specify "complete on
names first, then nets", etc.
* More variables for upgrading. Specifically a variable that lets
users specify extra fields for upgrading (an alist `(a . b)' that
says field `a' should be upgraded the same way as field `b'.
* Change all functions that switch on MUAs to use compose-mail (ex:
`bbdb-send-mail-internal').
* Soren Dayton's method for generically extending the BBDB with
special-purpose fields
* Sorting records on alternate keys. `bbdb-sort-by' from Boris
Goldowsky.
* Sorting individual types of fields - Sam Steingold's method.
* Button 3 menus (Mark Moll and Soren Dayton)
* Conditionalized erasure of properties when text is pasted into the
BBDB.
* Should notice when there are `Reply-To:' addresses.
* Should have a command for merging together two divergent copies of
a `.bbdb' file (in case you read mail on one machine and news on
another, for instance.)
* The `*BBDB*' buffer should be resized to exactly fit what it's
displaying, even when not in "electric" mode.
* It should be possible to do completion on last names as well as
first names.
* 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.
* String area codes (German area codes can begin with zeroes) patch
from `Michael Sperber <sperber@informatik.uni-tuebingen.de>'
* Default country variable, similar to `bbdb-default-area-code'.
* Make format self-describing in comment
* ISO-8859-x characters in records for printing.
* Prefix for `W' (`bbdb-www') command to allow selection of
different addresses.
* Generalized buttons (via extents) for fields. Example: `(a . b)'
means create button that calls `b' for each entry in the `a' field.
* Remove support for GNUS. Start with lisp Makefile (remove nntp
and gnus loads).
* More flexible auto-addition. Conditionalizing of addition
(conditions or supplied function). Prompt if multiple records
that meet criteria exist.
* Different output formats. See Toby Speight's
`<s8iurdodvm.fsf@plato.ansa.co.uk>' and Bin Mu's
`<199801221605.KAA23663@DerivaTech.Com>'.
* Generalized area-code-split program that could split, for example,
based on input copied (or straight fetch of page) from the
Bellcore NANP page.
* Print multivalue (comma-separated) fields with one value per line
* Easier BBDB extension. See `<xcdyb30f3hb.fsf@ra.cs.uchicago.edu>'
from Soren Dayton.
* Take birthdays from the BBDB, add them to calendar. From Boris
Goldowsky.
* Make mail aliases file for other mailers. From Boris Goldowsky.
* Various patches from Boris Goldowsky in `bbdb-ext'.
* Various other patches:
- `bbdb-filters-0.2'
- `bbdb-frame.el'
- `bbdb-letter-1.0'
- `bbdb-plz'
- `bbdb-query'
- `country'
- `country-info'
Note that these files have not been investigated. They may or may
not be incorporated.
* Ability to remove all properties from copied strings.
Not-So-Near Future
..................
* Fix Gnus scoring so it rebuilds when gnus-score disappears
* Multiline note fields
* Change key to be some kind of unique number
* There should be better support for non-American addresses and phone
numbers. This might be Near Future if somebody volunteers to send
me patches.
* Should reimplement "electric" mode to not be so broken.
* The `*C-o' keystroke should add a field to all displayed records.
Perhaps `*;' should append some text to an arbitrary field of all
displayed records.
* Multiple `.bbdb' files with precedence relationships. See Wes
Hardaker's
`<sdu3awz75a.fsf@oakdale.ucdavis.edu>'
* Automatically grab information about a person from their sig. See
Graham Clark's `info-bbdb' post
`<6282.199706161624@havra.dcs.ed.ac.uk>' and Adrian Aichner's
`info-bbdb' post `<rxsiuzebpgp.fsf@midnight.ecf.teradyne.com>'.
Would like to have `bbdb-snarf' attack the sig then compare the
snarfed data with the header data.
Thoughts
........
* Are there enough hooks?
* The interfaces should share more code.
* The `bbdb-create-internal' function should be more forgiving.
* More `*' commands in general, including `*d'.