Go to main content

man pages section 1: User Commands

Exit Print View

Updated: July 2017
 
 

setxkbmap (1)

Name

setxkbmap - set the keyboard using the X Keyboard Extension

Synopsis

/usr/bin/setxkbmap [ args ] [ layout [ variant [ option ...  ] ] ]

Description

SETXKBMAP(1)                General Commands Manual               SETXKBMAP(1)



NAME
       setxkbmap - set the keyboard using the X Keyboard Extension

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

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

       -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  lay-
               out.

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

       -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 compo-
               nents 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 descrip-
               tion. The -variant option may only be used once. Multiple vari-
               ants  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.

USING WITH xkbcomp
       If  you have an Xserver and a client shell running on different comput-
       ers and XKB configuration files on those machines are different you can
       get problems specifying a keyboard map by model, layout, options names.
       This is because setxkbcomp converts these names to names of XKB config-
       uration  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 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.

SEE ALSO
       xkbcomp(1), xkeyboard-config(5)

FILES
       /usr/share/X11/xkb


ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:


       +-----------------------------+-----------------------------+
       |      ATTRIBUTE TYPE         |      ATTRIBUTE VALUE        |
       +-----------------------------+-----------------------------+
       |Availability                 |x11/keyboard/xkb-utilities   |
       +-----------------------------+-----------------------------+
       |Interface Stability          |Committed                    |
       +-----------------------------+-----------------------------+



X Version 11                    setxkbmap 1.3.0                   SETXKBMAP(1)