This is like `define-key' except that the binding for KEY is placed
just after the binding for the event AFTER, instead of at the beginning
of the map.
-The order matters when the keymap is used as a menu."
+The order matters when the keymap is used as a menu.
+KEY must contain just one event type--it must be a string or vector
+of length 1."
(or (keymapp keymap)
(signal 'wrong-type-argument (list 'keymapp keymap)))
+ (if (> (length key) 1)
+ (error "multi-event key specified in `define-key-after'"))
(let ((tail keymap) done inserted
(first (aref key 0)))
(while (and (not done) tail)
(> to (length keyboard-translate-table)))
(progn
(let* ((i (length keyboard-translate-table))
- (table (make-string (- 256 i) 0)))
+ (table (concat keyboard-translate-table
+ (make-string (- 256 i) 0))))
(while (< i 256)
(aset table i i)
(setq i (1+ i)))