Fix.
[elisp/gnus.git-] / README-gnus-bbdb.en
index b99d805..0b7c77c 100644 (file)
@@ -29,6 +29,10 @@ of this file should be applied. If not, it might not.
 (bbdb-initialize 'sc)  ;; 'Gnus or 'gnus should be deleted.
 (add-hook 'gnus-startup-hook 'gnus-bbdb-insinuate)
 
+;; No need to use the following lines under T-gnus 6.15.5 and later.
+;(eval-after-load "message"
+;  '(add-hook 'message-setup-hook 'gnus-bbdb-insinuate-message))
+
  If you would like to decode the quoted encoded words forcibly, even
 though FLIM does not decode them, put the following lines in your
 .gnus file.
@@ -39,62 +43,83 @@ though FLIM does not decode them, put the following lines in your
          (eword-decode-string field-body))))
 
 ---
- This is a patch for bbdb.el / bbdb-hooks.el.
+ This is a patch for bbdb-com.el, bbdb-hooks.el and bbdb.el.
 
 ------ cut here ------ cut here ------ cut here ------ cut here ------
---- bbdb-hooks.el~     Tue Oct 13 03:13:50 1998
-+++ bbdb-hooks.el      Fri Oct 30 17:05:53 1998
-@@ -352,12 +352,22 @@
-       (marker (bbdb-header-start))
-       field pairs fieldval  ; do all bindings here for speed
-       regexp string notes-field-name notes
--       replace-p replace-or-add-msg)
-+      replace-p replace-or-add-msg
-+      extract-field-value-funtion)
+--- bbdb-2.34/lisp/bbdb-com.el~        Tue Jan 15 23:00:57 2002
++++ bbdb-2.34/lisp/bbdb-com.el Thu Jan 31 03:55:01 2002
+@@ -1686,7 +1686,7 @@
+           ;; to be enclosed in quotes.  Double-quotes and backslashes have
+           ;; already been escaped.  This quotes a few extra characters as
+           ;; well (!,%, and $) just for common sense.
+-          ((string-match "[][\000-\037\177()<>@,;:.!$%]" name)
++        ((string-match "[][\000-\037\177<>@,;.!$%]" name)
+            (format "\"%s\" <%s>" name net))
+           (t
+            (format "%s <%s>" name net)))))
+--- bbdb-2.34/lisp/bbdb-hooks.el~      Tue Jan 15 09:00:11 2002
++++ bbdb-2.34/lisp/bbdb-hooks.el       Thu Jan 31 03:55:01 2002
+@@ -36,4 +36,6 @@
+ ;;
++(eval-when-compile (require 'cl))
++
+ (require 'bbdb)
+ (require 'bbdb-com)
+@@ -405,13 +407,23 @@
+          ignore
+          field pairs fieldval  ; do all bindings here for speed
+          regexp string notes-field-name notes
+-         replace-p)
++         replace-p extract-field-value-funtion)
      (set-buffer (marker-buffer marker))
      (save-restriction
 -      (widen)
 -      (goto-char marker)
 -      (if (and (setq fieldval (bbdb-extract-field-value "From"))
+-               (string-match (bbdb-user-mail-names) fieldval))
 +      (let ((function-list bbdb-extract-field-value-function-list)
 +          function)
 +      (or (progn
 +            (while (and (not extract-field-value-funtion)
-+                        (setq function (pop function-list)))
-+              (setq extract-field-value-funtion (funcall function)))
++                        (setq function (car function-list)))
++              (setq extract-field-value-funtion (funcall function)
++                    function-list (cdr function-list)))
 +            extract-field-value-funtion)
 +          (progn
 +            (widen)
 +            (goto-char marker)
 +            (setq extract-field-value-funtion 'bbdb-extract-field-value))))
 +      (if (and (setq fieldval (funcall extract-field-value-funtion "From"))
-              (string-match (bbdb-user-mail-names) fieldval))
-         ;; Don't do anything if this message is from us.  Note that we have
-         ;; to look at the message instead of the record, because the record
-@@ -368,7 +378,7 @@
-         (goto-char marker)
-         (setq field (car (car ignore-all))
-               regexp (cdr (car ignore-all))
--              fieldval (bbdb-extract-field-value field))
-+              fieldval (funcall extract-field-value-funtion field))
-         (if (and fieldval
-                  (string-match regexp fieldval))
-             (setq ignore t)
-@@ -382,7 +392,7 @@
-               pairs (cdr (car rest))  ; (REGEXP . STRING) or
-                                       ; (REGEXP FIELD-NAME STRING) or
-                                       ; (REGEXP FIELD-NAME STRING REPLACE-P)
--              fieldval (bbdb-extract-field-value field)) ; e.g., Subject line
-+              fieldval (funcall extract-field-value-funtion field)) ; e.g., Subject line
-         (if fieldval
-             (while pairs
-               (setq regexp (car (car pairs))
---- bbdb.el~   Tue Oct 13 03:14:55 1998
-+++ bbdb.el    Fri Oct 30 17:05:53 1998
-@@ -620,6 +620,7 @@
++             (string-match (bbdb-user-mail-names) fieldval))
+           ;; Don't do anything if this message is from us.  Note that we have
+           ;; to look at the message instead of the record, because the record
+           ;; will be of the recipient of the message if it is from us.
+@@ -421,7 +433,7 @@
+           (goto-char marker)
+           (setq field (car (car ignore-all))
+                 regexp (cdr (car ignore-all))
+-                fieldval (bbdb-extract-field-value field))
++                fieldval (funcall extract-field-value-funtion field))
+           (if (and fieldval
+                    (string-match regexp fieldval))
+               (setq ignore t)
+@@ -434,7 +446,8 @@
+                 pairs (cdr (car rest))  ; (REGEXP . STRING) or
+                                         ; (REGEXP FIELD-NAME STRING) or
+                                         ; (REGEXP FIELD-NAME STRING REPLACE-P)
+-                fieldval (bbdb-extract-field-value field)) ; e.g., Subject line
++                fieldval (funcall extract-field-value-funtion field))
++                                        ; e.g., Subject line
+           (when fieldval
+             ;; we perform the auto notes stuff only for authors of a message
+             ;; or if explicitly requested
+--- bbdb-2.34/lisp/bbdb.el~    Tue Jan 15 23:00:58 2002
++++ bbdb-2.34/lisp/bbdb.el     Thu Jan 31 03:55:01 2002
+@@ -737,6 +737,7 @@
  (defvar bbdb-showing-changed-ones nil)
  (defvar bbdb-modified-p nil)
- (defvar bbdb-elided-display nil)
+ (defvar bbdb-address-print-formatting-alist) ; "bbdb-print"
 +(defvar bbdb-extract-field-value-function-list nil)
  
  (defvar bbdb-debug t)