GNU bug report logs -
#31388
27.0.50; message-mode hard-codes key bindings in docstring
Previous Next
Reported by: "Basil L. Contovounesios" <contovob <at> tcd.ie>
Date: Tue, 8 May 2018 19:07:02 UTC
Severity: minor
Tags: fixed, patch
Found in version 27.0.50
Done: "Basil L. Contovounesios" <contovob <at> tcd.ie>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 31388 in the body.
You can then email your comments to 31388 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
larsi <at> gnus.org, bug-gnu-emacs <at> gnu.org
:
bug#31388
; Package
emacs
.
(Tue, 08 May 2018 19:07:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Basil L. Contovounesios" <contovob <at> tcd.ie>
:
New bug report received and forwarded. Copy sent to
larsi <at> gnus.org, bug-gnu-emacs <at> gnu.org
.
(Tue, 08 May 2018 19:07:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
The docstring of message-mode currently hard-codes the bindings provided
by message-mode-map. For example:
1. emacs -Q
2. Evaluate:
(with-eval-after-load 'message
(define-key message-mode-map "\C-c\C-c" #'ignore))
3. C-x m
4. C-c ?
still reports "C-c C-c ‘message-send-and-exit’".
Is this intentional? I realise that this affords summary, custom
layout, and descriptions of the available bindings, but isn't it
confusing to report the wrong thing in the case that users customise
(or use packages which customise) their bindings?
One solution is to replace the hard-coded bindings with
\[command]-sequences; another to replace the whole listing with
\{message-mode-map}. In both cases, the binding listed for
message-insert-or-toggle-importance will be C-c C-u instead of
C-c C-f C-i, due to the higher precedence of the former. WDYT?
P.S. I have, over time, accumulated a set of 12 patches for message.el
with refactors such as defining message-mode-map in a single
(let ...) calculation, replacing '-quotes with #'-quotes where
applicable, removing calls to mapcar where the result is unused,
adding tests, etc. I also have a couple of minor and relevant
questions to ask. Would patches of this nature be welcome? If so,
should I send them here, submit a new bug report, or send mail to
emacs-devel?
Thanks,
--
Basil
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#31388
; Package
emacs
.
(Tue, 08 May 2018 19:13:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 31388 <at> debbugs.gnu.org (full text, mbox):
[0001-Do-not-hard-code-message-mode-keys-in-docstring.patch (text/x-diff, attachment)]
[Message part 2 (text/plain, inline)]
"Basil L. Contovounesios" <contovob <at> tcd.ie> writes:
> One solution is to replace the hard-coded bindings with
> \[command]-sequences; another to replace the whole listing with
> \{message-mode-map}. In both cases, the binding listed for
> message-insert-or-toggle-importance will be C-c C-u instead of
> C-c C-f C-i, due to the higher precedence of the former. WDYT?
I attach a patch as an example of doing the former.
The latter would probably look as follows:
[0001-Do-not-hard-code-message-mode-keys-in-docstring.patch (text/x-diff, inline)]
From e1b28796dc2c6b6828d73740dd98f4fd83771caa Mon Sep 17 00:00:00 2001
From: "Basil L. Contovounesios" <contovob <at> tcd.ie>
Date: Mon, 7 May 2018 16:42:41 +0100
Subject: [PATCH] Do not hard-code message-mode keys in docstring
* lisp/gnus/message.el (message-mode): Replace hard-coded bindings
in docstring with summary of message-mode-map.
---
lisp/gnus/message.el | 39 +++------------------------------------
1 file changed, 3 insertions(+), 36 deletions(-)
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 867c3d271b..a85925d94d 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -2893,42 +2893,9 @@ message--syntax-propertize
;;;###autoload
(define-derived-mode message-mode text-mode "Message"
"Major mode for editing mail and news to be sent.
-Like Text Mode but with these additional commands:\\<message-mode-map>
-C-c C-s `message-send' (send the message) C-c C-c `message-send-and-exit'
-C-c C-d Postpone sending the message C-c C-k Kill the message
-C-c C-f move to a header field (and create it if there isn't):
- C-c C-f C-t move to To C-c C-f C-s move to Subject
- C-c C-f C-c move to Cc C-c C-f C-b move to Bcc
- C-c C-f C-w move to Fcc C-c C-f C-r move to Reply-To
- C-c C-f C-u move to Summary C-c C-f C-n move to Newsgroups
- C-c C-f C-k move to Keywords C-c C-f C-d move to Distribution
- C-c C-f C-o move to From (\"Originator\")
- C-c C-f C-f move to Followup-To
- C-c C-f C-m move to Mail-Followup-To
- C-c C-f C-e move to Expires
- C-c C-f C-i cycle through Importance values
- C-c C-f s change subject and append \"(was: <Old Subject>)\"
- C-c C-f x crossposting with FollowUp-To header and note in body
- C-c C-f t replace To: header with contents of Cc: or Bcc:
- C-c C-f a Insert X-No-Archive: header and a note in the body
-C-c C-t `message-insert-to' (add a To header to a news followup)
-C-c C-l `message-to-list-only' (removes all but list address in to/cc)
-C-c C-n `message-insert-newsgroups' (add a Newsgroup header to a news reply)
-C-c C-b `message-goto-body' (move to beginning of message text).
-C-c C-i `message-goto-signature' (move to the beginning of the signature).
-C-c C-w `message-insert-signature' (insert `message-signature-file' file).
-C-c C-y `message-yank-original' (insert current message, if any).
-C-c C-q `message-fill-yanked-message' (fill what was yanked).
-C-c C-e `message-elide-region' (elide the text between point and mark).
-C-c C-v `message-delete-not-region' (remove the text outside the region).
-C-c C-z `message-kill-to-signature' (kill the text up to the signature).
-C-c C-r `message-caesar-buffer-body' (rot13 the message body).
-C-c C-a `mml-attach-file' (attach a file as MIME).
-C-c C-u `message-insert-or-toggle-importance' (insert or cycle importance).
-C-c M-n `message-insert-disposition-notification-to' (request receipt).
-C-c M-m `message-mark-inserted-region' (mark region with enclosing tags).
-C-c M-f `message-mark-insert-file' (insert file marked with enclosing tags).
-M-RET `message-newline-and-reformat' (break the line and reformat)."
+Like `text-mode', but with these additional commands:
+
+\\{message-mode-map}"
(set (make-local-variable 'message-reply-buffer) nil)
(set (make-local-variable 'message-inserted-headers) nil)
(set (make-local-variable 'message-send-actions) nil)
--
2.17.0
[Message part 4 (text/plain, inline)]
--
Basil
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#31388
; Package
emacs
.
(Mon, 13 May 2019 21:07:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 31388 <at> debbugs.gnu.org (full text, mbox):
"Basil L. Contovounesios" <contovob <at> tcd.ie> writes:
> I attach a patch as an example of doing the former.
> The latter would probably look as follows:
>
>>From e1b28796dc2c6b6828d73740dd98f4fd83771caa Mon Sep 17 00:00:00 2001
> From: "Basil L. Contovounesios" <contovob <at> tcd.ie>
> Date: Mon, 7 May 2018 16:42:41 +0100
> Subject: [PATCH] Do not hard-code message-mode keys in docstring
>
> * lisp/gnus/message.el (message-mode): Replace hard-coded bindings
> in docstring with summary of message-mode-map.
Looks OK to me.
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
Added tag(s) fixed.
Request was from
"Basil L. Contovounesios" <contovob <at> tcd.ie>
to
control <at> debbugs.gnu.org
.
(Mon, 13 May 2019 23:06:01 GMT)
Full text and
rfc822 format available.
bug closed, send any further explanations to
31388 <at> debbugs.gnu.org and "Basil L. Contovounesios" <contovob <at> tcd.ie>
Request was from
"Basil L. Contovounesios" <contovob <at> tcd.ie>
to
control <at> debbugs.gnu.org
.
(Mon, 13 May 2019 23:06:01 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#31388
; Package
emacs
.
(Mon, 13 May 2019 23:06:02 GMT)
Full text and
rfc822 format available.
Message #18 received at 31388-done <at> debbugs.gnu.org (full text, mbox):
tags 31388 fixed
close 31388
quit
Lars Ingebrigtsen <larsi <at> gnus.org> writes:
>>>From e1b28796dc2c6b6828d73740dd98f4fd83771caa Mon Sep 17 00:00:00 2001
>> From: "Basil L. Contovounesios" <contovob <at> tcd.ie>
>> Date: Mon, 7 May 2018 16:42:41 +0100
>> Subject: [PATCH] Do not hard-code message-mode keys in docstring
>>
>> * lisp/gnus/message.el (message-mode): Replace hard-coded bindings
>> in docstring with summary of message-mode-map.
>
> Looks OK to me.
Thanks, I pushed to master[1] and am therefore closing this report.
[1: 364d4e156d]: Do not hard-code message-mode keys in docstring
2019-05-13 23:58:45 +0100
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=364d4e156d80bff711d000bdb2e0ac765726c953
--
Basil
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 11 Jun 2019 11:24:10 GMT)
Full text and
rfc822 format available.
This bug report was last modified 4 years and 321 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.