emacs-devel
[Top][All Lists]
Advanced

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

Re: Enhancements to "minor-mode-map-alist" functionality.


From: Kim F. Storm
Subject: Re: Enhancements to "minor-mode-map-alist" functionality.
Date: 30 Apr 2002 23:25:07 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2.50

Richard Stallman <address@hidden> writes:

> What exactly is the emulation-mode-minor-map-alist suggestion?

The basic emulation-mode-map-alists functionality is simply a way to
allow packages like cua and viper to install and manage their own 
keymap alists independent of minor-mode-map-alist:

It is a list of alists with the same format and interpretation as
minor-mode-map-alist.

The documentation for emulation-mode-map-alists is as follows:

List of keymap alists to use for emulations modes.
It is intended for modes or packages using multiple minor-mode keymaps.
Each element is a keymap alist just like `minor-mode-map-alist', and it
is used the same way.  The "active" keymaps in this alist are used before
`minor-mode-map-alist' but after `minor-mode-overriding-map-alist'.



The second - independent - part of the proposed functionality was
to allow more complex expressions to select the active keymaps in
the minor-mode-map-alist (and emulation-mode-map-alists):

The following minor-mode-map-alist documentation describes this
added functionality:

Alist of keymaps to use for minor modes.
Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read
key sequences and look up bindings iff VARIABLE's value is non-nil.
Alternatively, an element may look like (lambda . FORM) where FORM is 
evaluated and should return either nil or a cons (SYMBOL . KEYMAP);
in this case, KEYMAP is used unconditionally and SYMBOL is displayed
by `describe-bindings' as the variable controlling KEYMAP.
If two active keymaps bind the same key, the keymap appearing earlier
in the list takes precedence.



-- 
Kim F. Storm <address@hidden> http://www.cua.dk




reply via email to

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