dot/emacs: Turn on `view-read-only' by default.
[profile] / dot / emacs
index d8b036c..1d902a6 100644 (file)
--- a/dot/emacs
+++ b/dot/emacs
 ;; Emacs server behaviour.
 
 (and (or window-system (mdw-emacs-version-p 23))
+     (not mdw-fast-startup)
      (progn (setq server-temp-file-regexp (concat "^" tmpdir "\\|/draft$")
                  edit-server-new-frame nil
                  gnuserv-frame t)
     (trap (bbdb-initialize 'gnus 'sendmail 'message)))
 (setq bbdb-file "~/etc/brain/bbdb"
       bbdb-north-american-phone-numbers-p nil
+      bbdb-dwim-net-address-allow-redundancy t
       bbdb-extract-address-components-func 'bbdb-extract-address-components
       bbdb/news-auto-create-p
       (lambda ()
        (let ((group gnus-newsgroup-name))
-         (and (string-match "^nnimap\\+" group)
+         (and (string-match "^nn\\(imap\\|folder\\)\\+" group)
               (not (string-match ":\\(crap\\|spam\\|lists\\)\\." group)))))
       bbdb-user-mail-names
       (concat "^"
              "\\(" "\\(mdw\\|markw\\|root\\|postmaster\\)"
                    "\\([-+][^@]*\\|\\)"
                    "@\\(\\(dist\\|esc\\)orted\\.org\\.uk\\|odin\\.gg\\)"
+             "\\|" "\\(mdw\\(\\+[^@]*\\)?\\|0mdwk\\.[^@]*\\)" "@"
+                   "\\(chiark\\|slimy\\|coriolis\\)\\.greenend\\.org\\.uk"
              "\\|" "distorted\\.mdw@g\\(\\|oogle\\)mail.com"
              "\\|" "mwooding@\\(good\\|blackberry\\)\\.com"
              "\\|" "mark\\.wooding@trustonic\\.com"
       (lambda (addr)
        (cond ((null addr)
               nil)
-             ((or (string-match (concat "^reply-[0-9a-f]+-[0-9a-f]+_"
+             ((or (string-match "^mailer-daemon@" addr)
+                  (string-match "\.invalid$" addr)
+                  (string-match (concat "^reply-[0-9a-f]+-[0-9a-f]+_"
                                         "HTML-[0-9]+-[0-9]+-[0-9]+"
                                         "@\\(nationwide-communications\\."
                                         "co\\.uk\\)$")
 (setq-default truncate-partial-width-windows nil
              truncate-lines t)
 (setq default-indicate-empty-lines t)
+(setq view-read-only t)
 (setq whitespace-style
       '(trailing space-before-tab space-after-tab empty indentation face))
 (setq woman-use-own-frame nil          ;Keep man pages somewhere sensible
 (setq appt-display-interval 3)
 (setq appt-message-warning-time 10)
 (and (not mdw-fast-startup)
-     (trap (appt-activate 1)))
+     (trap (require 'org)
+          (require 'bbdb)
+          (appt-activate 1)))
 
 ;; Org-mode agenda.
 
 (display-time)
 (column-number-mode 1)
 (trap
-  (if window-system
+  (if (and window-system (not mdw-fast-startup))
       (let ((calendar-view-diary-initially-flag t))
        (calendar))))
 
             (background-color . "black")
             (foreground-color . "white"))
        (nil (menu-bar-lines . 0))))
+(let ((backg (frame-parameter nil 'background-color)))
+  (if (and backg window-system)
+      (push (cons 'background-color backg) default-frame-alist)))
 
 ;; Other frame fiddling.