Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 6A567431FBC for ; Fri, 5 Jul 2013 11:11:40 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: 0.201 X-Spam-Level: X-Spam-Status: No, score=0.201 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id E1fjAWl5jdHU for ; Fri, 5 Jul 2013 11:11:34 -0700 (PDT) Received: from mail-ee0-f54.google.com (mail-ee0-f54.google.com [74.125.83.54]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id 9A3F7431FBD for ; Fri, 5 Jul 2013 11:11:30 -0700 (PDT) Received: by mail-ee0-f54.google.com with SMTP id t10so1542331eei.13 for ; Fri, 05 Jul 2013 11:11:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=1mHos2NmhM7+dtOkuDc+2fT2ayej6PJKZU8iKRCkc1Y=; b=i6yiWpfV4E76B82+E2EJTKpE+OOdbycUZlHdTxtOwxt1Di3piIFpZW4AUGLN/FySBI C4Un1NtYEIBMZdODmXrbOnMO3nj0XNSQRafsGEBuaXGp6zaX7H5KaLfZXnDAqMNoW6nl sa8u8DgYAcZQbk0a417KDhSlYT1S/GX3AhlmnXugCtZs1pu4yXDdJnkkxOKTt0l/Qmil nl+6zAfOmkcvUm7O/kp0PusXoSz8VH9iyu2z3g5po4hlwNtAkXUWhBzoxwB0WpOSq9St DJBP6UsT5j5CTMIQLe1S+61UUjIGYPi878j6SGUofDpueumMKRD6+f1dL3kR5KjLpsKM /z5A== X-Received: by 10.14.246.197 with SMTP id q45mr13654327eer.15.1373047888182; Fri, 05 Jul 2013 11:11:28 -0700 (PDT) Received: from localhost (93-97-24-31.zone5.bethere.co.uk. [93.97.24.31]) by mx.google.com with ESMTPSA id y1sm16005853eew.3.2013.07.05.11.11.27 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Fri, 05 Jul 2013 11:11:27 -0700 (PDT) From: Mark Walters To: notmuch@notmuchmail.org Subject: [PATCH 02/11] contrib: pick: Link in notmuch-show-pipe-message Date: Fri, 5 Jul 2013 19:11:09 +0100 Message-Id: <1373047878-20822-3-git-send-email-markwalters1009@gmail.com> X-Mailer: git-send-email 1.7.9.1 In-Reply-To: <1373047878-20822-1-git-send-email-markwalters1009@gmail.com> References: <1373047878-20822-1-git-send-email-markwalters1009@gmail.com> X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Jul 2013 18:11:40 -0000 Since we can now use show functions directly in pick we can drop pick-pipe-message. --- contrib/notmuch-pick/notmuch-pick.el | 33 ++++----------------------------- 1 files changed, 4 insertions(+), 29 deletions(-) diff --git a/contrib/notmuch-pick/notmuch-pick.el b/contrib/notmuch-pick/notmuch-pick.el index d07f393..08bdc11 100644 --- a/contrib/notmuch-pick/notmuch-pick.el +++ b/contrib/notmuch-pick/notmuch-pick.el @@ -190,6 +190,10 @@ if the user has loaded a different buffer in that window.") (defvar notmuch-pick-mode-map (let ((map (make-sparse-keymap))) (define-key map [mouse-1] 'notmuch-pick-show-message) + ;; these use notmuch-show functions directly + (define-key map "|" 'notmuch-show-pipe-message) + + ;; The main pick bindings (define-key map "q" 'notmuch-pick-quit) (define-key map "x" 'notmuch-pick-quit) (define-key map "?" 'notmuch-help) @@ -205,7 +209,6 @@ if the user has loaded a different buffer in that window.") (define-key map "p" 'notmuch-pick-prev-matching-message) (define-key map "N" 'notmuch-pick-next-message) (define-key map "P" 'notmuch-pick-prev-message) - (define-key map "|" 'notmuch-pick-pipe-message) (define-key map "-" 'notmuch-pick-remove-tag) (define-key map "+" 'notmuch-pick-add-tag) (define-key map " " 'notmuch-pick-scroll-or-next) @@ -586,34 +589,6 @@ message will be \"unarchived\", i.e. the tag changes in (notmuch-pick-close-message-window) (notmuch-mua-new-reply (notmuch-pick-get-message-id) prompt-for-sender nil)) -;; Shamelessly stolen from notmuch-show.el: maybe should be unified. -(defun notmuch-pick-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 *notmuch-pipe* buffer. - -When invoked with a prefix argument, the command will receive all -open messages in the current thread (formatted as an mbox) rather -than only the current message." - (interactive "sPipe message to command: ") - (let ((shell-command - (concat notmuch-command " show --format=raw " - (shell-quote-argument (notmuch-pick-get-message-id)) " | " command)) - (buf (get-buffer-create (concat "*notmuch-pipe*")))) - (with-current-buffer buf - (setq buffer-read-only nil) - (erase-buffer) - (let ((exit-code (call-process-shell-command shell-command nil buf))) - (goto-char (point-max)) - (set-buffer-modified-p nil) - (setq buffer-read-only t) - (unless (zerop exit-code) - (switch-to-buffer-other-window buf) - (message (format "Command '%s' exited abnormally with code %d" - shell-command exit-code))))))) - (defun notmuch-pick-clean-address (address) "Try to clean a single email ADDRESS for display. Return AUTHOR_NAME if present, otherwise return AUTHOR_EMAIL. Return -- 1.7.9.1