in your .emacs file.
+If you use Wanderlust, use
+
+ (add-hook 'gnus-startup-hook 'eweouz-insinuate-wl)
+
+instead.
+
- C-tab gets mapped to completing email addresses in sendmail-mode and
message mode
address book
Feature suggestions, patches and general feedback is of course
- welcome.
+ welcome. Patches in the form of a git branch against any of the ones
+ found on git://git.err.no/eweouz is preferred, but others are of
+ course also accepted.
-- Tollef Fog Heen <tfheen@err.no>
(defun eweouz-add-sender ()
"Add sender of current message"
(interactive)
-
(save-excursion
(set-buffer gnus-article-buffer)
- (let* ((from (mail-header-parse-address (gnus-fetch-field "From")))
- (record (list (cons 'email (car from))
- (cons 'name (cdr from)))))
- (eweouz-do-add record))))
+ (eweouz-do-add (mail-header-parse-address (gnus-fetch-field "From")))))
(defun eweouz-do-add (record)
(interactive)
- (let* ((name (cdr (assoc 'name record)))
- (email (cdr (assoc 'email record))))
+ (let* ((email (car record))
+ (name (cdr record)))
+ (message (format "%s" record))
(call-process eweouz-write-path nil nil nil "--id" "new" "--full-name" name
"--emails" email)))
-;;;###autoload
(defun eweouz-insinuate-gnus ()
"Call this function to hook EWEOUZ into Gnus."
(define-key gnus-summary-mode-map ":" 'eweouz-add-sender))
-;;;###autoload
(defun eweouz-insinuate-sendmail ()
"Call this function to hook EWEOUZ into sendmail (M-x mail)."
(define-key mail-mode-map [C-tab] 'eweouz-complete))
-;;;###autoload
(defun eweouz-insinuate-message ()
"Call this function to hook EWEOUZ into message-mode."
(define-key message-mode-map [C-tab] 'eweouz-complete))
+(defun eweouz-insinuate-wl ()
+ (define-key wl-draft-mode-map [C-tab] 'eweouz-complete)
+ (define-key wl-summary-mode-map ":" 'eweouz-add-sender-wl))
+
+(defun eweouz-add-sender-wl ()
+ "Add sender of current message"
+ (interactive)
+ (save-excursion
+ (set-buffer wl-message-buffer)
+ (let* ((from (std11-extract-address-components (std11-field-body "From")))
+ (record (list (cons 'email (cadr from))
+ (cons 'name (car from)))))
+ (eweouz-do-add record))))
+
(require 'vcard)
(provide 'eweouz)
+