>>>>> "CR" == Colin Rafferty <[EMAIL PROTECTED]> writes: CR> Marco Walther writes: >> I've seen some minor problems with bbdb and I hope I've fixed some of >> them;-) CR> I'm having a hard time reading the diff. If you do `diff -u', it is CR> much easier to tell what was changed. Yes, but it looses the portability. Only GNU diff supports this option/format and that's not always the default diff/patch you get:-( But here it comes;-) -- Marco
--- ChangeLog~ Fri Jul 23 00:35:07 1999 +++ ChangeLog Tue Apr 25 18:49:19 2000 @@ -1,5 +1,15 @@ +2000-04-25 Marco Walther <[EMAIL PROTECTED]> + + * bbdb-com.el (bbdb-display-completion-list): It's not a good idea + to discard the call-back and user data!! + (bbdb-complete-name): The 'pred does not work as expected with the + hash table. And I've a general question whether it's a good idea + to have one completion entry per record?! I've a lot of records + with the name and at least two (work & home) email addresses and I + would like to see all of them as choices;-) + 1999-01-24 Matt Simmons <[EMAIL PROTECTED]> * lisp/bbdb.el: BBDB 2.00.06 released 1999-01-24 Colin Rafferty <[EMAIL PROTECTED]> --- bbdb-com.el~ Sat Nov 27 12:49:43 1999 +++ bbdb-com.el Tue Apr 25 18:48:27 2000 @@ -1678,13 +1678,18 @@ (set-window-configuration bbdb-complete-name-saved-window-config)) (setq bbdb-complete-name-saved-window-config nil)))) (defun bbdb-display-completion-list (list &optional callback data) - "Wrapper for display-completion-list. -CALLBACK and DATA are discarded." - (display-completion-list list)) + "Wrapper for display-completion-list." +;; MARCO CALLBACK and DATA are discarded. +;; That's a bad idea if you have not only net addresses in the +;; completion list! +;; Or the second case is: typed `Marco' and completion choosen +;; `marco walther' and you will end up with `Marcomarco walther' in +;; the buffer:-( + (display-completion-list list :activate-callback callback :user-data data)) (defun bbdb-complete-clicked-name (event extent user-data) "Find the record for a name clicked in a completion buffer. Currently only used by XEmacs." (let ((buffer (nth 0 user-data)) @@ -1731,14 +1736,20 @@ (if (and yeah-yeah-this-one (not (eq rec yeah-yeah-this-one))) (setq only-one-p nil)) (setq all-the-completions (cons sym all-the-completions)) - (if (eq rec yeah-yeah-this-one) - nil +;; MARCO: This does not work as expected with the hash table!! +;; And I've a general question whether it's a good idea to have one +;; completion entry per record?! I've a lot of records with the name +;; and at least two (work & home) email addresses and I would like to +;; see all of them as choices;-) +;; (if (eq rec yeah-yeah-this-one) +;; nil (and net (setq yeah-yeah-this-one rec)) - net)))))) + net))))) +;; MARCO ) (completion (try-completion pattern ht pred))) ;; If there were multiple completions for this record, the one that was ;; picked is random (hash order.) So canonicalize that to be the one ;; closest to the front of the list. (if (and (stringp completion)