unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: emacs-devel@gnu.org
Subject: Re: Key binding popup interface
Date: Tue, 12 Dec 2017 16:18:59 -0500	[thread overview]
Message-ID: <jwvlgi7r6ws.fsf-monnier+gmane.emacs.devel@gnu.org> (raw)
In-Reply-To: CAFyQvY2q+P68SL_f-J7wOmwVf8TKnUiR=YrDng+4Y-L4COFftw@mail.gmail.com

> For instance, I have a hydra to insert different Org blocks in org-mode,
> and looks like this:
> [image: image.png]

[ Hmm... Gnus here doesn't seem to provide any way for me to see
  this image.  ]

> The idea is to press a binding, and then a contextual menu pops up with a
> list of next valid key that can be pressed (and this does not necessarily
> list *all* the bound keys.. that's one place where it's different from
> another package: which-key).

This sounds a bit like the primitive "hierarkey" feature which I used in
PCL-CVS.  Basically there I defined a sub-keymap bound to `d` with
bindings like:

       (?= . ("diff" . cvs-mode-diff))
       (?2 . ("other" . cvs-mode-diff-other))
       (?d . ("diff"  . cvs-mode-diff))
       (?v . ("vendor"  . cvs-mode-diff))
       ...

so after hitting `d` Emacs shows in the each area something like
"Diff: vendor, diff, = = diff, 2 = other, ...".

This is a very old feature implemented in the C code (src/keyboard.c)
and very little used.

It would be good to replace it with a more powerful feature implemented
in Elisp and used more widely.


        Stefan




  reply	other threads:[~2017-12-12 21:18 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <87r2s3ctxh.fsf@ericabrahamsen.net>
     [not found] ` <87d13m3jt2.fsf@gmx.us>
     [not found]   ` <87efo2wf0s.fsf@ericabrahamsen.net>
     [not found]     ` <87y3m8s7ym.fsf@gmx.us>
     [not found]       ` <87fu8gwfbr.fsf@nicolasgoaziou.fr>
     [not found]         ` <87k1xs2h0h.fsf@gmx.us>
2017-12-12 14:02           ` Key binding popup interface (Was: Re: Poll: new keybinding for org-insert-structure-template on org mode list) Kaushal Modi
2017-12-12 18:45             ` Key binding popup interface Eric S Fraga
2017-12-12 18:56               ` Kaushal Modi
2017-12-12 19:53                 ` Alan E. Davis
2017-12-12 20:09             ` Key binding popup interface (Was: Re: Poll: new keybinding for org-insert-structure-template on org mode list) Charles A. Roelli
2017-12-12 20:20               ` Kaushal Modi
2017-12-12 21:18                 ` Stefan Monnier [this message]
2017-12-12 21:28                   ` Key binding popup interface Kaushal Modi
2017-12-13 11:49                     ` Michael Heerdegen
2017-12-13 19:56                 ` Key binding popup interface (Was: Re: Poll: new keybinding for org-insert-structure-template on org mode list) Charles A. Roelli
2017-12-12 20:20             ` Key binding popup interface Eric Abrahamsen
2017-12-12 20:33               ` Kaushal Modi
2017-12-12 20:44                 ` Eric Abrahamsen
2017-12-12 20:56                   ` Kaushal Modi
2017-12-12 21:01             ` Stefan Monnier
2017-12-12 21:19               ` Kaushal Modi
2017-12-12 21:48                 ` Stefan Monnier
2017-12-13 15:38                   ` Kaushal Modi
2017-12-13 16:18                     ` Stefan Monnier
2017-12-12 23:51               ` Robert Weiner
2017-12-13 15:40                 ` Kaushal Modi
2017-12-13 16:25                   ` Robert Weiner
2017-12-13  6:52               ` John Wiegley
2017-12-13 15:43                 ` Kaushal Modi

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvlgi7r6ws.fsf-monnier+gmane.emacs.devel@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=emacs-devel@gnu.org \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).