*** empty log message ***
This commit is contained in:
parent
0b74cf8cd8
commit
3e6580d01d
1 changed files with 17 additions and 0 deletions
|
@ -44,3 +44,20 @@
|
|||
(if (eq (nth 2 plist) prop)
|
||||
(setcdr (cdr plist) (nthcdr 4 plist)))
|
||||
(setq plist (cdr (cdr plist))))))
|
||||
|
||||
(defun map-keymap (function keymap)
|
||||
"Call FUNCTION for every binding in KEYMAP.
|
||||
This includes bindings inherited from a parent keymap.
|
||||
FUNCTION receives two arguments each time it is called:
|
||||
the character (more generally, the event type) that is bound,
|
||||
and the binding it has."
|
||||
(while (consp keymap)
|
||||
(if (consp (car keymap))
|
||||
(funcall function (car (car keymap)) (cdr (car keymap)))
|
||||
(if (vectorp (car keymap))
|
||||
(let ((i (length (car keymap)))
|
||||
(vector (car keymap)))
|
||||
(while (>= i 0)
|
||||
(funcall function i (aref vector i))
|
||||
(setq i (1- i))))))
|
||||
(setq keymap (cdr keymap))))
|
||||
|
|
Loading…
Add table
Reference in a new issue