[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: define-minor-mode: Suppressing warning
From: |
Stefan Monnier |
Subject: |
Re: define-minor-mode: Suppressing warning |
Date: |
Sun, 16 May 2021 17:41:08 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
> Really? I looked at define-minor-mode in emacs 27.1 and it does not
> appear to take the keyword argument, unless that is I'm very confused.
The Emacs-21 version of the docstring says (among other things):
The above three arguments can be skipped if keyword arguments are
used (see below).
BODY contains code that will be executed each time the mode is
(dis)activated.
It will be executed after any toggling but before running the hooks.
BODY can start with a list of CL-style keys specifying additional
arguments.
The following keyword arguments are supported:
:group Followed by the group name to use for any generated `defcustom'.
:global If non-nil specifies that the minor mode is not meant to be
buffer-local. By default, the variable is made buffer-local.
:init-value Same as the INIT-VALUE argument.
:lighter Same as the LIGHTER argument.
The end of the docstring on Emacs-24 additionally says:
For example, you could write
(define-minor-mode foo-mode "If enabled, foo on you!"
:lighter " Foo" :require 'foo :global t :group 'hassle :version "27.5"
...BODY CODE...)
Do you believe me now? ;-)
Stefan
>> T.V Raman [2021-05-16 09:44:54] wrote:
>>
>>> When compiling code released for emacs 27.2 with emacs 28, you
>>> presently get this warning:
>>>
>>> emacspeak-comint.el:582:12: Warning: Use keywords rather than deprecated
>>> positional arguments to `define-minor-mode'
>>>
>>> I'm unable to suppress this warning --- and I cant update my code
>>> to use the recommended keyword argument form until emacs 28 is
>>> released.
>>
>> Why? The recommended syntax is the one that was introduced back in
>> Emacs-21!
>>
>>
>> Stefan
>>