From 9c4820f696c524942d424dae9b2be97a14c82bdd Mon Sep 17 00:00:00 2001 From: Mark Walters Date: Sat, 4 Feb 2012 17:09:10 +0000 Subject: [PATCH] [PATCH 2/2] emacs: Improve prompting for user address when replying. --- 9d/e32cc4a783acf89381d2ad3e4e61493901715d | 150 ++++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 9d/e32cc4a783acf89381d2ad3e4e61493901715d diff --git a/9d/e32cc4a783acf89381d2ad3e4e61493901715d b/9d/e32cc4a783acf89381d2ad3e4e61493901715d new file mode 100644 index 000000000..e28d0cbee --- /dev/null +++ b/9d/e32cc4a783acf89381d2ad3e4e61493901715d @@ -0,0 +1,150 @@ +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 47DDA431FC3 + for ; Sat, 4 Feb 2012 09:08:31 -0800 (PST) +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 AF+z8u0e4Fma for ; + Sat, 4 Feb 2012 09:08:30 -0800 (PST) +Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com + [209.85.212.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id E8AE6431FBF + for ; Sat, 4 Feb 2012 09:08:29 -0800 (PST) +Received: by mail-wi0-f181.google.com with SMTP id hi8so3640758wib.26 + for ; Sat, 04 Feb 2012 09:08:29 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; + h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; + bh=hdkgZUlD9Zrtxj6bogYYGvCVAH67HDTxhIxsZGhOnww=; + b=MOSCVPvnT2NoYjKz8tkZERmb+gbyFLIdDkppTE9BMh4XRQxJgnpZrWMx6X8q8dwDRQ + X2gt10DQ+G1juacJEv7/UvITH38BWBbOhaU6DVqIjAP/sbsHxIXCT7gY6+qrU+9pWKnt + scdNd8dg6THKKmylMbKQUkj4rtZTSxolJoVJE= +Received: by 10.180.92.229 with SMTP id cp5mr1183901wib.8.1328375309799; + Sat, 04 Feb 2012 09:08:29 -0800 (PST) +Received: from localhost (94-192-233-223.zone6.bethere.co.uk. + [94.192.233.223]) by mx.google.com with ESMTPS id + fv6sm28660983wib.8.2012.02.04.09.08.28 (version=TLSv1/SSLv3 cipher=OTHER); + Sat, 04 Feb 2012 09:08:29 -0800 (PST) +From: Mark Walters +To: notmuch@notmuchmail.org +Subject: [PATCH 2/2] emacs: Improve prompting for user address when replying. +Date: Sat, 4 Feb 2012 17:09:10 +0000 +Message-Id: <1328375350-10352-3-git-send-email-markwalters1009@gmail.com> +X-Mailer: git-send-email 1.7.2.3 +In-Reply-To: <1328375350-10352-1-git-send-email-markwalters1009@gmail.com> +References: <1328375350-10352-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: Sat, 04 Feb 2012 17:08:31 -0000 + +This patch uses the new --from option to notmuch reply to allow it to +prompt the user for the From: address in cases when the cli does not +know the "correct" from address. If the cli does not it either uses +the users default address or, if notmuch-always-prompt-for-sender +is set, prompts the user. +--- + emacs/notmuch-mua.el | 47 ++++++++++++++++++++++++++++------------------- + 1 files changed, 28 insertions(+), 19 deletions(-) + +diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el +index 41f82c2..36e62f9 100644 +--- a/emacs/notmuch-mua.el ++++ b/emacs/notmuch-mua.el +@@ -51,6 +51,24 @@ list." + + ;; + ++(defcustom notmuch-identities nil ++ "Identities that can be used as the From: address when composing a new message. ++ ++If this variable is left unset, then a list will be constructed from the ++name and addresses configured in the notmuch configuration file." ++ :type '(repeat string) ++ :group 'notmuch-send) ++ ++(defcustom notmuch-always-prompt-for-sender nil ++ "Always prompt for the From: address when composing or forwarding a message. ++ ++This is not taken into account when replying to a message, because in that case ++the From: header is already filled in by notmuch." ++ :type 'boolean ++ :group 'notmuch-send) ++ ++(defvar notmuch-mua-sender-history nil) ++ + (defun notmuch-mua-user-agent-full () + "Generate a `User-Agent:' string suitable for notmuch." + (concat (notmuch-mua-user-agent-notmuch) +@@ -75,7 +93,7 @@ list." + (defun notmuch-mua-reply (query-string &optional sender reply-all) + (let (headers + body +- (args '("reply"))) ++ (args '("reply" "--from=fallback-received"))) + (if notmuch-show-process-crypto + (setq args (append args '("--decrypt")))) + (if reply-all +@@ -99,6 +117,15 @@ list." + ;; If sender is non-nil, set the From: header to its value. + (when sender + (mail-header-set 'from sender headers)) ++ ;; If we do not have a From: header yet it means that ++ ;; notmuch-reply.c was not able to make a useful guess so we fill ++ ;; it in ourselves. ++ (when (string= "" (mail-header 'from headers)) ++ (if notmuch-always-prompt-for-sender ++ (setq sender (notmuch-mua-prompt-for-sender)) ++ (setq sender (concat ++ (notmuch-user-name) " <" (notmuch-user-primary-email) ">"))) ++ (mail-header-set 'from sender headers)) + (let + ;; Overlay the composition window on that being used to read + ;; the original message. +@@ -153,24 +180,6 @@ OTHER-ARGS are passed through to `message-mail'." + + (message-goto-to)) + +-(defcustom notmuch-identities nil +- "Identities that can be used as the From: address when composing a new message. +- +-If this variable is left unset, then a list will be constructed from the +-name and addresses configured in the notmuch configuration file." +- :type '(repeat string) +- :group 'notmuch-send) +- +-(defcustom notmuch-always-prompt-for-sender nil +- "Always prompt for the From: address when composing or forwarding a message. +- +-This is not taken into account when replying to a message, because in that case +-the From: header is already filled in by notmuch." +- :type 'boolean +- :group 'notmuch-send) +- +-(defvar notmuch-mua-sender-history nil) +- + (defun notmuch-mua-prompt-for-sender () + (interactive) + (let (name addresses one-name-only) +-- +1.7.2.3 + -- 2.26.2