From 8d335d1c3a2737a210690e491c79fcdce1d587a6 Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Fri, 6 Sep 2013 17:32:18 +0300 Subject: [PATCH] [PATCH 1/1] emacs: fix notmuch-mua-reply point placement when signature involved --- f7/f3495ce1bc27148b90133415cd7247a8d22bf0 | 104 ++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 f7/f3495ce1bc27148b90133415cd7247a8d22bf0 diff --git a/f7/f3495ce1bc27148b90133415cd7247a8d22bf0 b/f7/f3495ce1bc27148b90133415cd7247a8d22bf0 new file mode 100644 index 000000000..336bc93b1 --- /dev/null +++ b/f7/f3495ce1bc27148b90133415cd7247a8d22bf0 @@ -0,0 +1,104 @@ +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 F3532431FD9 + for ; Fri, 6 Sep 2013 07:32:37 -0700 (PDT) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + 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 SSF15qBw2Sms for ; + Fri, 6 Sep 2013 07:32:29 -0700 (PDT) +Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) + by olra.theworths.org (Postfix) with ESMTP id A1C3C431FBD + for ; Fri, 6 Sep 2013 07:32:29 -0700 (PDT) +Received: by guru.guru-group.fi (Postfix, from userid 501) + id 85AF5100063; Fri, 6 Sep 2013 17:32:23 +0300 (EEST) +From: Tomi Ollila +To: notmuch@notmuchmail.org +Subject: [PATCH 1/1] emacs: fix notmuch-mua-reply point placement when + signature involved +Date: Fri, 6 Sep 2013 17:32:18 +0300 +Message-Id: <1378477938-26020-1-git-send-email-tomi.ollila@iki.fi> +X-Mailer: git-send-email 1.8.0 +Cc: tomi.ollila@iki.fi +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, 06 Sep 2013 14:32:38 -0000 + +When composing a reply, notmuch-mua-reply attempts to cite the +the original message by inserting it before the user signature, if +one is present. The existing method used to search the signature +separator backward from the end of the buffer and then move one +line up. In case of variable `message-signature-insert-empty-line' +being nil this caused point to go to the beginning of +'--text follows this line--' +separator line, and citation was inserted there. +This change checks the value of `message-signature-insert-empty-line' +and doesn't move point if that is nil. Additional narrowing to +the body region ensures that point never goes to the separator line +(or beyond). +`message-signature-setup-hook' or `message-setup-hook' may already have +added some other content to the message body, therefore using simply +(message-goto-body) to move point to the beginning of body might lead +to unexpected results. + +Original patch from "Geoffrey H. Ferrari", continued with iterations +from Jani and Mark. +--- + +This is update to + +id:1378322458-30159-1-git-send-email-tomi.ollila@iki.fi + +with comment changes only. + +Tomi + + emacs/notmuch-mua.el | 15 ++++++++++----- + 1 file changed, 10 insertions(+), 5 deletions(-) + +diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el +index ff8149b..d41c0b3 100644 +--- a/emacs/notmuch-mua.el ++++ b/emacs/notmuch-mua.el +@@ -196,11 +196,16 @@ list." + nil (notmuch-mua-get-switch-function)))) + + ;; Insert the message body - but put it in front of the signature +- ;; if one is present +- (goto-char (point-max)) +- (if (re-search-backward message-signature-separator nil t) +- (forward-line -1) +- (goto-char (point-max))) ++ ;; if one is present, and after any other content ++ ;; message*setup-hooks may have added to the message body already. ++ (save-restriction ++ (message-goto-body) ++ (narrow-to-region (point) (point-max)) ++ (goto-char (point-max)) ++ (if (re-search-backward message-signature-separator nil t) ++ (if message-signature-insert-empty-line ++ (forward-line -1)) ++ (goto-char (point-max)))) + + (let ((from (plist-get original-headers :From)) + (date (plist-get original-headers :Date)) +-- +1.8.0 + -- 2.26.2