← all projects

three-finger-slash

Cascading Windows: One click access to all windows using HammerSpoon (http://www.hammerspoon.org/)
repo

Three Finger Slash

One click access to all windows, on macOS (via Hammerspoon) and Linux/X11.

Expose, tab switchers, window tiling... But you're still frustrated trying to find the right window? This might be what you need.

Features

The default key is the Three Finger Slash (command option control / on macOS, super alt control / on Linux):

screenshot

Setup — macOS

Requires Hammerspoon.

Setup — Linux (X11)

Requires Python 3 and python-xlib:

sudo apt install python3-xlib     # Debian/Ubuntu
sudo dnf install python3-xlib     # Fedora
sudo pacman -S python-xlib        # Arch

Check it works by running it directly, with a few windows open:

./linux/three_finger_slash.py

Then bind it to a key. There is no Hammerspoon equivalent on Linux, so use whichever hotkey daemon your desktop already runs. cmd has no Linux counterpart, so these use super + alt + ctrl + /. Use the absolute path to your clone in place of ~/three-finger-slash.

sxhkd — add to ~/.config/sxhkd/sxhkdrc:

super + alt + ctrl + slash
    ~/three-finger-slash/linux/three_finger_slash.py

xbindkeys — add to ~/.xbindkeysrc:

"~/three-finger-slash/linux/three_finger_slash.py"
    Mod4 + Alt + Control + slash

GNOME (X11 session) — register a custom shortcut:

KEY=/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/three-finger-slash/
gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['$KEY']"
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$KEY name 'Three Finger Slash'
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$KEY command "$HOME/three-finger-slash/linux/three_finger_slash.py"
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$KEY binding '<Super><Alt><Control>slash'

KDE Plasma — System Settings → Shortcuts → Add Command.

Notes