diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-10-09 05:05:39 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-10-09 05:05:39 +0000 |
commit | 4f4a84ec801ea0d62d32a1b5679def1e16d3f813 (patch) | |
tree | 86e671367bcef6d2b42e0a3ae0e1a83c32659f50 /doc/misc/viper.texi | |
parent | beb9f7453ae9a4473cf43a16c186a090d77c4b3b (diff) |
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.
Diffstat (limited to 'doc/misc/viper.texi')
-rw-r--r-- | doc/misc/viper.texi | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi index 4e9eaaff40..c86b238316 100644 --- a/doc/misc/viper.texi +++ b/doc/misc/viper.texi @@ -1745,7 +1745,8 @@ Setting this variable too high may slow down your typing. Setting it too 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 @@ not emit the right signals for Emacs to understand. To let Emacs know about 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 @@ So much about Viper-specific bindings. 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} |