diff options
author | Phil Sainty <psainty@orcon.net.nz> | 2017-10-16 23:38:42 +1300 |
---|---|---|
committer | Noam Postavsky <npostavs@gmail.com> | 2017-10-31 08:20:30 -0400 |
commit | 3e7ebbe1bd5d33476190c789d17e4dd2d5f1bdfb (patch) | |
tree | 9b4eb6814ee124c10d1b4e2dc4c06385a160a515 /lisp/emacs-lisp | |
parent | 9c8fe0248b95b1faa9f97d14fe16d3356130dee8 (diff) | |
download | emacs-3e7ebbe1bd5d33476190c789d17e4dd2d5f1bdfb.tar.gz emacs-3e7ebbe1bd5d33476190c789d17e4dd2d5f1bdfb.tar.bz2 emacs-3e7ebbe1bd5d33476190c789d17e4dd2d5f1bdfb.zip |
Don't clobber docstrings of explicitly-defined mode hook variables
* lisp/emacs-lisp/derived.el (define-derived-mode):
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): When defining the
mode hook variable, do not clobber pre-existing docstrings.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/derived.el | 8 | ||||
-rw-r--r-- | lisp/emacs-lisp/easy-mmode.el | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index 3fa3818526c..751291afa88 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el @@ -203,11 +203,13 @@ See Info node `(elisp)Derived Modes' for more details." parent child docstring syntax abbrev)) `(progn - (defvar ,hook nil - ,(format "Hook run after entering %s mode. + (defvar ,hook nil) + (unless (get ',hook 'variable-documentation) + (put ',hook 'variable-documentation + ,(format "Hook run after entering %s mode. No problems result if this variable is not bound. `add-hook' automatically binds it. (This is true for all hook variables.)" - name)) + name))) (unless (boundp ',map) (put ',map 'definition-name ',child)) (with-no-warnings (defvar ,map (make-sparse-keymap))) diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el index bf087fc2e9a..ac8dcc69d21 100644 --- a/lisp/emacs-lisp/easy-mmode.el +++ b/lisp/emacs-lisp/easy-mmode.el @@ -309,11 +309,13 @@ the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. ;; up-to-here. :autoload-end - (defvar ,hook nil - ,(format "Hook run after entering or leaving `%s'. + (defvar ,hook nil) + (unless (get ',hook 'variable-documentation) + (put ',hook 'variable-documentation + ,(format "Hook run after entering or leaving `%s'. No problems result if this variable is not bound. `add-hook' automatically binds it. (This is true for all hook variables.)" - modefun)) + modefun))) ;; Define the minor-mode keymap. ,(unless (symbolp keymap) ;nil is also a symbol. |