Python port of xdotool. The long-term goal of this project is to:
- have something that is maintainable in my favorite language
- eventually add more commands
- eventually support Xinerama setups.
The following commands were implemented:
- ✔️
getactivewindow
- ✔️
getwindowfocus
- ✔️
getwindowname
- ✔️
getwindowpid
- ✔️
getwindowgeometry
- ✖️
getdisplaygeometry
- ✖️
search
- ✖️
selectwindow
- ✖️
help
- ✖️
version
- ✖️
behave
- ✖️
behave_screen_edge
- ✖️
click
- ✖️
getmouselocation
- ✖️
key
- ✖️
keydown
- ✖️
keyup
- ✖️
mousedown
- ✖️
mousemove
- ✖️
mousemove_relative
- ✖️
mouseup
- ✖️
set_window
- ✖️
type
- ✔️
windowactivate
- ✖️
windowfocus
- ✖️
windowkill
- ✖️
windowclose
- ✖️
windowmap
- ✖️
windowminimize
- ✔️
windowmove
- ✖️
windowraise
- ✖️
windowreparent
- ✖️
windowsize
- ✖️
windowunmap
- ✔️
set_num_desktops
- ✔️
get_num_desktops
- ✔️
set_desktop
- ✔️
get_desktop
- ✔️
set_desktop_for_window
- ✔️
get_desktop_for_window
- ✖️
get_desktop_viewport
- ✖️
set_desktop_viewport
- ✖️
exec
- ✔️
sleep
Basic window stack is supported, but it needs additional shaping to ensure
compatibility (+ it is missing support for %1
, %@
).
I would appreciate help with a test runner (in pytest).