blob: 809a63dc7aaf5a8e2a2cc7099498bed9505a5e43 (
plain) (
tree)
|
|
;; -*- Emacs-Lisp -*-
(setq vm-imap-account-alist
'(
("imap:localhost:143:*:login:ryan:*" "local")
("imap-ssl:imap.google.com:993:*:login:ryanakca:*" "gmail")
("imap-ssl:rakavan.mail.mit.edu:993:*:login:rakavan:*" "MIT")
)
)
(setq vm-primary-inbox "imap:localhost:143:INBOX:login:ryan:*")
(setq vm-imap-folder-cache-directory "~/.vm-cache")
; Setup coloring
(require 'u-vm-color)
(add-hook 'vm-select-message-hook 'u-vm-color-fontify-buffer)
(add-hook 'vm-summary-mode-hook 'u-vm-color-summary-mode)
(defadvice vm-fill-paragraphs-containing-long-lines
(after u-vm-color activate)
(u-vm-color-fontify-buffer))
(defadvice vm-show-current-message (after u-vm-color activate)
(u-vm-color-fontify-buffer-even-more))
(defadvice vm-decode-mime-message (after u-vm-color activate)
(u-vm-color-fontify-buffer-even-more))
;; fill paragraphs to 72 chars
(setq vm-fill-paragraphs-containing-long-lines-in-reply 72)
(setq vm-word-wrap-paragraphs-in-reply t)
; Setup a shortcut to the whole visit-imap-folder nonsense
(defalias 'imap 'vm-visit-imap-folder)
; Keep the -> line centered
(setq vm-auto-center-summary t)
; Obey FCC
(add-hook 'mail-send-hook 'vm-imap-save-composition)
;; Use a sendmail program
(setq send-mail-function 'sendmail-send-it)
; Enable multiple sender profiles
(require 'vm-pcrisis)
(vmpc-my-identities "rak@debian.org" "ryanakca@gmail.com"
"ryan.kavanagh@queensu.ca" "9rak@queensu.ca"
"ryanakca@kubuntu.org" "ryanakca@ubuntu.com"
"ryan@cs.queensu.ca" "ryank@cs.mcgill.ca"
"ryan.kavanagh@mail.mcgill.ca")
(setq vmpc-conditions
'( ("QueensU"
(vmpc-folder-match ".*QueensU.*") )
("To Debian"
(vmpc-header-match "To" ".*debian.org") )
("To Queensu"
(vmpc-header-match "To" ".*@queensu.ca") )
("To Queens CS"
(vmpc-header-match "To" "ryan@cs.queensu.ca") )
("To Ubuntu"
(vmpc-header-match "To" ".*@ubuntu.com") )
("To Kubuntu"
(vmpc-header-match "To" ".*@kubuntu.org") )
("default"
(vmpc-none-true-yet) )
) )
(setq vmpc-actions
'( ("From Queens"
(vmpc-composition-buffer
(setq user-mail-address "ryan.kavanagh@queensu.ca") )
(vmpc-substitute-header "From" "Ryan Kavanagh <ryan.kavanagh@queensu.ca>")
(vmpc-substitute-header "IMAP-FCC" "local:QueensU.Sent Items") )
("From Queens CS"
(vmpc-composition-buffer
(setq user-mail-address "ryan@cs.queensu.ca") )
(vmpc-substitute-header "From" "Ryan Kavanagh <ryan@cs.queensu.ca>") )
("From Debian"
(vmpc-composition-buffer
(setq user-mail-address "rak@debian.org") )
(vmpc-substitute-header "From" "Ryan Kavanagh <rak@debian.org>") )
("From Ubuntu"
(vmpc-composition-buffer
(setq user-mail-address "ryanakca@ubuntu.com") )
(vmpc-substitute-header "From" "Ryan Kavanagh <ryanakca@ubuntu.com") )
("From Kubuntu"
(vmpc-composition-buffer
(setq user-mail-address "ryanakca@kubuntu.org") )
(vmpc-substitute-header "From" "Ryan Kavanagh <ryanakca@kubuntu.org") )
("prompt"
(vmpc-prompt-for-profile) )
) )
;; Fallback rules
(setq vmpc-default-rules
'( ("To Queensu" "From Queens")
("To Queens CS" "From Queens CS")
("To Debian" "From Debian")
("default" "From Debian")
) )
;; Rules for mail created with vm-mail
(setq vmpc-newmail-rules vmpc-default-rules)
;; Rules for mail created with vm-mail-from-folder
(setq vmpc-mail-rules vmpc-default-rules)
;; Rules for mail created with vm-reply
(setq vmpc-reply-rules
'( ("To Debian" "From Debian")
("To Queensu" "From Queens")
("To Queens CS" "From Queens CS")
("To Ubuntu" "From Ubuntu")
("To Kubuntu" "From Kubuntu")
) )
;; Store login info in .authinfo.gpg
(require 'auth-source)
;; Display whole message, require <SPC> to mark as read
(setq vm-preview-lines t)
;; bind ! to flag a message
(define-key vm-mode-map "!" 'vm-toggle-flag-message)
;; We'll always be saving to an imap server
(define-key vm-mode-map "s" 'vm-save-message-to-imap-folder)
;; We'll always be switching to an imap server
(define-key vm-mode-map "v" 'vm-visit-imap-folder)
;; assume we're saving to the same imap server
(setq vm-imap-save-to-server t)
;; delete a message after saving it
(setq vm-delete-after-saving t)
;; move to the next message after deleting
(setq vm-move-after-deleting t)
;; move to the next message after reading
(setq vm-move-after-reading t)
;; ask before creating a new folder to save to
(setq vm-confirm-new-folders t)
;; Automatically verify mime signatures
(setq vm-mime-verify-signatures t)
;; Ident threads
(setq-default vm-summary-show-threads t)
;; Don't try to load entire messages into memory at startup.
(setq vm-enable-external-messages '(imap))
(setq vm-imap-max-message-size 0)
;; Set attribution format
(setq vm-included-text-attribution-format "On %w, %m %2d, %y at %h %z, %F wrote:
")
;; Prefix included text by "> "
(setq vm-included-text-prefix "> ")
;; include text in reply
(setq vm-include-text-basic t)
;; summary format
(setq vm-summary-format "%n %*%a %-17.17F %2y %-3.3m %2d (%-4l) %4l/%-5c %I\"%s\"
")
;;; BBDB
(require 'bbdb-autoloads)
(require 'bbdb)
(bbdb-initialize 'vm); 'mail 'message)
;; The following two lines have BBDB automatically add addresses
(bbdb-mua-auto-update-init 'vm); 'mail 'message)
(setq bbdb-update-records-p 'create)
(setq bbdb-mua-update-interactive-p '(create . create))
;; Offer to save the database
(setq bbdb-offer-save t)
;; Use vm to send mail
(setq bbdb-send-mail-style 'vm)
;; Use a horizontal split
(setq bbdb-mua-pop-up 'horiz)
;; Maximum height of BBDB popup size for vertical split
(setq bbdb-mua-pop-up-window-size 10)
;; Maximum width of BBDB popup size for horizontal split
(setq bbdb-horiz-pop-up-window-size '(80 . 0.3))
;; Don't add addresses matching the following regexp to our DB
(setq bbdb-ignore-some-messages-alist
'((("From" "CC" "Reply-To") . ".*@bugs.\\(debian.org\\|launchpad.net\\)\\|.*@.*.launchpad.net\\|noreply\\|.*facebook.com")
(("To" "Sender") . "noreply")))
;; (setq bbdb/mail-auto-create-p 'bbdb-ignore-some-messages-hook)
;; Add all addresses in an email
(setq bbdb-message-all-addresses t)
;; ???
(setq bbdb-offer-to-create t)
;; Add notes when updating a record
(add-hook 'bbdb-notice-mail-hook 'bbdb-auto-notes)
;; And track the following:
(setq bbdb-auto-notes-rules
(list
'("Organization"
(".*" organization "\\1" nil))
'("User-Agent"
(".*" mailer identity nil))
'("X-Mailer"
(".*" mailer identity nil))
'("X-Newsreader"
(".*" mailer identity nil))))
;; There is more than one John Smith in the world
(setq bbdb-allow-duplicates t)
;; Allow cycling and tab completion of emails when composing
;;(setq bbdb-complete-mail nil t)
(setq bbdb-complete-mail-allow-cycling t)
;; signature
(setq mail-signature t)
(setq mail-signature-file "~/.signature")
;; gpg?
(require 'vm-pgg)
; prompt for signing
(add-hook 'vm-mail-send-hook 'vm-pgg-ask-hook t)
;; shortcut to read theads
(fset 'ryan-read-thread2
(lambda (&optional arg) "Keyboard macro." (interactive "p") (kmacro-exec-ring-item (quote ("MTMn.Mu\356" 0 "%d")) arg)))
(global-set-key [3 18] 'ryan-read-thread2)
;; vim: set filetype=lisp:
|