[EMAIL PROTECTED] writes:
> Please post your patch.
Here it is, it contains something more than the patch for the hook
itself, but iirc, relavitely minor changes otherwise.
I can clean it up if you wish.
? autom4te.cache
? testing/Makefile
? texinfo/dir
Index: lisp/bbdb-com.el
===================================================================
RCS file: /cvsroot/bbdb/bbdb/lisp/bbdb-com.el,v
retrieving revision 1.170
diff -u -r1.170 bbdb-com.el
--- lisp/bbdb-com.el 22 Mar 2004 15:18:33 -0000 1.170
+++ lisp/bbdb-com.el 17 Oct 2004 23:07:13 -0000
@@ -1858,7 +1858,7 @@
(const :tag "Allow redundancy" t)))
;;;###autoload
-(defun bbdb-dwim-net-address (record &optional net)
+(defun bbdb-dwim-net-address (record &optional net skip-backslash)
"Returns a string to use as the email address of the given record. The
given address is the address the mail is destined to; this is formatted like
\"Firstname Lastname <addr>\" unless both the first name and last name are
@@ -1881,10 +1881,11 @@
(setq fn (bbdb-record-firstname record)
ln (bbdb-record-lastname record)))
;; if the name contains backslashes or double-quotes, backslash them.
- (if name
- (while (setq i (string-match "[\\\"]" name i))
- (setq name (concat (substring name 0 i) "\\" (substring name i))
- i (+ i 2))))
+ (unless skip-backslash
+ (if name
+ (while (setq i (string-match "[\\\"]" name i))
+ (setq name (concat (substring name 0 i) "\\" (substring name i))
+ i (+ i 2)))))
(cond ((eq 'netonly bbdb-dwim-net-address-allow-redundancy)
net)
((or (null name)
@@ -2267,6 +2268,12 @@
:group 'bbdb-mua-specific
:type 'boolean)
+(defcustom bbdb-complete-net-hook nil
+ "List of functions called after a successful completion with `net'
+as argument."
+ :group 'bbdb-mua-specific
+ :type 'boolean)
+
(defcustom bbdb-complete-name-hooks nil
"List of functions called after a sucessful completion."
:group 'bbdb-mua-specific
@@ -2381,7 +2388,9 @@
;; replace with new mail address
(delete-region beg end)
(insert (bbdb-dwim-net-address rec this-addr))
+ (run-hook-with-args 'bbdb-complete-net-hook this-addr)
(run-hooks 'bbdb-complete-name-hooks)
+
(throw 'bbdb-cycling-exit t))))))
;; FALL THROUGH
@@ -2469,6 +2478,12 @@
(forward-char 1)
(insert "\n "))))))
+ (run-hook-with-args 'bbdb-complete-net-hook
+ (let ((net (bbdb-record-net (car match-recs))))
+ (if (listp net)
+ (car net)
+ net)))
+
;; Update the *BBDB* buffer if desired.
(if bbdb-completion-display-record
(let ((bbdb-gag-messages t))
Johann