xsetwacom
commandline utility to query and modify wacom driver set‐ tings.
TLDR
List all the available Wacom devices. The device name is in the first column
Set Wacom area to specific screen. Get name of the screen with xrandr
Set mode to relative (like a mouse) or absolute (like a pen) mode
Rotate the input (useful for tablet-PC when rotating screen) by 0|90|180|270 degrees from "natural" rotation
Set button to only work when the tip of the pen is touching the tablet
SYNOPSIS
xsetwacom [options] [command [arguments]]
GENERAL OPTIONS
-d, --display display_name Connect to the X server specified in display_name; see X(7). -h, --help Prints a short help. -v, --verbose Enable verbose output, useful for debugging. -V, --version Display version number and exit.
COMMANDS
Allowed commands are list, get, and set. The command may be specified with or without one or two preceding dashes, i.e. --list is equivalent to -list and list. LIST COMMANDS list devices List known devices. Only input devices managed by the wacom driver are listed. list parameters List known parameters. List all parameters suitable for the get or the set command. Note that not all parameters are available on all device types. list modifiers List the aliases for modifiers and other keys that can be used when setting button action mappings. GET COMMANDS get device_name parameter Get the current settings for the parameter on the given device. Note that not all parameters are available on all device types. The special parameter name "all" may be provided to display all current settings on the device. By default, options are printed on the commandline in the respective format. The output format may be altered with one of the following op‐ tions: -s, --shell Display the output in shell format, i.e. as shell commands to xsetwacom to reproduce the same parameter. -x, --xconf Display the output in xorg.conf format, i.e. as option lines that may be added to the InputDevice section in the xorg.conf. SET COMMANDS set device_name parameter [value] Set the parameter value on the given device to the value pro‐ vided. Note that not all parameters are writable, some are read- only and result in an error when trying to be modified.
PARAMETERS
Not all parameters are available on all tools. Use the get command
with the parameter or "all" parameter for specific input tool applica‐
ble parameters and current settings.
Area x1 y1 x2 y2
Set the tablet input area in device coordinates in the form top
left x/y and bottom right x/y. Top left and bottom right are de‐
fined in the device's native orientation, regardless of the ac‐
tual rotation currently applied. Input outside of these coordi‐
nates will be clipped to the edges of the area defined. De‐
fault: 0 0 x2 y2; with x2 and y2 tablet specific.
Button button-number [mapping]
Set a mapping for the specified button-number. Mappings take the
form of either a single numeric button or an 'action' to be per‐
formed. If no mapping is provided, the default mapping is re‐
stored. If button-number is mapped to 0, the Button event is ig‐
nored.
Numeric button mappings indicate what X11 button number the
given button-number should correspond to. For example, a mapping
of "3" means a press of the given button-number will produce a
press of X11 button 3 (i.e. right click).
Action mappings allow button presses to perform many events.
They take the form of a string of keywords and arguments.
The "key" keyword is followed by a list of key names. These can
optionally be preceded by "+" for press and "-" for release. If
+/- is not given, press-and-release is assumed, except for modi‐
fier keys which are left pressed. Key names can be X11 KeySyms
or some aliases such as 'shift' or 'f1' (the full list can be
seen with the list modifiers command).
To assign a key that is not in the modifiers list, use the
KeySym in /usr/include/X11/keysymdef.h with the XK_ prefix re‐
moved or its actual value as is. For example, XK_BackSpace
should be specified as "BackSpace". "0xff80" can also be used to
replace "BackSpace" since it's the unique KeySym value of
Backspace key.
Here is a combined example: "key +a shift b shift -a 0xff0d"
converts the button into a series of keystrokes. In this exam‐
ple, "press a, press shift, press and release b, release shift,
release a, then press and release enter". "key +a +shift b
-shift -a 0xff0d" does the same thing.
The "button" keyword is similar except that its arguments are
X11 button numbers.
The "modetoggle" keyword is also recognized; it takes no argu‐
ments, and toggles the device mode between relative and absolute
pointer tracking.
The "pan" keyword causes the driver to send scroll events while
the pen is dragged. This makes it easy to scroll through lists
and documents, pan around 2D canvases, and zoom in/out of 3D
scenes (exact behavior depends on application interpretation of
scrollwheel events). Dragging the pen up/down will send scroll‐
wheel down/up events; dragging it left/right will send scroll‐
wheel right/left events.
The events in the action mapping are sent when the physical but‐
ton is pressed. If the action mapping leaves any buttons or
keys pressed (such as a modifier key), they will be released
when the physical button is released.
Multiple keywords may be present in one action if desired: for
example "key +ctrl button 5 key -ctrl". Each keyword takes all
arguments until the next keyword.
A maximum of 256 presses and/or releases can be specified in an
action mapping.
The driver can only simulate physical key events but not keysyms
and xsetwacom translates the mapping sequence into such events.
Thus, symbols on the same physical key will generate the same
event. For example, '1' and '!' are on the same key on a US key‐
board and thus have the same keycode). For access to keys on a
higher shift level, the sequence should be entered as it would
be typed on a physical keyboard. For example, a exclamation mark
is entered by the sequence of "key +shift 1 -shift".
BindToSerial [serial|0]
Bind the device to the tool with the specified serial number.
Once bound, the device will ignore events from other tools. A
serial of 0 means the device is unbound and will react to any
tool of the matching type. Default: 0
MapToOutput [output]
Map the tablet's input area to a given output (e.g. "VGA1").
Output names may either be the name of a head available through
the XRandR extension, or an X11 geometry string of the form
WIDTHxHEIGHT+X+Y. To switch to the next available output, the
"next" keyword is also supported. This will cycle between the
individual monitors connected to the system, and then the entire
desktop. The mapping may be reset to the entire desktop at any
time with the output name "desktop". Users of the NVIDIA binary
driver should use the output names "HEAD-0" and "HEAD-1" until
the driver supports XRandR 1.2 or later.
The output mapping configuration is a onetime setting and does
not track output reconfigurations; the command needs to be re-
run whenever the output configuration changes. When used with
tablet rotation, the tablet must be rotated before it is mapped
to the new screen. This parameter is write-only and cannot be
queried.
Mode Absolute|Relative
Set the device mode as either Relative or Absolute. Relative
means pointer tracking for the device will function like a
mouse, whereas Absolute means the pointer corresponds to the de‐
vice's actual position on the tablet or tablet PC screen. De‐
fault: Absolute for stylus, eraser and tablet PC touch; Rela‐
tive for cursor and tablet touch.
PressureCurve x1 y1 x2 y2
A Bezier curve of third order, composed of two anchor points
(0,0 and 100,100) and two user modifiable control points that
define the curve's shape. Raise the curve (x1
WAYLAND SUPPORT
This tool provides access to the device properties implemented in the xf86-input-wacom X server input module. It does not work under a Way‐ land compositor as the input module is not active. See https://github.com/linuxwacom/xf86-input-wacom/wiki/Wayland for de‐ tails.
AUTHORS
Peter Hutterer
DESCRIPTION
This program queries or changes properties on the devices loaded by the wacom driver. The modification of properties happens at runtime and is not persistent through X server restarts.
SEE ALSO
Xorg(1), wacom(4), xorg.conf(5), X(7) More information is available at http://linuxwacom.sourceforge.net