Skip to content

An alternate set of Vim inspired keybindings for PaperWM (a tiling extension for Gnome Shell).

License

Notifications You must be signed in to change notification settings

trst/PaperWM-Vim-ish-Keybindings

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Vim-ish Key Bindings for PaperWM

These key bindings were heavily modelled after my personal configuration of i3/Sway and are quite similar to the DWM-ish key bindings that emerged from this issue.

Note: I'm not super happy with the display switching behaviour tied to the Alt key. If you have suggestions, feel free to open an issue.

Preview Key Bindings

Key bindings Description
Superj Switch to the below window
ShiftAltl Move the active window to the right monitor
Super. Switch to previously active window
PrimarySuperk Switch to workspace above
Superl Switch to the right window
Altj Switch to the below monitor
ShiftAltk Move the active window to the above monitor
PrimaryShiftSuperk Move window one workspace up
ShiftSuperk Move the active window up
ShiftSuperg Switch to the last window
Superg Switch to the first window
Super, Switch to previously active window, backward order
PrimaryShiftSuperj Move window one workspace down
Primaryspace Toggles the floating scratch layer
Superh Switch to the left window
Switch to the next window
Close the active window
PrimarySuperj Switch to workspace below
Superk Switch to the above window
PrimaryShiftSuperh Switch to the previously active workspace, backward order
ShiftSuperh or SuperShift, or SuperCtrlLeft Move the active window to the left
ShiftSuperl or SuperShift. or SuperCtrlRight Move the active window to the right
Altl Switch to the right monitor
PrimaryShiftSuperl Move the active window to the previously active workspace, backward order
ShiftAltj Move the active window to the below monitor
Alth Switch to the left monitor
Switch to the previous window
PrimarySuperl Move the active window to the previously active workspace
Altk Switch to the above monitor
PrimaryShiftspace Attach/detach the active window into the scratch layer
ShiftSuperj Move the active window down
PrimarySuperh Switch to previously active workspace
ShiftAlth Move the active window to the left monitor

Note: there is a conflict with the default Super + Shift + h and Super + Shift + j shortcuts in Gnome. I simply disabled those before coming up with my own, so be aware of that fact before proceeding.

Install

This section has been entirely poached from the Alternative keybindings page. So my thanks to Ole Jørgen Brønner for his original contributions!

# Backup your original key bindings for PaperWM
PREV_BINDINGS=paperwm-bindings-$(date +%F_%T).txt
dconf dump /org/gnome/shell/extensions/paperwm/keybindings/ > $PREV_BINDINGS

# Download Vim-ish PaperWM Key Bindings
wget https://raw.githubusercontent.com/trst/PaperWM-Vim-ish-Keybindings/master/paperwm-vim-ish-keybindings.txt

# Reset PaperWM to default; Skip this if you haven't made any modifications
dconf reset -f /org/gnome/shell/extensions/paperwm/keybindings/

# Load Vim-ish PaperWM Key Bindings
cat paperwm-vim-ish-keybindings.txt | dconf load /org/gnome/shell/extensions/paperwm/keybindings/

Restore Your Previous Key Bindings

Oh no, has something gone wrong? Don't worry, you can easily revert to your previous key bindings, or go back to the default bindings.

To restore your previously backed up key bindings (see the Install section above):

# Reset PaperWM to default
dconf reset -f /org/gnome/shell/extensions/paperwm/keybindings/

# Load Backed Up PaperWM Key Bindings
cat $PREV_BINDINGS | dconf load /org/gnome/shell/extensions/paperwm/keybindings/

Or, to simply nuke and pave (i.e., restore the default PaperWM key bindings):

# Reset PaperWM to default
dconf reset -f /org/gnome/shell/extensions/paperwm/keybindings/

About

An alternate set of Vim inspired keybindings for PaperWM (a tiling extension for Gnome Shell).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published