Last active
February 1, 2026 23:57
-
-
Save theodric/5780dede11e5385a3daf94d63eec9475 to your computer and use it in GitHub Desktop.
fusuma - gestures for KDE desktop control (on kwin_wayland with gestures disabled) plus c.2008 Mac browser navigation gestures
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| You must rebuild kwin_wayland with gestures patched out! | |
| You must install fusuma (https://github.com/iberianpig/fusuma) *and* fusuma-plugin-sendkey (https://github.com/iberianpig/fusuma-plugin-sendkey)! | |
| FIRST FILE | |
| <~/.config/autostart/fusuma.desktop> | |
| ` | |
| [Desktop Entry] | |
| Type=Application | |
| Exec=fusuma.ruby4.0 -d | |
| Hidden=false | |
| NoDisplay=false | |
| X-GNOME-Autostart-enabled=true | |
| Name=Fusuma | |
| Comment=Start Fusuma gesture recognizer | |
| ` | |
| SECOND FILE | |
| <~/.config/fusuma/config.yaml> | |
| ` | |
| # Global settings (approximate Touchegg's action_execute_threshold and animation_delay) | |
| threshold: | |
| swipe: 0.5 # Lower = easier to trigger (similar to 10% threshold) | |
| pinch: 0.5 | |
| interval: | |
| swipe: 0.8 # Delay between gestures | |
| pinch: 0.8 | |
| #swipe: | |
| # 3: | |
| # left: | |
| # sendkey: "LEFTALT+LEFT" | |
| # right: | |
| # sendkey: "LEFTALT+RIGHT" | |
| # Default context (equivalent to Touchegg's <application name="All">) | |
| swipe: | |
| 3: | |
| left: | |
| sendkey: "LEFTALT+LEFT" # History back | |
| right: | |
| sendkey: "LEFTALT+RIGHT" # History forward | |
| # up: | |
| # sendkey: "LEFTCTRL+T" # Open a new tab | |
| # down: | |
| # sendkey: "LEFTCTRL+W" # Close a tab | |
| 4: | |
| up: | |
| begin: | |
| command: "qdbus org.kde.kglobalaccel /component/kwin invokeShortcut 'Overview'" | |
| down: | |
| command: "qdbus org.kde.kglobalaccel /component/kwin invokeShortcut 'Show Desktop'" | |
| # right: | |
| # command: "qdbus org.kde.KWin /KWin previousDesktop" | |
| # left: | |
| # command: "qdbus org.kde.KWin /KWin nextDesktop" | |
| right: | |
| sendkey: "LEFTCTRL+LEFTMETA+LEFT" | |
| left: | |
| sendkey: "LEFTCTRL+LEFTMETA+RIGHT" | |
| --- | |
| # App-specific context (equivalent to Touchegg's <application name="Google-chrome,Chromium,Firefox,Brave-browser,brave-browser,zen,dolphin">) | |
| # Check exact app names with `fusuma-appmatcher -l` and adjust the list. | |
| context: | |
| application: | |
| - Google-chrome | |
| - Chromium | |
| - Firefox | |
| - Brave-browser | |
| - zen | |
| - Dolphin # May need to be 'org.kde.dolphin' or similar | |
| pinch: | |
| 2: | |
| in: | |
| sendkey: 'KP_SUBTRACT' # Zoom out; decrease sends KP_ADD if gesture reverses (handled by Fusuma direction) | |
| out: | |
| sendkey: 'KP_ADD' # Zoom in; decrease sends KP_SUBTRACT if gesture reverses | |
| ` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment