[PATCH 1/1] emacs: fix notmuch-mua-reply point placement when signature involved

Tomi Ollila tomi.ollila at iki.fi
Thu Sep 5 07:22:21 PDT 2013


On Thu, Sep 05 2013, Jani Nikula <jani at nikula.org> wrote:

> On Wed, 04 Sep 2013, "Tomi.Ollila" <tomi.ollila at iki.fi> wrote:
>> From: Tomi Ollila <tomi.ollila at iki.fi>
>>
>> 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 (and `message-signature-setup-hook' not intervening) 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).
>>
>> Original patch from "Geoffrey H. Ferrari", continued with iterations
>> from Jani and Mark.
>
> Hi Tomi, I don't think you've sufficiently convinced me why we need all
> this complexity instead of just doing [1]. And if you do get me
> convinced, I'd like the reason to be in the commit message and in a
> comment above the piece of code in question.

(add-hook 'message-signature-setup-hook 
   (lambda () (insert "Insert this text before the citation not after.\n")))

>From emacs documentation:

message-signature-setup-hook is a variable defined in `message.el'.
Its value is nil

  This variable may be risky if used as a file-local variable.

Documentation:
Normal hook, run each time a new outgoing message is initialized.
It is run after the headers have been inserted and before
the signature is inserted.

You can customize this variable.


Adding the comments is a good idea -- if the above convinces you
I'll prepare comments along this idea.

> Cheers,
> Jani.

Tomi

>
>
> [1] id:cover.1377718199.git.jani at nikula.org
>
>
>
>
>> ---
>>  emacs/notmuch-mua.el | 12 ++++++++----
>>  1 file changed, 8 insertions(+), 4 deletions(-)
>>
>> diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el
>> index 2baae5f..0280c9f 100644
>> --- a/emacs/notmuch-mua.el
>> +++ b/emacs/notmuch-mua.el
>> @@ -192,10 +192,14 @@ list."
>>  
>>        ;; 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)))
>> +      (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
>>
>> _______________________________________________
>> notmuch mailing list
>> notmuch at notmuchmail.org
>> http://notmuchmail.org/mailman/listinfo/notmuch
> _______________________________________________
> notmuch mailing list
> notmuch at notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch
>

-- 
"kaik on mänt!"


More information about the notmuch mailing list