table of contents
YDOTOOL(1) | General Commands Manual | YDOTOOL(1) |
NAME¶
ydotool - command-line /dev/uinput automation tool
SYNOPSIS¶
ydotool cmd args
ydotool cmd --help
DESCRIPTION¶
ydotool lets you programmatically (or manually) simulate keyboard input and mouse activity, etc. The ydotoold(8) daemon must be running.
Currently implemented command(s):
type
KEYBOARD COMMANDS¶
key [-d,--key-delay <ms>] [<KEYCODE:PRESSED> ...]
e.g. 28:1 28:0 means pressing on the Enter button on a standard US keyboard. (where :1 for pressed means the key is down and then :0 means the key is released)
42:1 38:1 38:0 24:1 24:0 38:1 38:0 42:0 - "LOL"
Non-interpretable values, such as 0, aaa, l0l, will only cause a delay.
See `/usr/include/linux/input-event-codes.h' for available key codes (KEY_*).
You can find the key name/number your keyboard is sending to libinput by running `sudo libinput record` and then selecting your keyboard from the list it will show you the libinput proper key name and number for each key you press.
Options: -d,--key-delay <ms>
type [-D,--next-delay <ms>] [-d,--key-delay <ms>] [-f,--file <filepath>] "text"
Options:
-d,--key-delay <ms>
-D,--next-delay <ms>
-f,--file <filepath>
Example: to type 'Hello world!' you would do:
MOUSE COMMANDS¶
mousemove [-a,--absolute] <x> <y>
Options: --absolute
Example: to move the cursor to absolute coordinates (100,100):
click [-d,--next-delay <ms>] [-r,--repeat N ] [button ...]
Options: -d,--next-delay <ms>
-r,--repeat N
all mouse buttons are represented using hexadecimal numeric values, with an optional bit mask to specify if mouse up/down needs to be omitted.
- 0x00 - LEFT
- 0x01 - RIGHT
- 0x02 - MIDDLE
- 0x03 - SIDE
- 0x04 - EXTR
- 0x05 - FORWARD
- 0x06 - BACK
- 0x07 - TASK
- 0x40 - Mouse down
- 0x80 - Mouse up
- 0x00: chooses left button, but does nothing (you can use this to implement extra sleeps)
- 0xC0: left button click (down then up)
- 0x41: right button down
- 0x82: middle button up
The '0x' prefix can be omitted if you want.
YDOTOOL SOCKET¶
The socket to write to for ydotoold(8) can be changed by the environment variable YDOTOOL_SOCKET.
AUTHOR¶
ydotool was written by ReimuNotMoe.
This manpage was written by bob.hepple@gmail.com but updated since.
LICENCE¶
AGPLv3
SEE ALSO¶
Project site: <https://github.com/ReimuNotMoe/ydotool>
2023-08-08 |