SETKEYCODES(8) manual page
Table of Contents
setkeycodes - load kernel scancode-to-keycode mapping table entries
setkeycodes
scancode keycode ...
The setkeycodes command reads its arguments
two at a time, each pair of arguments consisting of a scancode (given in
hexadecimal) and a keycode (given in decimal). For each such pair, it tells
the kernel keyboard driver to map the specified scancode to the specified
keycode.
This command is useful only for people with slightly unusual keyboards,
that have a few keys which produce scancodes that the kernel does not recognize.
The usual PC keyboard produces a series of scancodes for each key
press and key release. (Scancodes are shown by showkey -s, see showkey(1)
.)
The kernel parses this stream of scancodes, and converts it to a stream
of keycodes (key press/release events). (Keycodes are shown by showkey.)
Apart from a few scancodes with special meaning, and apart from the sequence
produced by the Pause key, and apart from shiftstate related scancodes,
and apart from the key up/down bit, the stream of scancodes consists of
unescaped scancodes xx (7 bits) and escaped scancodes e0 xx (8+7 bits).
To these scancodes or scancode pairs, a corresponding keycode can be assigned
(in the range 1-127). For example, if you have a Macro key that produces
e0 6f according to showkey(1)
, the command setkeycodes e06f 112
will assign
the keycode 112 to it, and then loadkeys(1)
can be used to define the function
of this key.
Some older kernels might hardwire a low scancode range to the
equivalent keycodes; setkeycodes will fail when you try to remap these.
In 2.6 kernels key codes lie in the range 1-255, instead of 1-127.
(It might be best to confine oneself to the range 1-239.)
In 2.6 kernels raw
mode, or scancode mode, is not very raw at all. The code returned by showkey
-s will change after use of setkeycodes. A kernel bug. See also showkey(1)
.
None.
The keycodes of X have nothing to do with those of Linux.
Unusual keys can be made visible under Linux, but not under X.
dumpkeys
(1)
, loadkeys (1)
, showkey (1)
, getkeycodes (8)
Table of Contents