mirror of
https://github.com/Ponce/slackbuilds
synced 2024-12-05 00:55:44 +01:00
783aaed0e9
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
291 lines
6.2 KiB
Groff
291 lines
6.2 KiB
Groff
.\" Generated by scdoc 1.11.1
|
|
.\" Complete documentation for this program is not available as a GNU info page
|
|
.ie \n(.g .ds Aq \(aq
|
|
.el .ds Aq '
|
|
.nh
|
|
.ad l
|
|
.\" Begin generated content:
|
|
.TH "YDOTOOL" "1" "2022-02-01"
|
|
.P
|
|
.SH NAME
|
|
.P
|
|
ydotool - command-line \fI/dev/uinput\fR automation tool
|
|
.P
|
|
.SH SYNOPSIS
|
|
.P
|
|
\fBydotool\fR \fBcmd\fR \fIargs.\&.\&.\&\fR
|
|
.P
|
|
\fBydotool\fR \fBcmd\fR --help
|
|
.P
|
|
.SH DESCRIPTION
|
|
.P
|
|
\fBydotool\fR lets you programmatically (or manually) simulate keyboard input and mouse activity, etc.\& It does this by writing directly to \fI/dev/uinput\fR so it generally needs to run as root.\&
|
|
.P
|
|
Currently implemented command(s):
|
|
.P
|
|
\fBtype\fR
|
|
.RS 4
|
|
Type a string
|
|
.RE
|
|
\fBkey\fR
|
|
.RS 4
|
|
Press keys
|
|
.RE
|
|
\fBmousemove\fR
|
|
.RS 4
|
|
Move mouse pointer to absolute position
|
|
.RE
|
|
\fBmousemove_relative\fR
|
|
.RS 4
|
|
Move mouse pointer to relative position
|
|
.RE
|
|
\fBclick\fR
|
|
.RS 4
|
|
Click on mouse buttons
|
|
.RE
|
|
\fBrecorder\fR
|
|
.RS 4
|
|
Record/replay input events
|
|
.RE
|
|
\fBmouseup\fR
|
|
.RS 4
|
|
Send a mouse up event.\&
|
|
.RE
|
|
\fBmousedown\fR
|
|
.RS 4
|
|
Send a mouse down event.\&
|
|
.P
|
|
.RE
|
|
.SH KEYBOARD COMMANDS
|
|
\fBkey\fR [\fB--up\fR] [\fB--down\fR] [\fB--delay\fR \fI<ms>\fR] [\fB--key-delay\fR \fI<ms>\fR] [\fB--repeat\fR \fI<times>\fR] [\fB--repeat-delay <ms>\fR] [\fB--persist-delay <ms>\fR] \fI<key sequence>\fR
|
|
.P
|
|
.RS 4
|
|
Type a given keystroke.\& Examples being "alt+r", "ctrl+J",
|
|
"ctrl+alt+n", "backspace".\&
|
|
.P
|
|
Options:
|
|
.P
|
|
\fB--up\fR
|
|
.RS 4
|
|
Only keyup
|
|
.P
|
|
.RE
|
|
\fB--down\fR
|
|
.RS 4
|
|
Only keydown
|
|
.P
|
|
.RE
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before starting to output keystrokes.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
\fB--key-delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay time between keystrokes.\& Default 12ms.\&
|
|
.P
|
|
.RE
|
|
\fB--repeat\fR \fI<times>\fR
|
|
.RS 4
|
|
Times to repeat the key sequence.\&
|
|
.P
|
|
.RE
|
|
\fB--repeat-delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay time between repetitions.\& Default 0ms.\&
|
|
.P
|
|
.RE
|
|
\fB--persist-delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Keep virtual device alive for \fI<ms>\fR ms.\& Should be used in conjunction with \fB--down\fR or \fB--up\fR
|
|
.P
|
|
.RE
|
|
Generally, any valid name from \fI/usr/include/linux/input-event-codes.\&h\fR will work.\& Multiple keys are separated by '+'.\&
|
|
.P
|
|
Each key sequence can be any number of modifiers and keys, separated by plus (+)
|
|
For example: alt+r Alt+F4 CTRL+alt+f3 aLT+1+2+3 ctrl+Backspace
|
|
.P
|
|
Since we are emulating keyboard input, combinations like Shift+# is invalid because typing a `#' involves pressing Shift and 3.\&
|
|
.P
|
|
Example: Switch to tty1:
|
|
.RS 4
|
|
ydotool key ctrl+alt+f1
|
|
.P
|
|
.RE
|
|
Example: Close a window in graphical environment:
|
|
.RS 4
|
|
ydotool key Alt+F4
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBtype\fR [\fB--delay\fR \fI<ms>\fR] [\fB--key-delay\fR \fI<ms>\fR] [\fB--args\fR \fI<N>\fR] [\fB--file\fR \fI<filepath>\fR] "\fIsomething to type\fR"
|
|
.P
|
|
.RS 4
|
|
Types text as if you had typed it on the keyboard.\&
|
|
.P
|
|
Options:
|
|
.P
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before starting typing.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
\fB--key-delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay time between keystrokes.\& Default 12ms.\&
|
|
.P
|
|
.RE
|
|
\fB--args\fR \fI<N>\fR
|
|
.RS 4
|
|
?\&?\&?\&?\&
|
|
.P
|
|
.RE
|
|
\fB--file\fR \fI<filepath>\fR
|
|
.RS 4
|
|
Specify a file, the contents of which will be typed as if passed as an argument.\& The filepath may also be '-' to read from stdin.\&
|
|
.P
|
|
.RE
|
|
Example: to type 'Hello world!\&' you would do:
|
|
.RS 4
|
|
ydotool type 'Hello world!\&'
|
|
.P
|
|
.RE
|
|
.RE
|
|
.SH MOUSE COMMANDS
|
|
.P
|
|
\fBmousemove\fR [\fB--delay\fR \fI<ms>\fR] \fI<x> <y>\fR
|
|
.RS 4
|
|
Move the mouse to the specific X and Y coordinates on the screen.\&
|
|
.P
|
|
Options:
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before starting move.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
Example: to move the cursor to absolute coordinates (100,100):
|
|
.RS 4
|
|
ydotool mousemove 100 100
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBmousemove_relative\fR [\fB--delay\fR \fI<ms>\fR] \fI<x>\fR \fI<y>\fR
|
|
.RS 4
|
|
Move the mouse x,y pixels relative to the current position of the mouse cursor.\&
|
|
.P
|
|
Options:
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before starting move.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
Example: Relatively move mouse pointer to -100,100:
|
|
.RS 4
|
|
ydotool mousemove_relative -- -100 100
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBclick\fR [\fB--delay\fR \fI<ms>\fR] \fIbutton\fR
|
|
.RS 4
|
|
Send a click.\& Buttons are: 1=left 2=right 3=middle
|
|
.P
|
|
Options:
|
|
.P
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before click.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
Example: Mouse right click:
|
|
.RS 4
|
|
ydotool click 2
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBrecorder\fR [\fB--delay\fR \fI<ms>\fR] [\fB--record\fR \fI<devices>\fR] [\fB--replay\fR \fI<input files>\fR] [\fB--display\fR] [\fB--duration\fR \fI<ms>\fR]
|
|
.P
|
|
.RS 4
|
|
Options:
|
|
.P
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay time before start recording/replaying.\& Default 5000ms.\&
|
|
.P
|
|
.RE
|
|
\fB--record\fR \fI<devices>\fR
|
|
.RS 4
|
|
Devices to record from.\& Default is all, including non-keyboard devices.\&
|
|
.P
|
|
.RE
|
|
\fB--replay\fR \fI<input files>\fR
|
|
.RS 4
|
|
The record file can't be replayed on an architecture with different endianness.\&
|
|
.P
|
|
.RE
|
|
\fB--display\fR
|
|
.RS 4
|
|
?\&?\&?\&?\&
|
|
.P
|
|
.RE
|
|
\fB--duration\fR \fI<ms>\fR
|
|
.RS 4
|
|
Record duration.\& Otherwise use SIGINT to stop recording.\&
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBmouseup\fR [\fB--delay\fR \fI<ms>\fR] \fIbutton\fR
|
|
.RS 4
|
|
Send a mouse up event.\& Buttons are: 1=left 2=right 3=middle
|
|
.P
|
|
Options:
|
|
.P
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before click.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
Example: Mouse right click:
|
|
.RS 4
|
|
ydotool click 2
|
|
.P
|
|
.RE
|
|
.RE
|
|
\fBmousedown\fR [\fB--delay\fR \fI<ms>\fR] \fIbutton\fR
|
|
.RS 4
|
|
Send a mouse down event.\& Buttons are: 1=left 2=right 3=middle
|
|
.P
|
|
Options:
|
|
.P
|
|
\fB--delay\fR \fI<ms>\fR
|
|
.RS 4
|
|
Delay before click.\& Default 100ms.\&
|
|
.P
|
|
.RE
|
|
Example: Mouse right click:
|
|
.RS 4
|
|
ydotool click 2
|
|
.P
|
|
.RE
|
|
.RE
|
|
.SH AUTHOR
|
|
.P
|
|
ydotool was written by ReimuNotMoe.\&
|
|
.P
|
|
This man page by bob.\&hepple@gmail.\&com
|
|
.P
|
|
.SH BUGS
|
|
.P
|
|
When \fBydotool\fR(1) runs and creates a virtual input device, it will take some time for your graphical environment (eg X11/Wayland) to recognize and enable the virtual input device.\& (Usually done by udev)
|
|
.P
|
|
If the delay is too short, the virtual input device may not be recognized & enabled by the graphical environment in time.\&
|
|
.P
|
|
In order to solve this problem, there is a persistent background service, \fBydotoold\fR(1), to hold a persistent virtual device, and accept input from \fBydotool\fR(1).\& When \fBydotoold\fR(1) is unavailable, \fBydotool\fR(1) will work without it.\&
|
|
.P
|
|
.SH COPYRIGHT
|
|
MIT License
|
|
.P
|
|
.SH SEE ALSO
|
|
.P
|
|
\fBydotoold\fR(8)
|
|
.P
|
|
Project site: <https://github.\&com/ReimuNotMoe/ydotool>
|