From: Lars Ingebrigtsen <larsi@gnus.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
Subject: Re: Smarter M-x that filters on major-mode
Date: Thu, 11 Feb 2021 17:13:20 +0100 [thread overview]
Message-ID: <8735y2y44f.fsf@gnus.org> (raw)
In-Reply-To: <jwv5z2yiopz.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Thu, 11 Feb 2021 11:05:12 -0500")
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> And since more than 90% of the commands will eventually get this sort of
>> annotation (I didn't actually count), that seemed kinda inefficient.
>
> That's indeed possible, but I'm not sure it will be the case (it seems
> like a lot of work to get there, unless we can come up with some way to
> automatically infer most of those predicates somehow, or to specify
> them "globally" by grouping in the source code commands that share the
> same predicate, or something).
I don't think anything automatic is possible -- in that case, automatic
filters would be fine. I've gone over a bunch of Gnus files (and those
are as difficult as it gets, because there's a lot of Gnus modes), and
it's tedious, but not difficult. And since this leads to immediate user
experience improvements, I'm hopeful that people will actually start
doing the markup.
> But since you're touching the `interactive-form` part, it's a good
> opportunity to mention that some commands would benefit from being able
> to specify not just how to build the arguments for interactive use but
> also what to do with the result (such as how to display it).
>
> So there's a case to be made that we should allow the `interactive-form`
> to specify a generic wrapper: a function that takes a single argument
> (the function to be called) and is then in charge of building the
> arglist, calling the function, and do what it wants with the result.
I'm not quite sure I follow you here... the `interactive-form' function
just returns the interactive spec, and I've not changed that at all.
(I've changed how the function works internally, because the storage now
looks slightly different, but...)
> I'm not sure how best to integrate this with the kind of predicates we're
> discussing here...
I've also added a `read-extended-command-predicate' that users can tweak
to determine what they want to have included when they `M-x TAB', but
the default is "all commands, but not the ones that are tagged as
belonging to other modes than the current major mode".
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
next prev parent reply other threads:[~2021-02-11 16:13 UTC|newest]
Thread overview: 154+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-09 12:30 Experimentally unbind M-o on the trunk Gregory Heytings
2021-02-09 15:24 ` Lars Ingebrigtsen
2021-02-10 14:51 ` Jean Louis
2021-02-10 8:44 ` Alfred M. Szmidt
2021-02-10 13:57 ` Tassilo Horn
2021-02-10 14:54 ` Jean Louis
2021-02-10 15:12 ` Alfred M. Szmidt
2021-02-10 15:45 ` Eli Zaretskii
2021-02-10 16:47 ` Alfred M. Szmidt
2021-02-10 17:19 ` Eli Zaretskii
2021-02-10 19:17 ` Matt Armstrong
2021-02-10 16:56 ` Alan Mackenzie
2021-02-10 17:29 ` Eli Zaretskii
2021-02-10 18:02 ` andrés ramírez
2021-02-10 17:58 ` [External] : " Drew Adams
2021-02-11 5:27 ` Jean Louis
2021-02-10 19:10 ` Matt Armstrong
2021-02-10 19:16 ` Lars Ingebrigtsen
2021-02-11 2:50 ` Smarter M-x that filters on major-mode Stefan Kangas
2021-02-11 3:44 ` Stefan Monnier
2021-02-11 5:02 ` Yuan Fu
2021-02-11 6:15 ` [External] : " Drew Adams
2021-02-11 6:11 ` Drew Adams
2021-02-11 8:58 ` Lars Ingebrigtsen
2021-02-11 11:00 ` Lars Ingebrigtsen
2021-02-11 13:46 ` Lars Ingebrigtsen
2021-02-11 14:16 ` Eli Zaretskii
2021-02-11 15:04 ` Lars Ingebrigtsen
2021-02-11 16:05 ` Stefan Monnier
2021-02-11 16:13 ` Lars Ingebrigtsen [this message]
2021-02-11 16:14 ` Lars Ingebrigtsen
2021-02-11 19:09 ` Óscar Fuentes
2021-02-11 19:52 ` Lars Ingebrigtsen
2021-02-11 20:39 ` Óscar Fuentes
2021-02-11 21:08 ` Lars Ingebrigtsen
2021-02-11 22:22 ` Jose A. Ortega Ruiz
2021-02-12 9:32 ` Lars Ingebrigtsen
2021-02-12 16:18 ` jao
2021-02-12 17:05 ` Stefan Kangas
2021-02-12 17:58 ` jao
2021-02-12 17:36 ` Stefan Monnier
2021-02-12 17:57 ` jao
2021-02-12 18:12 ` Dmitry Gutov
2021-02-12 18:16 ` Stefan Monnier
2021-02-12 23:58 ` Óscar Fuentes
2021-02-13 0:14 ` [External] : " Drew Adams
2021-02-13 0:47 ` Óscar Fuentes
2021-02-13 2:26 ` Drew Adams
2021-02-13 3:18 ` Stefan Monnier
2021-02-13 11:33 ` Lars Ingebrigtsen
2021-02-13 11:28 ` Lars Ingebrigtsen
2021-02-13 11:30 ` Lars Ingebrigtsen
2021-02-14 2:40 ` [External] : " Drew Adams
2021-02-14 4:30 ` Stefan Monnier
2021-02-14 23:30 ` Drew Adams
2021-02-14 23:36 ` Stefan Monnier
2021-02-14 13:30 ` Lars Ingebrigtsen
2021-02-14 14:20 ` Basil L. Contovounesios
2021-02-14 14:23 ` Lars Ingebrigtsen
2021-02-14 14:32 ` Basil L. Contovounesios
2021-02-14 14:45 ` Lars Ingebrigtsen
2021-02-15 18:16 ` Sean Whitton
2021-02-14 15:00 ` Dmitry Gutov
2021-02-14 15:03 ` Alan Mackenzie
2021-02-14 16:11 ` Stefan Kangas
2021-02-14 16:49 ` Alan Mackenzie
2021-02-14 23:33 ` Stefan Kangas
2021-02-15 15:15 ` Alan Mackenzie
2021-02-16 17:07 ` Stefan Kangas
2021-02-14 16:57 ` Eli Zaretskii
2021-02-14 17:10 ` Lars Ingebrigtsen
2021-02-14 17:59 ` Basil L. Contovounesios
2021-02-14 18:02 ` Lars Ingebrigtsen
2021-02-14 18:44 ` Basil L. Contovounesios
2021-02-14 18:53 ` Lars Ingebrigtsen
2021-02-14 19:01 ` Basil L. Contovounesios
2021-02-15 2:59 ` Lars Ingebrigtsen
2021-02-15 5:25 ` [External] : " Drew Adams
2021-02-15 12:34 ` Eric S Fraga
2021-02-14 16:15 ` Óscar Fuentes
2021-02-14 16:55 ` Eli Zaretskii
2021-02-14 17:43 ` Juri Linkov
2021-02-14 18:00 ` Lars Ingebrigtsen
2021-02-14 23:30 ` [External] : " Drew Adams
2021-02-14 23:30 ` Drew Adams
2021-02-15 2:49 ` Stefan Monnier
2021-02-15 3:09 ` Lars Ingebrigtsen
2021-02-14 15:20 ` Lars Ingebrigtsen
2021-02-13 11:22 ` Lars Ingebrigtsen
2021-02-12 17:37 ` [External] : " Drew Adams
2021-02-13 11:48 ` Lars Ingebrigtsen
2021-02-11 14:38 ` Stefan Monnier
2021-02-11 15:29 ` Lars Ingebrigtsen
2021-02-11 17:29 ` Lars Ingebrigtsen
2021-02-11 17:43 ` Lars Ingebrigtsen
2021-02-11 18:57 ` Lars Ingebrigtsen
2021-02-11 21:12 ` Lars Ingebrigtsen
2021-02-11 23:21 ` Stefan Monnier
2021-02-12 8:59 ` Lars Ingebrigtsen
2021-02-12 13:39 ` Stefan Monnier
2021-02-13 11:43 ` Lars Ingebrigtsen
2021-02-12 9:59 ` Lars Ingebrigtsen
2021-02-12 10:29 ` Lars Ingebrigtsen
2021-02-12 10:47 ` Robert Pluim
2021-02-12 11:19 ` Lars Ingebrigtsen
2021-02-12 13:40 ` Robert Pluim
2021-02-13 11:44 ` Lars Ingebrigtsen
2021-02-11 8:40 ` tomas
2021-02-11 15:56 ` [External] : " Drew Adams
2021-02-11 19:03 ` Óscar Fuentes
2021-02-11 20:05 ` Eli Zaretskii
2021-02-11 20:11 ` tomas
2021-02-11 20:12 ` Lars Ingebrigtsen
2021-02-12 7:06 ` Jean Louis
2021-02-11 8:53 ` Lars Ingebrigtsen
2021-02-12 16:39 ` Basil L. Contovounesios
2021-02-12 17:20 ` Stefan Kangas
2021-02-12 17:56 ` Basil L. Contovounesios
2021-02-11 4:55 ` Experimentally unbind M-o on the trunk Yuri Khan
2021-02-11 5:15 ` Matt Armstrong
2021-02-11 6:29 ` [External] : " Drew Adams
2021-02-11 14:02 ` Eli Zaretskii
2021-02-11 15:46 ` Matt Armstrong
2021-02-11 16:08 ` Yuri Khan
2021-02-11 16:58 ` Eli Zaretskii
2021-02-11 17:28 ` [External] : " Drew Adams
2021-02-11 19:03 ` Eli Zaretskii
2021-02-11 19:31 ` Drew Adams
2021-02-11 17:53 ` Yuri Khan
2021-02-11 18:06 ` [External] : " Drew Adams
2021-02-11 19:26 ` Eli Zaretskii
2021-02-11 20:32 ` Yuri Khan
2021-02-11 20:43 ` Eli Zaretskii
2021-02-12 4:38 ` Yuri Khan
2021-02-12 7:18 ` Eli Zaretskii
2021-02-11 18:07 ` Yuri Khan
2021-02-11 19:39 ` Eli Zaretskii
2021-02-11 5:15 ` Jean Louis
2021-02-11 14:04 ` Eli Zaretskii
2021-02-11 18:55 ` Jean Louis
2021-02-11 19:46 ` Eli Zaretskii
2021-02-11 20:20 ` Jean Louis
2021-02-11 20:38 ` Eli Zaretskii
2021-02-10 15:14 ` Eli Zaretskii
2021-02-10 14:50 ` Jean Louis
2021-02-10 16:37 ` [External] : " Drew Adams
2021-02-10 17:19 ` Stefan Kangas
2021-02-10 17:55 ` Clément Pit-Claudel
2021-02-10 18:29 ` Drew Adams
2021-02-11 5:07 ` Jean Louis
2021-02-11 6:18 ` Drew Adams
2021-02-12 6:54 ` Jean Louis
2021-02-12 17:35 ` Drew Adams
-- strict thread matches above, loose matches on Subject: below --
2021-02-14 23:54 Smarter M-x that filters on major-mode Boruch Baum
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8735y2y44f.fsf@gnus.org \
--to=larsi@gnus.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.