From: Dan Nicolaescu <dann@ics.uci.edu>
To: bug-gnu-emacs <bug-gnu-emacs@gnu.org>
Subject: bug#4429: purecopy calls needed for :help and in menu-bar.el
Date: Mon, 14 Sep 2009 11:43:18 -0700 (PDT) [thread overview]
Message-ID: <200909141843.n8EIhIpg023585@godzilla.ics.uci.edu> (raw)
emacs/lisp/bindings.el has purecopy calls for menu-item names, but not
for the corresponding :help. Any reason not to add those purecopy calls?
emacs/lisp/menu-bar.el does not have purecopy calls for any menu-items,
and it contains quite a few of them. Any reason not to add purecopy
calls there?
The patch below adds a purecopy call to emacs/lisp/help.el
Is there anything else that could benefit from purecopy calls?
Here's some changes that I have in my local tree. OK to check these in?
Index: lisp/bindings.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/bindings.el,v
retrieving revision 1.224
diff -u -3 -p -r1.224 bindings.el
--- lisp/bindings.el 11 Sep 2009 06:38:44 -0000 1.224
+++ lisp/bindings.el 13 Sep 2009 21:07:47 -0000
@@ -507,49 +507,49 @@ Switch to the most recently selected buf
;; Global ones can go on the menubar (Options --> Show/Hide).
(define-key mode-line-mode-menu [overwrite-mode]
`(menu-item ,(purecopy "Overwrite (Ovwrt)") overwrite-mode
- :help "Overwrite mode: typed characters replace existing text"
+ :help ,(purecopy "Overwrite mode: typed characters replace existing text")
:button (:toggle . overwrite-mode)))
(define-key mode-line-mode-menu [outline-minor-mode]
`(menu-item ,(purecopy "Outline (Outl)") outline-minor-mode
;; XXX: This needs a good, brief description.
- :help ""
+ :help ,(purecopy "")
:button (:toggle . (bound-and-true-p outline-minor-mode))))
(define-key mode-line-mode-menu [highlight-changes-mode]
`(menu-item ,(purecopy "Highlight changes (Chg)") highlight-changes-mode
- :help "Show changes in the buffer in a distinctive color"
+ :help ,(purecopy "Show changes in the buffer in a distinctive color")
:button (:toggle . (bound-and-true-p highlight-changes-mode))))
(define-key mode-line-mode-menu [hide-ifdef-mode]
`(menu-item ,(purecopy "Hide ifdef (Ifdef)") hide-ifdef-mode
- :help "Show/Hide code within #ifdef constructs"
+ :help ,(purecopy "Show/Hide code within #ifdef constructs")
:button (:toggle . (bound-and-true-p hide-ifdef-mode))))
(define-key mode-line-mode-menu [glasses-mode]
`(menu-item ,(purecopy "Glasses (o^o)") glasses-mode
- :help "Insert virtual separators to make long identifiers easy to read"
+ :help ,(purecopy "Insert virtual separators to make long identifiers easy to read")
:button (:toggle . (bound-and-true-p glasses-mode))))
(define-key mode-line-mode-menu [font-lock-mode]
`(menu-item ,(purecopy "Font Lock") font-lock-mode
- :help "Syntax coloring"
+ :help ,(purecopy "Syntax coloring")
:button (:toggle . font-lock-mode)))
(define-key mode-line-mode-menu [flyspell-mode]
`(menu-item ,(purecopy "Flyspell (Fly)") flyspell-mode
- :help "Spell checking on the fly"
+ :help ,(purecopy "Spell checking on the fly")
:button (:toggle . (bound-and-true-p flyspell-mode))))
(define-key mode-line-mode-menu [auto-revert-tail-mode]
`(menu-item ,(purecopy "Auto revert tail (Tail)") auto-revert-tail-mode
- :help "Revert the tail of the buffer when buffer grows"
+ :help ,(purecopy "Revert the tail of the buffer when buffer grows")
:enable (buffer-file-name)
:button (:toggle . (bound-and-true-p auto-revert-tail-mode))))
(define-key mode-line-mode-menu [auto-revert-mode]
`(menu-item ,(purecopy "Auto revert (ARev)") auto-revert-mode
- :help "Revert the buffer when the file on disk changes"
+ :help ,(purecopy "Revert the buffer when the file on disk changes")
:button (:toggle . (bound-and-true-p auto-revert-mode))))
(define-key mode-line-mode-menu [auto-fill-mode]
`(menu-item ,(purecopy "Auto fill (Fill)") auto-fill-mode
- :help "Automatically insert new lines"
+ :help ,(purecopy "Automatically insert new lines")
:button (:toggle . auto-fill-function)))
(define-key mode-line-mode-menu [abbrev-mode]
`(menu-item ,(purecopy "Abbrev (Abbrev)") abbrev-mode
- :help "Automatically expand abbreviations"
+ :help ,(purecopy "Automatically expand abbreviations")
:button (:toggle . abbrev-mode)))
(defun mode-line-minor-mode-help (event)
Index: lisp/help.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/help.el,v
retrieving revision 1.347
diff -u -3 -p -r1.347 help.el
--- lisp/help.el 19 Aug 2009 18:07:10 -0000 1.347
+++ lisp/help.el 13 Sep 2009 21:07:47 -0000
@@ -202,7 +202,8 @@ specifies what to do when the user exits
(defalias 'help-for-help 'help-for-help-internal)
;; It can't find this, but nobody will look.
(make-help-screen help-for-help-internal
- "Type a help option: [abcCdefFgiIkKlLmnprstvw.] C-[cdefmnoptw] or ?"
+ (purecopy "Type a help option: [abcCdefFgiIkKlLmnprstvw.] C-[cdefmnoptw] or ?")
+ (purecopy
"You have typed %THIS-KEY%, the help character. Type a Help option:
\(Use SPC or DEL to scroll through this text. Type \\<help-map>\\[help-quit] to exit the Help command.)
@@ -247,7 +248,7 @@ C-n News of recent Emacs changes
C-o Emacs ordering and distribution information.
C-p Info about known Emacs problems.
C-t Emacs TODO list.
-C-w Information on absence of warranty for GNU Emacs."
+C-w Information on absence of warranty for GNU Emacs.")
help-map)
next reply other threads:[~2009-09-14 18:43 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-14 18:43 Dan Nicolaescu [this message]
2009-09-14 21:59 ` bug#4429: purecopy calls needed for :help and in menu-bar.el Stefan Monnier
2009-09-16 10:50 ` Dan Nicolaescu
2009-09-16 13:20 ` Stefan Monnier
2009-10-14 20:32 ` Juri Linkov
2009-10-15 3:18 ` Stefan Monnier
2009-10-15 22:30 ` Juri Linkov
2009-11-03 6:45 ` Dan Nicolaescu
2009-11-03 7:29 ` Juri Linkov
2009-11-04 1:50 ` Dan Nicolaescu
2009-11-04 2:55 ` Juri Linkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200909141843.n8EIhIpg023585@godzilla.ics.uci.edu \
--to=dann@ics.uci.edu \
--cc=4429@emacsbugs.donarmstrong.com \
--cc=bug-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.