Provided by: x11-xkb-utils_7.7+9_amd64 bug

NAME

       setxkbmap - set the keyboard using the X Keyboard Extension

SYNOPSIS

       setxkbmap [ args ] [ layout [ variant [ option ...  ] ] ]

DESCRIPTION

       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  compiled  only  as
       needed.  The source for all of the components can be found in /usr/share/X11/xkb.

OPTIONS

       -compat name
               Specifies the name of the compatibility map component used to construct a keyboard
               layout.

       -config file
               Specifies the name of an XKB configuration file which describes the keyboard to be
               used.

       -device device
               Specifies  the  numeric  device  id of the input device to be updated with the new
               keyboard layout. If not specified, the core keyboard device of  the  X  server  is
               updated.

       -display display
               Specifies the display to be updated with the new keyboard layout.

       -geometry name
               Specifies the name of the geometry component used to construct a keyboard layout.

       -help   Prints a message describing the valid input to setxkbmap.

       -I directory
               Adds  a  directory  to  the list of directories to be used to search for specified
               layout or rules files.

       -keycodes name
               Specifies the name of the keycodes component used to construct a keyboard layout.

       -keymap name
               Specifies the name of the keymap description used to construct a keyboard layout.

       -layout name
               Specifies the name of the layout used to determine the components  which  make  up
               the  keyboard  description.  The  -layout  option  may only be used once. Multiple
               layouts can be specified as a comma-separated list.

       -model name
               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.

       -option name
               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 adds options specified in the command line to the options that
               were  set  before (as saved in root window properties). If you want to replace all
               previously specified options, use the -option flag with an empty argument first.

       -print  With this option setxkbmap just prints component names in a format  acceptable  by
               xkbcomp  (an  XKB  keymap  compiler)  and  exits. The option can be used for tests
               instead of a verbose option and in cases when one needs to run both the  setxkbmap
               and the xkbcomp in chain (see below).

       -query  With  this option setxkbmap just prints the current rules, model, layout, variant,
               and options, then exits.

       -rules file
               Specifies the name of the rules file used to  resolve  the  requested  layout  and
               model to a set of component names.

       -symbols name
               Specifies the name of the symbols component used to construct a keyboard layout.

       -synch  Force synchronization for X requests.

       -types name
               Specifies the name of the types component used to construct a keyboard layout.

       -variant name
               Specifies  which  variant  of  the keyboard layout should be used to determine the
               components which make up the keyboard description. The -variant option may only be
               used  once.  Multiple variants can be specified as a comma-separated list and will
               be matched with the layouts specified with -layout.

       -verbose|-v [level]
               Specifies level of verbosity in output messages.  Valid levels range from 0 (least
               verbose)  to 10 (most verbose).  The default verbosity level is 5.  If no level is
               specified, each -v or -verbose flag raises the level by 1.

       -version
               Prints the program's version number.

USING WITH xkbcomp

       If you have an Xserver and a client shell running on  different  computers  and  some  XKB
       configuration  files  on  those  machines are different, you can get problems specifying a
       keyboard map by model, layout, and options names.  This is because setxkbmap converts  its
       arguments  to  names of XKB configuration files according to files that are on the client-
       side computer, then sends these file names to the server where xkbcomp has  to  compose  a
       complete  keyboard map using files which the server has.  Thus if the sets of files differ
       in some way, the names that setxkbmap generates can be unacceptable on  the  server  side.
       You can solve this problem by running the xkbcomp on the client side too.  With the -print
       option setxkbmap just prints the file names in an appropriate format  to  its  stdout  and
       this output can be piped directly to the xkbcomp input.  For example, the command

       setxkbmap us -print | xkbcomp - $DISPLAY

       makes  both  steps  run  on  the  same  (client) machine and loads a keyboard map into the
       server.

XWAYLAND

       Xwayland is an X server that uses a Wayland  Compositor  as  backend.   Xwayland  acts  as
       translation  layer between the X protocol and the Wayland protocol but does not manage the
       keymaps - these are handled by the Wayland Compositor.

       Changing the keymap with setxkbmap is not supported by Xwayland.  In most instances, using
       setxkbmap  on Xwayland is indicative of a bug in a shell script and setxkbmap will print a
       warning. Use the Wayland Compositor's native XKB configuration methods instead.

SEE ALSO

       xkbcomp(1), xkeyboard-config(7)

FILES

       /usr/share/X11/xkb