From: Carl Worth Date: Thu, 5 Nov 2009 00:54:09 +0000 (-0800) Subject: notmuch.el: Add a simple command to pipe a message to a process. X-Git-Tag: 0.1~571 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=19993ea33b618b054398244114d6e1181a34cb84;p=notmuch.git notmuch.el: Add a simple command to pipe a message to a process. With the obvious keybinding. --- diff --git a/notmuch.el b/notmuch.el index 50e573dd..cd5c8964 100644 --- a/notmuch.el +++ b/notmuch.el @@ -44,6 +44,7 @@ (define-key map "-" 'notmuch-show-remove-tag) (define-key map (kbd "DEL") 'notmuch-show-rewind) (define-key map " " 'notmuch-show-advance-marking-read-and-archiving) + (define-key map "|" 'notmuch-show-pipe-message) map) "Keymap for \"notmuch show\" buffers.") (fset 'notmuch-show-mode-map notmuch-show-mode-map) @@ -187,6 +188,15 @@ buffer." (interactive) (view-file (notmuch-show-get-filename))) +(defun notmuch-show-pipe-message (command) + "Pipe the contents of the current message to the given command. + +The given command will be executed with the raw contents of the +current email message as stdin. Anything printed by the command +to stdout or stderr will appear in the *Messages* buffer." + (interactive "sPipe message to command: ") + (apply 'start-process-shell-command "notmuch-pipe-command" "*notmuch-pipe*" (split-string (concat command " < " (notmuch-show-get-filename))))) + (defun notmuch-show-move-to-current-message-summary-line () "Move to the beginning of the one-line summary of the current message.