[amiwm] add a new command action to rotate windows

This adds a command to iterate over the set of windows.  It's not
like alt-tab in ye olde windows world where you'd alt tab once to
switch between two windows, and then keep alt-tab'ing with alt down
to go through the window list.  For now it just literally iterates
through those windows.

This makes it a lot easier to work with a large number of open
windows without having to constantly use the mouse.
This commit is contained in:
Adrian Chadd
2022-02-13 19:57:24 -08:00
parent 72742103b5
commit e0c13213c5
7 changed files with 177 additions and 2 deletions

View File

@@ -35,11 +35,13 @@ image, but repeated.
## Keyboard module
With the Keyboard module, you can bind window manager functions to keys
on the keyboard. The initstring should consist of keybindings on the
form
on the keyboard. The initstring should consist of one or more keybindings
on the form
modifiers<keysym>:where:func
Multiple keybindings are specified with spaces between them.
### modifiers
Modifiers is 0 or more of:
@@ -47,6 +49,10 @@ Modifiers is 0 or more of:
Mod1 Mod2 Mod3 Mod4 Mod5
Button1 Button2 Button3 Button4 Button5
Modifiers are joined together using spaces. This can be confusing
as it looks like keybindings are specified with spaces between them
but the parser actually handles this.
The modifiers listed must be pressed together with the key to activate
the binding.
@@ -67,6 +73,8 @@ The function to perform when the key is pressed.
Currently the following are defined:
rotatescreens - Move the frontmost screen to the back
raisewindow - Rotate the bottom window to the top of the screen
lowerwindow - Rotate the top window to the bottom of the screen
front - Move the window in which the key is pressed to the front
back - Move the window in which the key is pressed to the back
iconify - Iconify the window in which the key is pressed
@@ -84,6 +92,13 @@ iconify respectively. The will only have effect inside windows and in
window frames. (These are the only places that front/iconfy/back has
effect anyway.)
An example with multiple modifiers in a single keybinding.
Module "Keyboard" \
Meta<M>:all:rotatewindows\
Meta<Tab>:all:raisescreen\
Control Meta<Tab>:all:lowerscreen"
## Filesystem module
This is an april fools joke module, but at least it's a starting