From ce9a0ccb72711855dfd994d0500c01e4417d09d5 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sun, 27 Sep 2009 00:27:21 +0000 Subject: [PATCH] * help.el (help-for-help-internal): Don't purecopy the text (bug#4560). * isearch.el (isearch-help-for-help-internal): Purecopy the second arg. * help-macro.el (make-help-screen): Avoid using an ambiguous function definition where the docstring could be taken for the return value. --- lisp/ChangeLog | 7 +++++++ lisp/help-macro.el | 2 +- lisp/help.el | 6 ++++-- lisp/isearch.el | 2 +- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9140b96cf8..9d12219081 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2009-09-27 Stefan Monnier + + * help.el (help-for-help-internal): Don't purecopy the text (bug#4560). + * isearch.el (isearch-help-for-help-internal): Purecopy the second arg. + * help-macro.el (make-help-screen): Avoid using an ambiguous function + definition where the docstring could be taken for the return value. + 2009-09-26 Glenn Morris * mail/rmailmm.el (rmail-mime-show-images, rmail-mime-bulk-handler): diff --git a/lisp/help-macro.el b/lisp/help-macro.el index c920ecbf43..802eb54916 100644 --- a/lisp/help-macro.el +++ b/lisp/help-macro.el @@ -90,7 +90,7 @@ When FNAME finally does get a command, it executes that command and then returns." (let ((doc-fn (intern (concat (symbol-name fname) "-doc")))) `(progn - (defun ,doc-fn () ,help-text) + (defun ,doc-fn () ,help-text nil) (defun ,fname () "Help command." (interactive) diff --git a/lisp/help.el b/lisp/help.el index 25703fba92..8b5efc88d8 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -203,7 +203,9 @@ specifies what to do when the user exits the help buffer." ;; It can't find this, but nobody will look. (make-help-screen help-for-help-internal (purecopy "Type a help option: [abcCdefFgiIkKlLmnprstvw.] C-[cdefmnoptw] or ?") - (purecopy + ;; Don't purecopy this one, because it's not evaluated (it's + ;; directly used as a docstring in a function definition, so it'll + ;; be moved to the DOC file anyway: no need for purecopying it). "You have typed %THIS-KEY%, the help character. Type a Help option: \(Use SPC or DEL to scroll through this text. Type \\\\[help-quit] to exit the Help command.) @@ -248,7 +250,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) diff --git a/lisp/isearch.el b/lisp/isearch.el index 752746f09c..bf2f0738d9 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -347,7 +347,7 @@ A value of nil means highlight all matches." (eval-when-compile (require 'help-macro)) (make-help-screen isearch-help-for-help-internal - "Type a help option: [bkm] or ?" + (purecopy "Type a help option: [bkm] or ?") "You have typed %THIS-KEY%, the help character. Type a Help option: \(Type \\\\[help-quit] to exit the Help command.) -- 2.20.1