(eword-decode-string field-body))))
---
-\e$B0J2<$O\e(B bbdb.el / bbdb-hooks.el \e$B$K$"$F$k\e(B patch \e$B$G$9!#\e(B
+\e$B0J2<$O\e(B bbdb-com.el\e$B!"\e(Bbbdb-hooks.el \e$B$*$h$S\e(B bbdb.el \e$B$K$"$F$k\e(B patch \e$B$G$9!#\e(B
------ cut here ------ cut here ------ cut here ------ cut here ------
---- bbdb-2.2/lisp/bbdb-hooks.el~ Mon Jan 8 12:35:14 2001
-+++ bbdb-2.2/lisp/bbdb-hooks.el Tue Feb 6 04:35:00 2001
-@@ -411,12 +411,23 @@
- (marker (bbdb-header-start))
+--- 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-or-add-msg)
-+ replace-p replace-or-add-msg
-+ extract-field-value-funtion)
+- 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
+ (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))
++ (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
-@@ -427,7 +438,7 @@
+ ;; 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))
(if (and fieldval
(string-match regexp fieldval))
(setq ignore t)
-@@ -440,7 +451,8 @@
+@@ -434,7 +446,8 @@
pairs (cdr (car rest)) ; (REGEXP . STRING) or
; (REGEXP FIELD-NAME STRING) or
; (REGEXP FIELD-NAME STRING REPLACE-P)
+ fieldval (funcall extract-field-value-funtion field))
+ ; e.g., Subject line
(when fieldval
- (while pairs
- (setq regexp (car (car pairs))
---- bbdb-2.2/lisp/bbdb.el~ Wed Jan 24 23:14:00 2001
-+++ bbdb-2.2/lisp/bbdb.el Tue Feb 6 04:35:00 2001
-@@ -681,6 +681,7 @@
+ ;; 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)