I've made a couple of changes to bbdb-1.50. The easiest relate to the
way "zip codes" are read, stored and displayed. In Australia we use 4
digit "zip codes", which were not being accepted by bbdb... Once I
got them to be accepted they were displayed with a leading "0" (and
stored that way too, I think...?)... Here's come some patch-like
things...
(Tips (and a suggestion for a bug fix?) for displaying bbdb in its own
frame follow.)
bbdb-com.el:
--------8<---------8<-------- CUT HERE --------8<---------8<--------
*** 1.1 1994/10/11 05:24:24
--- 1.4 1994/12/02 02:39:33
***************
*** 322,327 ****
--- 322,330 ----
string)
(list (substring string (match-beginning 1) (match-end 1))
(substring string (match-beginning 2) (match-end 2))))
+ ((and (not bbdb-north-american-phone-numbers-p)
+ (string-match "[0-9][0-9][0-9][0-9]" string))
+ (string-to-int string))
((string-match "-[^-]-" string)
(error "too many dashes in zip code."))
--------8<---------8<-------- CUT HERE --------8<---------8<--------
bbdb.el:
--------8<---------8<-------- CUT HERE --------8<---------8<--------
*** 1.1 1994/06/29 05:28:35
--- 1.3 1994/10/11 06:13:01
***************
*** 501,507 ****
(if (or (eq 0 (bbdb-address-zip addr))
(null (bbdb-address-zip addr)))
""
! (format "%05d" (bbdb-address-zip addr)))))
(defmacro bbdb-record-lessp (record1 record2)
(list 'string< (list 'bbdb-record-sortkey record1)
--- 501,509 ----
(if (or (eq 0 (bbdb-address-zip addr))
(null (bbdb-address-zip addr)))
""
! (if bbdb-north-american-phone-numbers-p
! (format "%05d" (bbdb-address-zip addr))
! (format "%d" (bbdb-address-zip addr))))))
(defmacro bbdb-record-lessp (record1 record2)
(list 'string< (list 'bbdb-record-sortkey record1)
--------8<---------8<-------- CUT HERE --------8<---------8<--------
The other thing I've done is set-up bbdb to use a separate frame under
GNU emacs-19.27 (some of you may remember some of my related rants on
this mailing list... a bug in emacs-19.25 was getting in my way...).
The obvious thing to do is to add bbdb-buffer-name to
special-display-buffer-names. The only problem is that bbdb's calls
to "get-buffer-window" do not tell it to check all frames for the
buffer, so the split window still appears...
I've put some advice around "get-buffer-window" so that when it is
looking for the bbdb buffer a second argument of "t" added to the
call. A better solution is to explicitly add the 2nd argument of "t"
to all calls of "get-buffer-window" in the bbdb code. For the moment
I've chosen not to modify the code so other patches can be easily
applied. I guess if someone considers it important they will make the
change :-)
peace & happiness,
martin
--
_--_|\ Peace & Department of Computer Science
/ \ Happiness The Australian National University
\_.--._/<-------------------------------------------------------------------
v Martin Schwenke [EMAIL PROTECTED]