diff doc/misc/viper.texi @ 85106:fd282fb888de

Add new `input-decode-map' keymap and use it for temrinal escape sequences. * keyboard.h (struct kboard): Add Vinput_decode_map. Remove Vlocal_key_translation_map. * keyboard.c (read_key_sequence): Add support for input-decode-map. (init_kboard): Init input-decode-map. Replace local-key-translation-map back with key-translation-map. (syms_of_keyboard): Declare input-decode-map. Remove local-key-translation-map. Update docstrings. (mark_kboards): Mark Vinput_decode_map. Don't mark Vlocal_key_translation_map. * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map. Replace local-key-translation-map back with key-translation-map. * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN): Bind in input-decode-map rather than function-key-map.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Tue, 09 Oct 2007 05:05:39 +0000
parents 3d431f1997d8
children 5d58981e6690
line wrap: on
line diff
--- a/doc/misc/viper.texi	Tue Oct 09 04:28:00 2007 +0000
+++ b/doc/misc/viper.texi	Tue Oct 09 05:05:39 2007 +0000
@@ -1745,7 +1745,8 @@
 low may make it hard to type macros quickly enough.
 @item viper-translate-all-ESC-keysequences @code{t} on tty, @code{nil} on windowing display
 Normally, Viper lets Emacs translate only those ESC key sequences that are
-defined in the low-level key-translation-map or function-key-map, such as those
+defined in the low-level @code{input-decode-map}, @code{key-translation-map}
+or @code{function-key-map}, such as those
 emitted by the arrow and function keys. Other sequences, e.g., @kbd{\\e/}, are
 treated as @kbd{ESC} command followed by a @kbd{/}. This is good for people
 who type fast and tend to hit other characters right after they hit
@@ -2009,12 +2010,12 @@
 those keys, you will have to find out which key sequences they emit
 by typing @kbd{C-q} and then the key (you should switch to Emacs state
 first).  Then you can bind those sequences to their preferred forms using
-@code{function-key-map} as follows:
+@code{input-decode-map} as follows:
 
 @lisp
 (cond ((string= (getenv "TERM") "xterm")
-(define-key function-key-map "\e[192z" [f11])    ; L1
-(define-key function-key-map "\e[195z" [f14])    ; L4, Undo
+(define-key input-decode-map "\e[192z" [f11])    ; L1
+(define-key input-decode-map "\e[195z" [f14])    ; L4, Undo
 @end lisp
 
 The above illustrates how to do this for Xterm.  On VT100, you would have to
@@ -2206,6 +2207,7 @@
 Manual}, and the Emacs quick reference card for the general info on key
 bindings in Emacs.
 
+@vindex @code{input-decode-map}
 @vindex @code{function-key-map}
 @vindex @code{viper-vi-global-user-map}
 @vindex @code{viper-insert-global-user-map}