GNU Info

Info Node: (emacs)Non-ASCII Rebinding

(emacs)Non-ASCII Rebinding


Next: Mouse Buttons Prev: Named ASCII Chars Up: Key Bindings
Enter node , (file) or (file)node

Non-ASCII Characters on the Keyboard
------------------------------------

   If your keyboard has keys that send non-ASCII characters, such as
accented letters, rebinding these keys is a bit tricky.  There are two
solutions you can use.  One is to specify a keyboard coding system,
using `set-keyboard-coding-system' (Note: Specify Coding).  Then you
can bind these keys in the usual way(1), like this:

     (global-set-key [?CHAR] 'some-function)

Type `C-q' followed by the key you want to bind, to insert CHAR.

   If you don't specify the keyboard coding system, that approach won't
work.  Instead, you need to find out the actual code that the terminal
sends.  The easiest way to do this in Emacs is to create an empty buffer
with `C-x b temp <RET>', make it unibyte with `M-x
toggle-enable-multibyte-characters <RET>', then type the key to insert
the character into this buffer.

   Move point before the character, then type `C-x ='.  This displays a
message in the minibuffer, showing the character code in three ways,
octal, decimal and hexadecimal, all within a set of parentheses.  Use
the second of the three numbers, the decimal one, inside the vector to
bind:

     (global-set-key [DECIMAL-CODE] 'some-function)

   If you bind 8-bit characters like this in your init file, you may
find it convenient to specify that it is unibyte.  Note: Enabling
Multibyte.

   ---------- Footnotes ----------

   (1) Note that you should avoid the string syntax for binding 8-bit
characters, since they will be interpreted as meta keys.  Note: Strings
of Events.


automatically generated by info2www version 1.2.2.9