From: Mark Wooding Date: Thu, 14 Apr 2016 13:00:09 +0000 (+0100) Subject: Merge branch 'master' of https://git.distorted.org.uk/~mdw/profile X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/profile/commitdiff_plain/b76d1b814f813f9d5e692e002b1c8f644b79bc14?hp=0612a9149d46df422e11410d8ada66b78d3fe5d3 Merge branch 'master' of https://git.distorted.org.uk/~mdw/profile * 'master' of https://git.distorted.org.uk/~mdw/profile: dot/emacs (bbdb-canonicalize-net-hook): Ignore a personal address scheme. dot/emacs (bbdb-canonicalize-net-hook): Ignore uninteresting addresses. dot/emacs (bbdb-canonicalize-net-hook): Handle `nil' address. dot/emacs: Don't auto-snarf email addresses from mailing lists. dot/emacs: Squash away `blah+...@some.domain' suffixes for BBDB. dot/gnus-local.el.distorted: Now I have my own newscookie. dot/screenrc: Add tracking of activity in other windows. el/dot-emacs.el: More assertive zapping of faces. dot/emacs: Set `frame-background-mode' variable. dot/emacs: Move `C-x w d' to `C-c w d'. --- diff --git a/dot/emacs b/dot/emacs index b03ff68..c32d836 100644 --- a/dot/emacs +++ b/dot/emacs @@ -196,6 +196,7 @@ (trap (bbdb-initialize 'gnus 'sendmail 'message))) (setq bbdb-file "~/etc/brain/bbdb" bbdb-north-american-phone-numbers-p nil + bbdb-extract-address-components-func 'bbdb-extract-address-components bbdb/news-auto-create-p (lambda () (let ((group gnus-newsgroup-name)) @@ -208,6 +209,7 @@ "@\\(\\(dist\\|esc\\)orted\\.org\\.uk\\|odin\\.gg\\)" "\\|" "distorted\\.mdw@g\\(\\|oogle\\)mail.com" "\\|" "mwooding@\\(good\\|blackberry\\)\\.com" + "\\|" "mark\\.wooding@trustonic\\.com" "\\)$") bbdb-canonicalize-net-hook (lambda (addr) diff --git a/dot/fonts.conf b/dot/fonts.conf index a71e415..261b760 100644 --- a/dot/fonts.conf +++ b/dot/fonts.conf @@ -57,7 +57,7 @@ - + Geneva FreeSans diff --git a/el/dot-emacs.el b/el/dot-emacs.el index a1cba54..dd8dc2f 100644 --- a/el/dot-emacs.el +++ b/el/dot-emacs.el @@ -238,6 +238,32 @@ (defadvice markdown-check-change-for-wiki-link "Save match data around the `markdown-mode' `after-change-functions' hook." (save-match-data ad-do-it)) +;; Bug fix for `bbdb-canonicalize-address': on Emacs 24, `run-hook-with-args' +;; always returns nil, with the result that all email addresses are lost. +;; Replace the function entirely. +(defadvice bbdb-canonicalize-address + (around mdw-bug-fix activate compile) + "Don't use `run-hook-with-args', because that doesn't work." + (let ((net (ad-get-arg 0))) + + ;; Make sure this is a proper hook list. + (if (functionp bbdb-canonicalize-net-hook) + (setq bbdb-canonicalize-net-hook (list bbdb-canonicalize-net-hook))) + + ;; Iterate over the hooks until things converge. + (let ((donep nil)) + (while (not donep) + (let (next (changep nil) + hook (hooks bbdb-canonicalize-net-hook)) + (while hooks + (setq hook (pop hooks)) + (setq next (funcall hook net)) + (if (not (equal next net)) + (setq changep t + net next))) + (setq donep (not changep))))) + (setq ad-return-value net))) + ;; Transient mark mode hacks. (defadvice exchange-point-and-mark