setxkbmap - set the keyboard using the X Keyboard Extension
setxkbmap [ args ] [ layout [ variant [ option ... ] ] ]
The setxkbmap command maps the keyboard to use the layout determined by
the options specified on the command line.
An XKB keymap is constructed from a number of components which are com-
piled only as needed. The source for all of the components can be
found in /usr/X11R6/lib/X11/xkb.
-help Prints a message describing the valid input to setxkbmap.
Specifies the name of the compatibility map component used to
construct a keyboard layout.
Specifies the name of an XKB configuration file which describes
the keyboard to be used.
Specifies the display to be updated with the new keyboard lay-
Specifies the name of the geometry component used to construct
a keyboard layout.
Specifies the name of the keymap description used to construct
a keyboard layout.
Specifies the name of the layout used to determine the compo-
nents which make up the keyboard description. Only one layout
may be specified on the command line.
Specifies the name of the keyboard model used to determine the
components which make up the keyboard description. Only one
model may be specified on the command line.
Specifies the name of an option to determine the components
which make up the keyboard description; multiple options may
be specified, one per -option flag. Note that setxkbmap summa-
rize options specified in the command line with options was set
before (saved in root window properties). If you want only
specified options will be set use the -option flag with an
empty argument first.
-print With this option the setxkbmap just prints component names in a
format acceptable by an xkbcomp (an XKB keymap compiler) and
exits. The option can be used for tests instead of a verbose
option and in case when one need to run both the setxkbmap and
the xkbcomp in chain (see below).
Specifies the name of the rules file used to resolve the
request layout and model to a set of component names.
Specifies the name of the symbols component used to construct a
-synch Force synchronization for X requests.
Specifies the name of the types component used to construct a
Specifies which variant of the keyboard layout should be used
to determine the components which make up the keyboard descrip-
tion. Only one variant may be specified on the command line.
USING WITH xkbcomp
If you have an Xserver and a client shell running on different comput-
ers and XKB configuration files sets on those machines are different
you can get problems specifying a keyboard map by model, layout,
options names. The thing is the setxkbcomp converts these names to
names of XKB configuration files according to files that are on the
client side computer. Then it sends the file names to the server where
the xkbcomp has to compose a complete keyboard map using files which
the server has. Thus if the sets of files differ significantly the
names that the setxkbmap generates can be unacceptable on the server
side. You can solve this problem running the xkbcomp on the client
side too. With the -print option setxkbmap just prints the files names
in an appropriate format to its stdout and this output can be piped
directly to the xkbcomp input. For example, a command
setxkbmap us -print | xkbcomp - $DISPLAY
makes both step on the same (client) machine and loads a keyboard map
into the server.
Man(1) output converted with