# HG changeset patch # User Luc Teirlinck # Date 1091923207 0 # Node ID 8685ad649821087ac3ff547eb5186abcf1564722 # Parent 76bd0e9313182fc7e75454f9723b1da528872698 (Translating Input): Only non-prefix bindings in `key-translation-map' override actual key bindings. Warn about possible indirect effect of actual key bindings on non-prefix bindings in `key-translation-map'. diff -r 76bd0e931318 -r 8685ad649821 lispref/os.texi --- a/lispref/os.texi Sat Aug 07 21:07:57 2004 +0000 +++ b/lispref/os.texi Sun Aug 08 00:00:07 2004 +0000 @@ -1686,12 +1686,18 @@ @code{function-key-map}. @item -@code{key-translation-map} overrides actual key bindings. For example, -if @kbd{C-x f} has a binding in @code{key-translation-map}, that -translation takes effect even though @kbd{C-x f} also has a key binding -in the global map. +Non-prefix bindings in @code{key-translation-map} override actual key +bindings. For example, if @kbd{C-x f} has a non-prefix binding in +@code{key-translation-map}, that translation takes effect even though +@kbd{C-x f} also has a key binding in the global map. @end itemize +Note however that actual key bindings can have an effect on +@code{key-translation-map}, even though they are overridden by it. +Indeed, actual key bindings override @code{function-key-map} and thus +may alter the key sequence that @code{key-translation-map} receives. +Clearly, it is better to avoid to avoid this type of situation. + The intent of @code{key-translation-map} is for users to map one character set to another, including ordinary characters normally bound to @code{self-insert-command}.