emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master d262138: * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Imp


From: Stefan Monnier
Subject: master d262138: * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Improve `C-h f` output
Date: Fri, 16 Apr 2021 23:40:59 -0400 (EDT)

branch: master
commit d2621383834e6296bbe65739b3dee785d711e1d5
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>

    * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Improve `C-h f` output
    
    Suggested by Michael Heerdegen <michael_heerdegen@web.de>.
---
 lisp/emacs-lisp/easy-mmode.el | 38 ++++++++++++++++++++------------------
 1 file changed, 20 insertions(+), 18 deletions(-)

diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index e23ff5a..0e4bfa8 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -116,7 +116,7 @@ it is disabled.")
                                   doc nil nil 1)))))
 
 ;;;###autoload
-(defalias 'easy-mmode-define-minor-mode 'define-minor-mode)
+(defalias 'easy-mmode-define-minor-mode #'define-minor-mode)
 ;;;###autoload
 (defmacro define-minor-mode (mode doc &optional init-value lighter keymap 
&rest body)
   "Define a new minor mode MODE.
@@ -143,9 +143,9 @@ BODY contains code to execute each time the mode is enabled 
or disabled.
   It is executed after toggling the mode, and before running MODE-hook.
   Before the actual body code, you can write keyword arguments, i.e.
   alternating keywords and values.  If you provide BODY, then you must
-  provide at least one keyword argument.  The following special
-  keywords are supported (other keywords are passed to `defcustom' if
-  the minor mode is global):
+  provide at least one keyword argument (e.g. `:lighter nil`).
+  The following special keywords are supported (other keywords are passed
+  to `defcustom' if the minor mode is global):
 
 :global GLOBAL If non-nil specifies that the minor mode is not meant to be
                buffer-local, so don't make the variable MODE buffer-local.
@@ -186,9 +186,11 @@ For example, you could write
     ...BODY CODE...)
 
 For backward compatibility with the Emacs<21 calling convention,
-BODY can also start with the triplet INIT-VALUE LIGHTER KEYMAP."
+the keywords can also be preceded by the obsolete triplet
+INIT-VALUE LIGHTER KEYMAP.
+
+\(fn MODE DOC [KEYWORD VAL ...] &rest BODY)"
   (declare (doc-string 2)
-           (advertised-calling-convention (mode doc &rest body) "28.1")
            (debug (&define name string-or-null-p
                           [&optional [&not keywordp] sexp
                            &optional [&not keywordp] sexp
@@ -267,7 +269,7 @@ BODY can also start with the triplet INIT-VALUE LIGHTER 
KEYMAP."
     (unless set (setq set '(:set #'custom-set-minor-mode)))
 
     (unless initialize
-      (setq initialize '(:initialize 'custom-initialize-default)))
+      (setq initialize '(:initialize #'custom-initialize-default)))
 
     ;; TODO? Mark booleans as safe if booleanp?  Eg abbrev-mode.
     (unless type (setq type '(:type 'boolean)))
@@ -405,9 +407,9 @@ No problems result if this variable is not bound.
 ;;;
 
 ;;;###autoload
-(defalias 'easy-mmode-define-global-mode 'define-globalized-minor-mode)
+(defalias 'easy-mmode-define-global-mode #'define-globalized-minor-mode)
 ;;;###autoload
-(defalias 'define-global-minor-mode 'define-globalized-minor-mode)
+(defalias 'define-global-minor-mode #'define-globalized-minor-mode)
 ;;;###autoload
 (defmacro define-globalized-minor-mode (global-mode mode turn-on &rest body)
   "Make a global mode GLOBAL-MODE corresponding to buffer-local minor MODE.
@@ -509,12 +511,12 @@ disable it.  If called from Lisp, enable the mode if ARG 
is omitted or nil.\n\n"
         (if ,global-mode
             (progn
               (add-hook 'after-change-major-mode-hook
-                        ',MODE-enable-in-buffers)
-              (add-hook 'find-file-hook ',MODE-check-buffers)
-              (add-hook 'change-major-mode-hook ',MODE-cmhh))
-          (remove-hook 'after-change-major-mode-hook ',MODE-enable-in-buffers)
-          (remove-hook 'find-file-hook ',MODE-check-buffers)
-          (remove-hook 'change-major-mode-hook ',MODE-cmhh))
+                        #',MODE-enable-in-buffers)
+              (add-hook 'find-file-hook #',MODE-check-buffers)
+              (add-hook 'change-major-mode-hook #',MODE-cmhh))
+          (remove-hook 'after-change-major-mode-hook #',MODE-enable-in-buffers)
+          (remove-hook 'find-file-hook #',MODE-check-buffers)
+          (remove-hook 'change-major-mode-hook #',MODE-cmhh))
 
         ;; Go through existing buffers.
         (dolist (buf (buffer-list))
@@ -554,7 +556,7 @@ list."
 
        ;; A function which checks whether MODE has been disabled in the major
        ;; mode hook which has just been run.
-       (add-hook ',minor-MODE-hook ',MODE-set-explicitly)
+       (add-hook ',minor-MODE-hook #',MODE-set-explicitly)
 
        ;; List of buffers left to process.
        (defvar ,MODE-buffers nil)
@@ -581,13 +583,13 @@ list."
 
        (defun ,MODE-check-buffers ()
         (,MODE-enable-in-buffers)
-        (remove-hook 'post-command-hook ',MODE-check-buffers))
+        (remove-hook 'post-command-hook #',MODE-check-buffers))
        (put ',MODE-check-buffers 'definition-name ',global-mode)
 
        ;; The function that catches kill-all-local-variables.
        (defun ,MODE-cmhh ()
         (add-to-list ',MODE-buffers (current-buffer))
-        (add-hook 'post-command-hook ',MODE-check-buffers))
+        (add-hook 'post-command-hook #',MODE-check-buffers))
        (put ',MODE-cmhh 'definition-name ',global-mode))))
 
 (defun easy-mmode--globalized-predicate-p (predicate)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]