summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Pluim <rpluim@gmail.com>2023-03-17 14:16:00 +0100
committerRobert Pluim <rpluim@gmail.com>2023-03-17 14:18:10 +0100
commite4a7d0cd6eaf4feb4cb2a6bbb8058b70d6676b62 (patch)
tree0b0a1ebbf96d2b67e240d2298c4d01cd3a531318
parentbb3e0ded9eba71596b34806b302d63977259c3dd (diff)
downloademacs-e4a7d0cd6eaf4feb4cb2a6bbb8058b70d6676b62.tar.gz
Document `keymap-unset' in lispref
* doc/lispref/keymaps.texi (Changing Key Bindings): Document keymap-unset.
-rw-r--r--doc/lispref/keymaps.texi11
1 files changed, 11 insertions, 0 deletions
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi
index 7876780dcd4..02feda5cd04 100644
--- a/doc/lispref/keymaps.texi
+++ b/doc/lispref/keymaps.texi
@@ -1427,6 +1427,17 @@ If @var{key} is @kbd{<t>}, this sets the default binding in
@var{keymap}. When an event has no binding of its own, the Emacs
command loop uses the keymap's default binding, if there is one.
+@findex keymap-unset
+@defun keymap-unset keymap key &optional remove
+This function is the inverse of @code{keymap-set}, it unsets the
+binding for @var{key} in @var{keymap}, which is the same as setting
+the binding to @code{nil}. In order to instead remove the binding
+completely, specify @var{remove} as non-nil. This only makes a
+difference if @var{keymap} has a parent keymap. When unsetting a key
+in a child map, it will still shadow the same key in the parent
+keymap. Removing the binding will allow the key in the parent keymap
+to be used.
+
@cindex invalid prefix key error
@cindex key sequence error
Every prefix of @var{key} must be a prefix key (i.e., bound to a keymap)