summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChong Yidong <cyd@gnu.org>2012-10-30 07:20:24 +0800
committerChong Yidong <cyd@gnu.org>2012-10-30 07:20:24 +0800
commitb5dd9a779bafdbac1658b7e610ec04c195a7f21c (patch)
tree3ab6feb5fbfe2e0e829068a5a34524d508fff196
parent748b0d840fea13e0b6ba36341873dc68e57f5bc5 (diff)
downloademacs-b5dd9a779bafdbac1658b7e610ec04c195a7f21c.tar.gz
Fix isearch handling of keypad characters with kmacros.
* isearch.el (isearch-other-meta-char): Ensure that a reprocessed function key is stored in a keyboard macro. Fixes: debbugs:4894
-rw-r--r--lisp/ChangeLog3
-rw-r--r--lisp/isearch.el4
2 files changed, 6 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2474574de92..bd57e7dc5f0 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,8 @@
2012-10-29 Chong Yidong <cyd@gnu.org>
+ * isearch.el (isearch-other-meta-char): Ensure that a reprocessed
+ function key is stored in a keyboard macro (Bug#4894).
+
* thingatpt.el (number-at-point): Apply a thing-at-point property.
2012-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 37993767013..ead6f88cb97 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -2149,7 +2149,8 @@ Isearch mode."
(setq prefix-arg arg)
(apply 'isearch-unread keylist))
(setq keylist
- (listify-key-sequence (lookup-key local-function-key-map key)))
+ (listify-key-sequence
+ (lookup-key local-function-key-map key)))
(while keylist
(setq key (car keylist))
;; If KEY is a printing char, we handle it here
@@ -2158,6 +2159,7 @@ Isearch mode."
(if (and (integerp key)
(>= key ?\s) (/= key 127) (< key 256))
(progn
+ (store-kbd-macro-event key)
(isearch-process-search-char key)
(setq keylist (cdr keylist)))
;; As the remaining keys in KEYLIST can't be handled