gnu-emacs-sources
[Top][All Lists]
Advanced

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

icicles-menu.el: Execute a menu command from keyboard, with completion


From: Drew Adams
Subject: icicles-menu.el: Execute a menu command from keyboard, with completion
Date: Sun, 14 Aug 2005 16:52:10 -0700

Execute Emacs menu commands from the keyboard, with completion: library
`icicles-menu.el'.

Menus are not just for wimps and newbies anymore - they can help you quickly
locate and execute commands. No need to know where a menu command is in the
menu tree, or what its full name is. Just type part of its name – any part –
and use completion to get the rest (with the complete menu path) - and then
execute the command.

Available here: http://www.emacswiki.org/cgi-bin/wiki/icicles-menu.el.
Writeup is here: http://www.emacswiki.org/cgi-bin/wiki/IciclesMenu.

You can use this with library `icicles.el', which lets you cycle through the
completion candidates and complete them, using regexp matching ("apropos
completion") or ordinary prefix matching.

Available here: http://www.emacswiki.org/cgi-bin/wiki/icicles.el. Writeup is
here: http://www.emacswiki.org/cgi-bin/wiki/IciclesMenu.

To use menu-command completion and cycling, bind, for example, `ESC M-x' to
`icicle-execute-menu-command'. That command prompts you for a menu command
to execute, and executes it. Example of use:

ESC M-x
Menu commmand: .*print.*buf [next] [next]...

Each time you hit [next], the minibuffer input is completed to a different
menu item that matches "print" followed (somewhere) by "buf". Or, instead of
hitting the [next] key, hit S-TAB to choose from the list of all such
matching menu commands, in buffer *Completions*.

Here's another example, with simple, literal text as input for completion
(no regexp wildcards). TAB performs the ordinary prefix completion, not the
apropos completion of [next].

ESC M-x
Menu command:
Menu command: T [TAB]
Menu command: Tools >
Menu command: Tools > Compa [TAB]
Menu command: Tools > Compare (Ediff) > Two F [TAB]
Menu command: Tools > Compare (Ediff) > Two Files... [RET]

The completion and cycling available with icicles.el works not only for
command execution (M-x), but also for any other minibuffer input that uses
completion. This includes commands that read buffer names (e.g. C-x b) and
file names (e.g. C-x C-f).

Enjoy!







reply via email to

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