1 -*- mode: text; fill-column: 70; -*-
4 If BBDB is used then, bbdb-gnus.elc can't be shared with them before
5 Semi-gnus 6.8.X. It is necessary to byte-compile it again.
7 ;; It is a simple way that only bbdb-gnus.el is byte-compiled after
13 This is the BBDB API module for Semi-gnus. `mime-bbdb' should not be
14 necessary for Semi-gnus, if that module were used.
16 You need FLIM 1.11.3 or later.
18 If you are using bbdb-auto-notes-hook, the patch listed at the end
19 of this file should be applied. If not, it might not.
23 ;; You need to set nothing for `mime-bbdb'.
24 ;(setq mime-bbdb/use-mail-extr nil)
25 ;(eval-after-load "mail-extr" '(require 'mime-bbdb))
29 (bbdb-initialize 'sc) ;; 'Gnus or 'gnus should be deleted.
30 (add-hook 'gnus-startup-hook 'gnus-bbdb-insinuate)
32 If you would like to decode the quoted encoded words forcibly, even
33 though FLIM does not decode them, put the following lines in your
36 (setq gnus-bbdb/decode-field-body-function
38 (lambda (field-body field-name)
39 (eword-decode-string field-body))))
42 This is a patch for bbdb.el / bbdb-hooks.el.
44 ------ cut here ------ cut here ------ cut here ------ cut here ------
45 --- bbdb-hooks.el~ Tue Oct 13 03:13:50 1998
46 +++ bbdb-hooks.el Fri Oct 30 17:05:53 1998
48 (marker (bbdb-header-start))
49 field pairs fieldval ; do all bindings here for speed
50 regexp string notes-field-name notes
51 - replace-p replace-or-add-msg)
52 + replace-p replace-or-add-msg
53 + extract-field-value-funtion)
54 (set-buffer (marker-buffer marker))
58 - (if (and (setq fieldval (bbdb-extract-field-value "From"))
59 + (let ((function-list bbdb-extract-field-value-function-list)
62 + (while (and (not extract-field-value-funtion)
63 + (setq function (pop function-list)))
64 + (setq extract-field-value-funtion (funcall function)))
65 + extract-field-value-funtion)
69 + (setq extract-field-value-funtion 'bbdb-extract-field-value))))
70 + (if (and (setq fieldval (funcall extract-field-value-funtion "From"))
71 (string-match (bbdb-user-mail-names) fieldval))
72 ;; Don't do anything if this message is from us. Note that we have
73 ;; to look at the message instead of the record, because the record
76 (setq field (car (car ignore-all))
77 regexp (cdr (car ignore-all))
78 - fieldval (bbdb-extract-field-value field))
79 + fieldval (funcall extract-field-value-funtion field))
81 (string-match regexp fieldval))
84 pairs (cdr (car rest)) ; (REGEXP . STRING) or
85 ; (REGEXP FIELD-NAME STRING) or
86 ; (REGEXP FIELD-NAME STRING REPLACE-P)
87 - fieldval (bbdb-extract-field-value field)) ; e.g., Subject line
88 + fieldval (funcall extract-field-value-funtion field)) ; e.g., Subject line
91 (setq regexp (car (car pairs))
92 --- bbdb.el~ Tue Oct 13 03:14:55 1998
93 +++ bbdb.el Fri Oct 30 17:05:53 1998
95 (defvar bbdb-showing-changed-ones nil)
96 (defvar bbdb-modified-p nil)
97 (defvar bbdb-elided-display nil)
98 +(defvar bbdb-extract-field-value-function-list nil)
100 (defvar bbdb-debug t)
101 (defmacro bbdb-debug (&rest body)
102 ------ cut here ------ cut here ------ cut here ------ cut here ------