summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2008-04-24 05:47:18 +0000
committerGlenn Morris <rgm@gnu.org>2008-04-24 05:47:18 +0000
commit38a48ab7a86011190afbd540206b69030c5f7b57 (patch)
tree213a7b304a3cc5d14fd5b408db399ffdf68ae4d4 /lisp/emacs-lisp
parent5caeb2a5d318c92c067a911adae4ed858c439edf (diff)
downloademacs-38a48ab7a86011190afbd540206b69030c5f7b57.tar.gz
emacs-38a48ab7a86011190afbd540206b69030c5f7b57.tar.bz2
emacs-38a48ab7a86011190afbd540206b69030c5f7b57.zip
Tom Tromey <tromey at redhat.com>
(easy-mmode-define-keymap): Document keywords. Add :suppress.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/easy-mmode.el16
1 files changed, 14 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index aa1956b8a20..9bb2315deaf 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -409,8 +409,17 @@ BS must be a list of (KEY . BINDING) where
KEY and BINDINGS are suitable for `define-key'.
Optional NAME is passed to `make-sparse-keymap'.
Optional map M can be used to modify an existing map.
-ARGS is a list of additional keyword arguments."
- (let (inherit dense)
+ARGS is a list of additional keyword arguments.
+
+Valid keywords and arguments are:
+
+ :name Name of the keymap; overrides NAME argument.
+ :dense Non-nil for a dense keymap.
+ :inherit Parent keymap.
+ :group Ignored.
+ :suppress Non-nil to call `suppress-keymap' on keymap,
+ 'nodigits to suppress digits as prefix arguments."
+ (let (inherit dense suppress)
(while args
(let ((key (pop args))
(val (pop args)))
@@ -418,11 +427,14 @@ ARGS is a list of additional keyword arguments."
(:name (setq name val))
(:dense (setq dense val))
(:inherit (setq inherit val))
+ (:suppress (setq suppress val))
(:group)
(t (message "Unknown argument %s in defmap" key)))))
(unless (keymapp m)
(setq bs (append m bs))
(setq m (if dense (make-keymap name) (make-sparse-keymap name))))
+ (when suppress
+ (suppress-keymap m (eq suppress 'nodigits)))
(dolist (b bs)
(let ((keys (car b))
(binding (cdr b)))