From: Arthur Miller <arthur.miller@live.com>
To: Drew Adams <drew.adams@oracle.com>
Cc: Howard Melman <hmelman@gmail.com>, emacs-devel@gnu.org
Subject: Re: transient
Date: Tue, 19 May 2020 16:00:06 +0200 [thread overview]
Message-ID: <VI1PR06MB45260C2EA2DE91E2D44774F396B90@VI1PR06MB4526.eurprd06.prod.outlook.com> (raw)
In-Reply-To: <f36b18ee-ddfa-49f6-a007-c8de75913087@default> (Drew Adams's message of "Mon, 18 May 2020 22:38:12 -0700 (PDT)")
Drew Adams <drew.adams@oracle.com> writes:
>> >>> I like it very much because it helps see the rationale behind
>> >>> keybinding. After a while you get to learn the bindings for the
>> >>> commands you use the most and you can easily explore
>> >>> new commands.
>>
>> ... which-key let's me explore existing bindings with
>> no effort. Type C-x r and wait a second and see all
>> the rectangle and register commands. It was great for
>> learning the M-s and M-g keymaps when they were added.
>> which-key has been very helpful for learning bindings...
>
> FWIW -
>
> Icicles key completion is similar, but there are
> notable differences:
>
> 1. You can use it on-demand (as well as just
> automatically) - complete only when you want
> to, and without a delay.
>
> 2. Because of that you can also use it at top
> level, not just after hitting a prefix key.
> Use it to see what key bindings are available
> in the current context (e.g. active modes).
>
> 3. Completion candidates have 2 parts: key and
> command name: `KEY = COMMAND'. You can
> match either or both. Prefix keys have `...'
> instead of `COMMAND: `PREFIX-KEY = ...'.
>
> 4. Choosing a candidate with a COMMAND invokes
> it. Choosing a prefix-key candidate changes
> the set of candidates to its completions.
> E.g., choosing `C-h = ...' shows candidates
> such as `f = describe-function'.
>
> 5. You can filter the current matches, by typing
> input that matches key or command names, or
> both. You can filter multiple times (multiple
> patterns). Remove your current pattern from
> the minibuffer and type another one to see a
> different set of matches at the same level
> (same prefix key or top level).
>
> 6. When completing a prefix key, the first
> candidate shown is `..', which you can choose
> to go back up a level (completions above that
> prefix key). Then you can go down another
> prefix key - explore the entire key-sequence
> forest.
>
> 7. That forest includes menus, as prefix-key
> candidates (`menu-bar = ...'). So you can
> explore menus in the same way. [*]
>
> 8. You can sort candidates in these ways:
>
> * local bindings first, then non-local, each
> group in alphabetic order by key name
> * prefix keys first, then non-prefix, again,
> in key-name alphabetic order
> * alphabetic order by command name
>
> You can cycle among those sort orders anytime,
> using `C-,'.
>
> 9. Local bindings are highlighted differently
> from non-local - two faces. Menus get two
> other faces (local, non-local).
>
> 10. You can show full help (`C-h f' help) for
> any candidate, anytime, without ending
> completion. (Use `C-M-RET' on it.)
>
> 11. Being able to match minibuffer input against
> key and command names means that, unlike the
> approach of `which-key' and similar, when
> completing a prefix key you don't just hit
> keys that complete the key sequence, to
> invoke its command. A workaround for that is
> to hit `M-q' and then hit a key, to insert
> its name in the minibuffer and then choose it.
> E.g., `M-q C-M-f' inserts the text `C-M-f' in
> the minibuffer.
> _____
>
> [*] Exploring menu-bar menus this way is one
> step (menu level) at a time, the same as
> exploring other key sequences. A better way
> to explore menu-bar menus is to use library
> La Carte. Then you can match menu items or
> submenus directly, at any level. I.e., you
> can type a single pattern that dives down
> into the menu hierarchy - like file-name
> completion. (But you can also navigate
> stepwise.)
I haven't used Icicles yet, but seen this list, maybe I
should give it a try and see if I can use it instead of which-key. Can
Icicles be used without any additional learning and as easy as
which-key? Which-key is kind-of "just works", one installs it and it does
what it does without additional effort on user side. Is "automatic"
feature of Icicles in same manner?
Regression, but I have to say, I am impressed Drew. With how much you
have written. I went yesterday through your changelog for Dired+. Just
reading the changelog and thinking though the extra features you have
there took quite some time I have to say. What spontaneously to look
usefull is marking/toggeling/untoggling files per region only. That
seems like a usefull feature. Maybe you should try to get that part into
standard Dired?
next prev parent reply other threads:[~2020-05-19 14:00 UTC|newest]
Thread overview: 274+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-08 8:26 Making Emacs popular again with a video Nathan Colinet
2020-05-08 10:39 ` Arthur Miller
2020-05-10 20:48 ` Nathan Colinet
2020-05-08 10:41 ` Stefan Kangas
2020-05-10 16:18 ` Nathan Colinet
2020-05-08 11:33 ` Eli Zaretskii
2020-05-10 20:32 ` Nathan Colinet
2020-05-11 22:59 ` Stefan Kangas
2020-05-09 7:50 ` Andreas Röhler
2020-05-10 20:57 ` Nathan Colinet
2020-05-12 3:12 ` Richard Stallman
2020-05-12 7:04 ` Arthur Miller
2020-05-12 13:59 ` Dmitry Gutov
2020-05-12 14:47 ` Arthur Miller
2020-05-12 16:08 ` Drew Adams
2020-05-13 4:01 ` Richard Stallman
2020-05-13 8:49 ` Arthur Miller
2020-05-14 5:14 ` Richard Stallman
2020-05-14 10:22 ` Arthur Miller
2020-05-14 10:55 ` Robert Pluim
2020-05-15 3:25 ` Richard Stallman
2020-05-15 7:55 ` Arthur Miller
2020-05-15 10:11 ` Eli Zaretskii
2020-05-15 10:43 ` Arthur Miller
2020-05-15 11:23 ` Eli Zaretskii
2020-05-15 19:15 ` H. Dieter Wilhelm
2020-05-15 18:41 ` H. Dieter Wilhelm
2020-05-22 19:09 ` Ben McGinnes
[not found] ` <E1jcLVP-0003SB-II@fencepost.gnu.org>
2020-05-24 19:16 ` Ben McGinnes
2020-05-14 14:13 ` Eli Zaretskii
2020-05-14 7:38 ` Tim Cross
2020-05-14 7:51 ` Andreas Röhler
2020-05-14 14:18 ` Eli Zaretskii
2020-05-14 15:36 ` Tim Cross
2020-05-13 10:43 ` Stefan Kangas
2020-05-12 8:23 ` Andreas Röhler
2020-05-13 3:55 ` Richard Stallman
2020-05-13 8:18 ` Andreas Röhler
2020-05-13 10:53 ` Stefan Kangas
2020-05-13 16:20 ` Drew Adams
2020-05-14 2:18 ` (emacs) Intro [was: Making Emacs popular again with a video] excalamus--- via Emacs development discussions.
2020-05-14 12:04 ` Dmitry Gutov
2020-05-14 21:31 ` excalamus--- via Emacs development discussions.
2020-05-15 0:46 ` Dmitry Gutov
[not found] ` <d28fe30d-c192-8022-b758-d8b7019e49b5@yandex.ru-M7KnL6R----2>
2020-05-17 19:11 ` excalamus--- via Emacs development discussions.
2020-05-19 14:14 ` excalamus--- via Emacs development discussions.
[not found] ` <d66793e5-07f9-4dd9-928d-e7e8c342b781@default>
[not found] ` <M7iByNw--3-2@tutanota.com>
2020-05-21 18:18 ` excalamus--- via Emacs development discussions.
[not found] ` <M7sSK-m--3-2@tutanota.com-M7sSUVm--3-2>
2020-05-28 1:21 ` excalamus--- via Emacs development discussions.
2020-05-28 7:08 ` Eli Zaretskii
2020-05-28 7:41 ` Andreas Röhler
2020-05-28 10:23 ` Stefan Kangas
2020-05-29 2:39 ` excalamus--- via Emacs development discussions.
2020-05-29 7:28 ` Eli Zaretskii
2020-05-29 7:40 ` Stefan Kangas
2020-05-29 15:14 ` Stefan Monnier
2020-05-30 1:39 ` Richard Stallman
2020-05-14 22:14 ` Karl Fogel
2020-05-15 3:17 ` Richard Stallman
2020-05-15 6:36 ` Andreas Röhler
2020-05-12 12:57 ` GNU Emacs raison d'etre excalamus--- via Emacs development discussions.
2020-05-13 16:18 ` Karl Fogel
2020-05-13 16:28 ` Drew Adams
2020-05-13 19:39 ` Andreas Röhler
2020-05-13 20:05 ` Karl Fogel
2020-05-13 20:52 ` Dmitry Gutov
2020-05-13 22:04 ` Karl Fogel
2020-05-13 22:55 ` Dmitry Gutov
2020-05-14 4:56 ` Karl Fogel
2020-05-14 16:37 ` Drew Adams
2020-05-14 22:11 ` excalamus--- via Emacs development discussions.
2020-05-15 3:16 ` Richard Stallman
2020-05-15 21:42 ` Karl Fogel
2020-05-15 22:14 ` Arthur Miller
2020-05-16 0:03 ` Dmitry Gutov
2020-05-15 22:41 ` Drew Adams
2020-05-20 21:47 ` Karl Fogel
2020-05-20 22:35 ` Drew Adams
2020-05-21 0:35 ` Karl Fogel
2020-05-16 2:43 ` Eduardo Ochs
2020-05-18 3:46 ` Richard Stallman
2020-05-18 11:26 ` Dmitry Gutov
2020-05-16 8:05 ` Yuri Khan
2020-05-16 10:36 ` Eli Zaretskii
2020-05-16 10:46 ` Yuri Khan
2020-05-17 1:28 ` Dmitry Gutov
2020-05-17 1:39 ` Dmitry Gutov
2020-05-17 1:40 ` Dmitry Gutov
2020-05-17 1:59 ` Jean-Christophe Helary
2020-05-17 2:52 ` Stefan Kangas
2020-05-17 9:32 ` Joost Kremers
2020-05-17 11:07 ` Arthur Miller
2020-05-18 3:43 ` transient Richard Stallman
2020-05-18 6:58 ` transient Joost Kremers
2020-05-18 11:29 ` transient Dmitry Gutov
2020-05-18 18:41 ` transient Howard Melman
2020-05-18 19:35 ` transient John Yates
2020-05-18 19:57 ` transient Howard Melman
2020-05-19 5:38 ` transient Drew Adams
2020-05-19 14:00 ` Arthur Miller [this message]
2020-05-20 3:14 ` transient Michael Heerdegen
[not found] ` <87tuztngxr.fsf@mail.linkov.net>
2020-06-03 4:32 ` bug#39902: transient Michael Heerdegen
2020-06-03 22:49 ` bug#39902: 28.0.50; Marking in dired with active region Juri Linkov
2020-06-04 12:31 ` Michael Heerdegen
2020-06-04 22:18 ` Juri Linkov
2020-05-19 22:04 ` transient Stefan Kangas
2020-05-19 22:53 ` transient Drew Adams
2020-05-19 4:02 ` which-key Richard Stallman
2020-05-17 7:09 ` GNU Emacs raison d'etre Drew Adams
2020-05-20 21:36 ` Karl Fogel
2020-05-20 21:57 ` Drew Adams
2020-05-20 22:00 ` Karl Fogel
2020-05-20 22:07 ` Dmitry Gutov
2020-05-21 8:03 ` tomas
2020-05-21 9:33 ` Arthur Miller
2020-05-21 10:04 ` tomas
2020-05-24 14:05 ` Arthur Miller
2020-05-21 16:20 ` xristos
2020-05-24 13:45 ` Arthur Miller
2020-05-24 16:52 ` xristos
2020-05-24 17:00 ` Eli Zaretskii
2020-05-24 18:31 ` Philip K.
2020-05-25 17:34 ` João Távora
2020-05-26 4:14 ` Richard Stallman
2020-05-26 11:32 ` João Távora
2020-05-27 3:08 ` Richard Stallman
2020-05-27 5:01 ` Drew Adams
2020-05-29 12:59 ` Arthur Miller
2020-06-23 3:59 ` Richard Stallman
2020-05-21 17:07 ` Karl Fogel
2020-05-23 20:36 ` Dmitry Gutov
2020-05-14 6:26 ` tomas
2020-05-14 6:16 ` Andreas Röhler
2020-05-15 3:18 ` Richard Stallman
2020-05-16 0:56 ` Tak Kunihiro
2020-05-16 6:50 ` Eli Zaretskii
2020-05-16 9:10 ` Sergey Organov
2020-05-16 10:38 ` Eli Zaretskii
2020-05-16 12:24 ` Sergey Organov
2020-05-16 12:29 ` Eli Zaretskii
2020-05-16 12:34 ` Sergey Organov
2020-05-16 12:46 ` Dmitry Gutov
2020-05-16 13:57 ` Sergey Organov
2020-05-16 19:35 ` Dmitry Gutov
2020-05-16 20:05 ` Stefan Kangas
2020-05-16 20:34 ` Dmitry Gutov
2020-05-16 20:44 ` Bob Newell
2020-06-24 15:37 ` Ricardo Wurmus
2020-05-16 23:12 ` Drew Adams
2020-05-16 23:18 ` Drew Adams
2020-05-16 23:47 ` Stefan Kangas
2020-05-17 1:14 ` Drew Adams
2020-05-17 3:13 ` Stefan Kangas
2020-05-17 6:49 ` Drew Adams
2020-05-17 7:02 ` Jean-Christophe Helary
2020-05-17 7:11 ` Drew Adams
2020-05-17 9:07 ` Jean-Christophe Helary
2020-05-17 10:20 ` Marcin Borkowski
2020-05-17 11:07 ` Jean-Christophe Helary
2020-05-17 15:25 ` Eli Zaretskii
2020-05-17 15:48 ` Jean-Christophe Helary
2020-05-17 17:06 ` Stefan Monnier
2020-05-17 17:31 ` Arthur Miller
2020-05-17 18:57 ` Drew Adams
2020-05-17 20:03 ` Arthur Miller
2020-05-18 8:32 ` martin rudalics
2020-05-18 11:39 ` Dmitry Gutov
2020-05-18 13:02 ` martin rudalics
2020-05-18 13:38 ` Dmitry Gutov
2020-05-18 16:31 ` Robert Pluim
2020-05-18 23:14 ` Dmitry Gutov
2020-05-19 8:41 ` martin rudalics
2020-05-20 1:01 ` Dmitry Gutov
2020-05-20 9:06 ` martin rudalics
2020-05-21 0:15 ` Dmitry Gutov
2020-05-21 9:07 ` martin rudalics
2020-05-21 23:16 ` Dmitry Gutov
2020-05-22 9:31 ` martin rudalics
2020-05-25 2:37 ` Dmitry Gutov
2020-05-26 8:06 ` martin rudalics
2020-06-05 2:40 ` pop-up-mini-mode, was " Dmitry Gutov
2020-05-19 8:40 ` martin rudalics
2020-05-20 0:40 ` Dmitry Gutov
2020-05-20 9:04 ` martin rudalics
2020-05-20 13:28 ` Dmitry Gutov
2020-05-20 14:45 ` Eli Zaretskii
2020-05-20 14:56 ` Dmitry Gutov
2020-05-20 16:12 ` Eli Zaretskii
2020-05-20 17:45 ` martin rudalics
2020-05-20 18:09 ` Eli Zaretskii
2020-05-20 18:16 ` Eli Zaretskii
2020-05-20 18:24 ` Dmitry Gutov
2020-05-20 18:33 ` Eli Zaretskii
2020-05-20 18:56 ` Eli Zaretskii
2020-05-20 19:22 ` Dmitry Gutov
2020-05-20 19:53 ` tomas
2020-05-20 21:22 ` Dmitry Gutov
2020-05-21 7:43 ` tomas
2020-05-21 2:28 ` Eli Zaretskii
2020-05-21 22:19 ` Dmitry Gutov
2020-05-22 7:28 ` Eli Zaretskii
2020-05-22 12:16 ` Dmitry Gutov
2020-05-20 23:07 ` martin rudalics
2020-05-21 13:11 ` Eli Zaretskii
2020-05-21 17:55 ` martin rudalics
2020-05-18 15:57 ` Drew Adams
2020-05-19 8:41 ` martin rudalics
2020-05-21 18:19 ` Suppressing beginning/end-of-buffer error messages (WAS: GNU Emacs raison d'etre) Noam Postavsky
2020-05-22 9:30 ` martin rudalics
2020-05-22 12:46 ` Noam Postavsky
[not found] ` <11bfe86b-131c-4f55-5125-c269a73e360d@gmx.at>
2020-05-23 11:10 ` Noam Postavsky
2020-05-17 18:36 ` GNU Emacs raison d'etre Drew Adams
2020-05-17 21:04 ` Stefan Monnier
2020-05-17 21:48 ` Drew Adams
2020-05-17 18:38 ` Dmitry Gutov
2020-05-17 21:17 ` Stefan Monnier
2020-05-17 21:37 ` Dmitry Gutov
2020-05-18 8:33 ` martin rudalics
2020-05-18 11:37 ` Dmitry Gutov
2020-05-17 21:57 ` Drew Adams
2020-05-17 18:28 ` Drew Adams
2020-05-17 17:59 ` Drew Adams
2020-05-17 18:07 ` Dmitry Gutov
2020-05-17 7:54 ` Sergey Organov
2020-05-17 11:37 ` Dmitry Gutov
2020-05-17 18:11 ` Drew Adams
2020-05-16 23:01 ` Arthur Miller
2020-05-17 2:55 ` Richard Stallman
2020-05-28 4:12 ` Karl Fogel
2020-05-28 5:51 ` Eduardo Ochs
2020-05-28 6:13 ` Drew Adams
2020-05-28 14:12 ` excalamus--- via Emacs development discussions.
2020-05-28 14:42 ` Jean-Christophe Helary
2020-05-28 16:34 ` Drew Adams
2020-05-29 14:44 ` Jean-Christophe Helary
2020-05-28 15:00 ` Philip K.
2020-05-28 15:13 ` João Távora
2020-05-28 16:04 ` T.V Raman
[not found] ` <p914ks0kpui.fsf@google.com-M8R14r9----2>
2020-05-28 16:12 ` excalamus--- via Emacs development discussions.
2020-05-28 16:46 ` T.V Raman
2020-05-28 17:34 ` Karl Fogel
2020-05-28 18:11 ` andres.ramirez
[not found] ` <877dwwezfr.fsf@red-bean.com-M8RLd3p--3-2>
2020-05-28 18:28 ` excalamus--- via Emacs development discussions.
2020-05-29 1:12 ` Karl Fogel
2020-05-30 1:44 ` Richard Stallman
2020-05-30 2:02 ` Jean-Christophe Helary
2020-05-30 9:13 ` Arthur Miller
2020-05-30 16:43 ` Alfred M. Szmidt
2020-05-31 7:07 ` Richard Stallman
2020-06-08 17:37 ` REmacs was " T.V Raman
2020-06-01 7:29 ` Meaning behind Control-G Lars Brinkhoff
2020-06-01 7:56 ` Lars Brinkhoff
2020-06-01 9:06 ` Lars Brinkhoff
2020-06-01 13:44 ` Stefan Monnier
2020-06-02 1:51 ` Paul Eggert
2020-06-02 5:58 ` Lars Brinkhoff
2020-06-02 13:50 ` Stefan Monnier
2020-06-02 15:38 ` Drew Adams
2020-06-02 11:46 ` John Yates
2020-07-10 12:13 ` GNU Emacs raison d'etre Lars Brinkhoff
2020-07-10 14:28 ` Drew Adams
2020-07-11 2:16 ` Richard Stallman
2020-05-28 16:41 ` FW: " Drew Adams
2020-05-28 17:37 ` Stefan Monnier
2020-05-28 20:33 ` Perry E. Metzger
2020-05-28 23:44 ` T.V Raman
2020-05-29 3:04 ` Richard Stallman
2020-05-13 19:46 ` T.V Raman
2020-05-13 21:00 ` Dmitry Gutov
2020-05-13 21:02 ` excalamus--- via Emacs development discussions.
2020-05-13 22:22 ` H. Dieter Wilhelm
2020-05-14 4:20 ` Karl Fogel
2020-05-14 0:04 ` John Wiegley
2020-05-14 5:08 ` Richard Stallman
2020-05-14 20:29 ` Karl Fogel
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=VI1PR06MB45260C2EA2DE91E2D44774F396B90@VI1PR06MB4526.eurprd06.prod.outlook.com \
--to=arthur.miller@live.com \
--cc=drew.adams@oracle.com \
--cc=emacs-devel@gnu.org \
--cc=hmelman@gmail.com \
/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.