swayfx/sway/sway-input.5.scd

126 lines
4.6 KiB
Plaintext
Raw Normal View History

2018-05-12 11:25:05 +10:00
sway-input(5)
# NAME
2016-01-23 05:15:03 +11:00
sway-input - input configuration file and commands
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
# DESCRIPTION
2016-01-17 21:53:37 +11:00
2017-12-17 00:19:33 +11:00
Sway allows for configuration of devices within the sway configuration file.
sway-input commands must be used inside an _input { }_ block in the config.
2018-05-12 11:25:05 +10:00
To obtain a list of available device identifiers, run *swaymsg -t get\_inputs*.
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
# INPUT COMMANDS
2017-12-17 00:19:33 +11:00
2018-05-12 11:25:05 +10:00
## KEYBOARD CONFIGURATION
2017-12-17 00:19:33 +11:00
For more information on these xkb configuration options, see
2018-05-12 11:25:05 +10:00
*xkeyboard-config*(7).
2017-12-17 00:19:33 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> xkb\_layout <layout\_name>
2017-12-17 00:19:33 +11:00
Sets the layout of the keyboard like _us_ or _de_.
2018-05-12 11:25:05 +10:00
*input* <identifier> xkb\_model <model\_name>
Sets the model of the keyboard. This has an influence for some extra keys
your keyboard might have.
2017-12-17 00:19:33 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> xkb\_options <options>
2017-12-17 00:19:33 +11:00
Sets extra xkb configuration options for the keyboard.
2018-05-12 11:25:05 +10:00
*input* <identifier> xkb\_rules <rules>
2017-12-17 00:19:33 +11:00
Sets files of rules to be used for keyboard mapping composition.
2018-05-12 11:25:05 +10:00
*input* <identifier> xkb\_variant <variant>
2017-12-17 00:19:33 +11:00
Sets the variant of the keyboard like _dvorak_ or _colemak_.
2018-05-12 11:25:05 +10:00
## MAPPING CONFIGURATION
2018-05-12 11:25:05 +10:00
*input* <identifier> map\_to\_output <identifier>
Maps inputs from this device to the specified output. Only meaningful if the
device is a pointer, touch, or drawing tablet device.
2018-05-12 11:25:05 +10:00
*input* <identifier> map\_to\_region <WxH@X,Y>
Maps inputs from this device to the specified region of the global output
layout. Only meaningful if the device is a pointer, touch, or drawing tablet
device.
2018-05-12 11:25:05 +10:00
*input* <identifier> map\_from\_region <X1xY1> <X2xY2>
2018-04-25 04:39:29 +10:00
Ignores inputs from this device that do not occur within the specified
region. Can be in millimeters (e.g. 10x20mm 20x40mm) or in terms of 0..1
(e.g. 0.5x0.5 0.7x0.7). Not all devices support millimeters. Only meaningful
if the device is not a keyboard an provides events in absolute terms (such
as a drawing tablet or touch screen - most pointers provide events relative
to the previous frame).
2018-05-12 11:25:05 +10:00
## LIBINPUT CONFIGURATION
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> accel\_profile adaptive|flat
Sets the pointer acceleration profile for the specified input device.
2018-05-12 11:25:05 +10:00
*input* <identifier> click\_method none|button\_areas|clickfinger
2016-01-17 21:53:37 +11:00
Changes the click method for the specified device.
2018-05-12 11:25:05 +10:00
*input* <identifier> drag\_lock enabled|disabled
2016-01-17 21:53:37 +11:00
Enables or disables drag lock for specified input device.
2018-05-12 11:25:05 +10:00
*input* <identifier> dwt enabled|disabled
2016-01-17 21:53:37 +11:00
Enables or disables disable-while-typing for the specified input device.
2018-05-12 11:25:05 +10:00
*input* <identifier> events enabled|disabled|disabled\_on\_external\_mouse
Enables or disables send\_events for specified input device. (Disabling
send\_events disables the input device)
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> left\_handed enabled|disabled
Enables or disables left handed mode for specified input device.
2018-05-12 11:25:05 +10:00
*input* <identifier> middle\_emulation enabled|disabled
2016-01-17 21:53:37 +11:00
Enables or disables middle click emulation.
2018-05-12 11:25:05 +10:00
*input* <identifier> natural\_scroll enabled|disabled
2016-06-10 23:32:14 +10:00
Enables or disables natural (inverted) scrolling for the specified input
device.
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> pointer\_accel [<-1|1>]
2016-01-17 21:53:37 +11:00
Changes the pointer acceleration for the specified input device.
2018-05-12 11:25:05 +10:00
*input* <identifier> repeat\_delay <milliseconds>
Sets the amount of time a key must be held before it starts repeating.
2018-05-12 11:25:05 +10:00
*input* <identifier> repeat\_rate <characters per second>
Sets the frequency of key repeats once the repeat\_delay has passed.
2018-05-12 11:25:05 +10:00
*input* <identifier> scroll\_method none|two\_finger|edge|on\_button\_down
2016-01-17 21:53:37 +11:00
Changes the scroll method for the specified input device.
*input* <identifier> scroll\_button <button\_identifier>
Sets button used for scroll\_method on\_button\_down. The button identifier
can be obtained from `libinput debug-events`.
If set to 0, it disables the scroll\_button on\_button\_down.
2016-01-17 21:53:37 +11:00
2018-05-12 11:25:05 +10:00
*input* <identifier> tap enabled|disabled
2016-01-17 21:53:37 +11:00
Enables or disables tap for specified input device.
2018-05-12 11:25:05 +10:00
## SEAT CONFIGURATION
2017-12-17 00:19:33 +11:00
Configure options for multiseat mode. sway-seat commands must be used inside a
_seat { }_ block in the config.
2018-05-12 11:25:05 +10:00
A *seat* is a collection of input devices that act independently of each other.
2017-12-17 00:19:33 +11:00
Seats are identified by name and the default seat is _seat0_ if no seats are
configured. Each seat has an independent keyboard focus and a separate cursor that
is controlled by the pointer devices of the seat. This is useful for multiple
2018-05-12 11:25:05 +10:00
people using the desktop at the same time with their own devices (each sitting
in their own "seat").
2017-12-17 00:19:33 +11:00
2018-05-12 11:25:05 +10:00
*seat* <name> attach <input\_identifier>
Attach an input device to this seat by its input identifier. A special
value of "\*" will attach all devices to the seat.
2017-12-17 00:19:33 +11:00
2018-05-12 11:25:05 +10:00
*seat* <name> fallback true|false
Set this seat as the fallback seat. A fallback seat will attach any device
not explicitly attached to another seat (similar to a "default" seat).
2017-12-19 20:52:03 +11:00
2018-05-12 11:25:05 +10:00
# SEE ALSO
2018-05-12 11:25:05 +10:00
*sway*(5)