stackswap - bakkeby/dusk GitHub Wiki
| Function | Expected argument | Default keybindings | 
|---|---|---|
| stackswap | int | Listed separately further down | 
The stackswap function allows for clients at specific positions in the client stack on a
workspace to swap places.
Refer to the stacker page for a rundown on setup instructions and how this works.
Below is an explanation for what the default keybindings do.
| Default keybindings (when enabled) | Description | 
|---|---|
AltGr+Shift+w | 
Swap the client with the first client in the stack | 
AltGr+Shift+e | 
Swap the client with the second client in the stack | 
AltGr+Shift+a | 
Swap the client with the third client in the stack | 
AltGr+Shift+z | 
Swap the client above the last client the stack | 
AltGr+Shift+j | 
Swap the client down the stack | 
AltGr+Shift+k | 
Swap the client up the stack | 
AltGr+Shift+s | 
Swap the client with the previously selected client | 
When it comes to focus change when swapping the general principle is that:
- focus remains with the currently selected client
 - unless one of the two clients is a master client, in which case focus will remain with the window left in the master area following the swap
 
External commands:
duskc run_command stackswap 1     # swap the client with the first client in the stack
duskc run_command stackswap 2     # swap the client with the second client in the stack
duskc run_command stackswap 3     # swap the client with the third client in the stack
duskc run_command stackswap -1    # swap the client with the last client tin he stack
duskc run_command stackswap 1999  # swap the client up the stack
duskc run_command stackswap 2001  # swap the client down the stack
duskc run_command stackswap 3000  # swap the client to the previously selected client
duskc run_command stackswap 4001  # swap with the first master client
duskc run_command stackswap 4002  # swap with the second master client
duskc run_command stackswap 5001  # swap with the first stack client
duskc run_command stackswap 5002  # swap with the second stack client
duskc run_command stackswap 5003  # swap with the third stack clientTip: this can also be set up with key modes or key chains when using sxhkd to handle keybindings.
This is intended to be combined with the stackfocus and stackpush commands.