[PATCH] emacs: Fix search tab completion in terminals

Austin Clements amdragon at MIT.EDU
Thu Mar 15 20:13:12 PDT 2012


In X, Emacs distinguishes the tab key, which produces a 'tab event;
from C-i, which produces a ?\t event.  However, in a terminal, these
are indistinguishable and only produce a ?\t event.  In order to
simplify things, Emacs automatically translates from 'tab to ?\t (see
"Function key translations" in M-x describe-bindings), so functions
only need to be bound to ?\t to work in all situations.

Previously, the search tab completion code usedq (kbd "<tab>"), which
produced the event sequence [tab], which only matched the 'tab event
and hence only worked in X.  This patch changes it to (kbd "TAB"),
which matches the general ?\t event and works in all situations.
---
 emacs/notmuch.el |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/emacs/notmuch.el b/emacs/notmuch.el
index 99e0c93..f0afa07 100644
--- a/emacs/notmuch.el
+++ b/emacs/notmuch.el
@@ -962,7 +962,7 @@ PROMPT is the string to prompt with."
 					 completions)))
 	       (t (list string)))))))
       ;; this was simpler than convincing completing-read to accept spaces:
-      (define-key keymap (kbd "<tab>") 'minibuffer-complete)
+      (define-key keymap (kbd "TAB") 'minibuffer-complete)
       (let ((history-delete-duplicates t))
 	(read-from-minibuffer prompt nil keymap nil
 			      'notmuch-search-history nil nil)))))
-- 
1.7.7.2



More information about the notmuch mailing list