X-Git-Url: https://www.fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=elisp.git;a=blobdiff_plain;f=vm;h=49104acde1c3bd84968b5d44f4f604ed1198ea2e;hp=a4f2b8026dece06e1c45360e67a9b9e4c1f4d7b7;hb=HEAD;hpb=0fd5d8a4f454a74b52be3336af7b5d4b252acd0c diff --git a/vm b/vm index a4f2b80..49104ac 100644 --- a/vm +++ b/vm @@ -35,15 +35,17 @@ ;; Store and restore the window configuration +(setq ff/window-configuration-before-vm nil) + (defadvice vm (before ff/store-window-configuration nil activate) - (unless (boundp 'ff/window-configuration-before-vm) + (unless ff/window-configuration-before-vm (setq ff/window-configuration-before-vm (current-window-configuration))) ) (defadvice vm-quit (after ff/restore-window-configuration nil activate) - (when (boundp 'ff/window-configuration-before-vm) + (when ff/window-configuration-before-vm (set-window-configuration ff/window-configuration-before-vm) - (makunbound 'ff/window-configuration-before-vm) + (setq ff/window-configuration-before-vm nil) ) ) @@ -518,7 +520,6 @@ an attachment") ) s)) - ;; You can not have a line starting with "From:" in a pure text ;; mail. The smtp server would add a leading character to prevent it. @@ -589,14 +590,14 @@ an attachment") ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; If we can, encrypt! -(autoload 'mc-install-write-mode "mailcrypt" nil t) -(autoload 'mc-install-read-mode "mailcrypt" nil t) +;; (autoload 'mc-install-write-mode "mailcrypt" nil t) +;; (autoload 'mc-install-read-mode "mailcrypt" nil t) -(add-hook 'vm-mode-hook 'mc-install-read-mode) -(add-hook 'vm-summary-mode-hook 'mc-install-read-mode) -(add-hook 'vm-virtual-mode-hook 'mc-install-read-mode) -(add-hook 'vm-mail-mode-hook 'mc-install-write-mode) -(add-hook 'vm-presentation-mode-hook 'mc-install-read-mode) +;; (add-hook 'vm-mode-hook 'mc-install-read-mode) +;; (add-hook 'vm-summary-mode-hook 'mc-install-read-mode) +;; (add-hook 'vm-virtual-mode-hook 'mc-install-read-mode) +;; (add-hook 'vm-mail-mode-hook 'mc-install-write-mode) +;; (add-hook 'vm-presentation-mode-hook 'mc-install-read-mode) ;; (defun ff/encrypt-mail-if-possible () (interactive) ;; (condition-case nil (mc-encrypt-message) @@ -641,6 +642,19 @@ an attachment") ;; (define-key vm-mail-mode-map [(shift iso-lefttab)] 'mail-mode-smart-tab) (define-key vm-mail-mode-map [(shift iso-lefttab)] 'bbdb-complete-name) +(defun ff/kill-to-signature () (interactive) + (save-excursion + (delete-region + (point) + (progn + (search-forward-regexp "^-- *$") + (- (match-beginning 0) 1)) + ) + ) + ) + +(define-key vm-mail-mode-map [(control c) (k)] 'ff/kill-to-signature) + ;; The definition of "\t" is forced through a hook defined in ;; vm-init.el, so I add mine. This is ugly. @@ -658,18 +672,21 @@ an attachment") (defun ff/first-buffer-in-mode (l m) (if l - (if (eq (save-excursion - (set-buffer (car l)) major-mode) m) + (if (eq + ;; (save-excursion (set-buffer (car l)) major-mode) + (with-current-buffer (car l) major-mode) + m) (car l) (ff/first-buffer-in-mode (cdr l) m)))) (defun ff/compose-mail (&optional force-new) - "Cycles through an existing buffers with major mode `mail-mode', + "Cycles through existing buffers with major mode `mail-mode', or invoke `vm-compose-mail' if none can be found or if FORCE-NEW is t." (interactive "P") (when (eq major-mode 'mail-mode) (bury-buffer)) (let ((buf (and (not force-new) + ;; (not (eq major-mode 'mail-mode)) (ff/first-buffer-in-mode (buffer-list) 'mail-mode)))) (if buf (switch-to-buffer buf) (vm-compose-mail)))) @@ -680,7 +697,7 @@ is t." ;; bbdb (load "bbdb") -(load "bbdb-hooks") +;; (load "bbdb-hooks") (when (load "bbdb-vm" t) @@ -737,7 +754,6 @@ instance, someone in bbdb named \"Paul Smith\" would generate an alias (vm-pipe-message-to-command (concat "munpack -t -C " dir)) (message "Wrote files to %s" dir) ) - ) )