emacs-devel
[Top][All Lists]
Advanced

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

Re: Current mode command discovery


From: Lars Ingebrigtsen
Subject: Re: Current mode command discovery
Date: Fri, 19 Feb 2021 13:23:10 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Dmitry Gutov <dgutov@yandex.ru> writes:

>> But I haven't measured.
>> The disadvantage in using a `put' for this data is mainly in that it
>> makes .elc files larger (and therefore slower to load).
>
> The difference will probably be higher in autoload files (which will
> require separate 'put' forms to be added, right?).

If we're using `put' -- yup.  Stashing the modes in the interactive spec
in autoload files (which Emacs 28 currently does) is quite efficient.

However, this may be a smaller issue than you'd think.  Most things that
are tagged as ;;;###autoload won't be mode-specific: They are
autoloadable exactly because they can be called from anywhere in Emacs.

The exception here is larger packages (like Gnus) that spread commands
over a number of files.  Then it's common to ;;;###autoload commands
even if they aren't global commands.  This is arguable the wrong way to
use ;;;###autoload -- instead, say, gnus-sum.el should declare these
functions instead.

Currently, with the filter predicate, "emacs -Q" `M-x gnusTAB' will
diplay ~50 completions.  Without the predicate, you get ~65 completions.

So mode-tagging autoloaded commands is going to be a thing, but it's not
a huge thing.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



reply via email to

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