|
2 | 2 | # SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de> |
3 | 3 | # SPDX-License-Identifier: CC-BY-4.0 |
4 | 4 |
|
5 | | -title: Opening Menus with Mouse Buttons |
| 5 | +title: Alternative Ways to Open Menus |
6 | 6 | description: How to open Kando menus with mouse buttons or touch gestures. |
7 | 7 | --- |
8 | 8 |
|
9 | | -import { Aside, Tabs, TabItem } from '@astrojs/starlight/components'; |
| 9 | +import { Aside, Tabs, TabItem, LinkCard } from '@astrojs/starlight/components'; |
| 10 | +import { Icon } from 'astro-icon/components'; |
10 | 11 | import Intro from '../../components/Intro.astro'; |
11 | 12 |
|
12 | 13 |  |
13 | 14 |
|
14 | 15 | <Intro> |
15 | | - While Kando does not have a builtin way to open menus with mouse buttons or touch |
| 16 | + While Kando does not have a builtin way to open menus with 🖱️ mouse buttons or 👆 touch |
16 | 17 | gestures, there are many platform-dependent third-party tools which can help you with |
17 | | - this. |
| 18 | + this! |
18 | 19 | </Intro> |
19 | 20 |
|
20 | | -## Open Menus From Other Tools |
| 21 | +## <Icon name="solar:lightbulb-bolt-line-duotone" class="inline-icon" /> Tutorials and Guides for Specific Tools |
21 | 22 |
|
22 | | -You can either make the third-party tool open the menu by simulating the shortcut for the menu, or it can directly call the Kando executable with the [`--menu "menu name"`](/launch-from-cli) or [`--trigger <shortcut>`](/launch-from-cli) argument. |
| 23 | +Below are some tutorials and guides for specific tools which show you how to open Kando menus with these tools. |
| 24 | +If you want to share your own guide, please let us know! |
| 25 | +You can either open an issue, edit this file, or join the [Discord server](https://discord.gg/hZwbVSDkhy) to discuss your idea! |
| 26 | + |
| 27 | +<LinkCard title="AutoHotkey (Windows only)" description='AHK is a powerful scripting language for Windows. You can use it to run the kando command when you press a mouse button or to remap a mouse button to a keyboard shortcut which opens a Kando menu.' href="/ahk-tutorial" /> |
| 28 | +<LinkCard title="Input Remapper (Linux only)" description='Input Remapper is a tool which allows you to remap mouse buttons to keyboard shortcuts. While you can use it directly to bind menus to mouse buttons via keyboard shortcuts, it also allows for more advanced setups like showing menus when pressing two mouse buttons at the same time.' href="/input-remapper-tutorial" /> |
| 29 | + |
| 30 | +## More Third-Party Tools |
| 31 | + |
| 32 | +We do not have specific guides for these tools yet, but they should work with Kando as well. |
| 33 | +Feel free to experiment with them and share your findings with us! |
| 34 | + |
| 35 | +<Tabs syncKey='os'> |
| 36 | + <TabItem label="Windows" icon="seti:windows"> |
| 37 | + * [GestureSign](https://www.microsoft.com/store/productId/9N45WQVK2QQW?ocid=pdpshare) allows opening a Kando menu with multi-touch taps and gestures on both touchpad and touchscreen. |
| 38 | + </TabItem> |
| 39 | + <TabItem label="macOS" icon="apple"> |
| 40 | + * [Karabiner-Elements](https://karabiner-elements.pqrs.org/) can be used to remap mouse buttons to keyboard shortcuts. |
| 41 | + * [BetterTouchTool](https://folivora.ai/) allows opening a Kando menu via touchpad gestures. |
| 42 | + * [Multitouch](https://multitouch.app) allows to add keyboard shortcut as a gesture for trackpad or Apple Magic Mouse. |
| 43 | + * [BetterMouse](https://better-mouse.com/) is a tool which allows you to remap mouse buttons to keyboard shortcuts. |
| 44 | + </TabItem> |
| 45 | + <TabItem label="Linux" icon="linux"> |
| 46 | + * [fusuma](https://github.com/iberianpig/fusuma) together with it's [sendkey plugin](https://github.com/iberianpig/fusuma-plugin-sendkey?tab=readme-ov-file) can be used to open a Kando menu with touchpad or touchscreen gestures. It works on **X11** and **Wayland**. |
| 47 | + * [Touchegg](https://github.com/JoseExposito/touchegg#readme) is a multitouch gesture recognizer for Linux. You can use it to open a Kando menu with touchpad gestures. It only works on **X11**. |
| 48 | + * **KDE Plasma** comes with built-in support for remapping mouse buttons to keyboard shortcuts. You can find [this feature](https://www.phoronix.com/news/KDE-Rebind-Extra-Mouse-Buttons) in the system settings under "System Settings" / "Mouse & Touchpad" / "Add Binding". |
| 49 | + * There's a [Configurable Button](https://store.kde.org/p/1297839/) widget for **KDE Plasma** which allows running `kando --menu "menu name"` when clicked. |
| 50 | + * On **GNOME Shell**, you can use the [CHC-E (Custom Hot Corners - Extended)](https://extensions.gnome.org/extension/4167/custom-hot-corners-extended/) extension to run arbitrary commands when you move your mouse to a corner of the screen. |
| 51 | + * On **GNOME Shell**, you can also use the [Floating Dock](https://extensions.gnome.org/extension/2542/floating-dock/). It requires a bit of tinkering as you need to create custom desktop files for each menu you want to open. However, it allows you to open menus by clicking on a floating dock icon. |
| 52 | + </TabItem> |
| 53 | +</Tabs> |
| 54 | + |
| 55 | +<br/> |
| 56 | + |
| 57 | +Fundamentally, there are two main ways to open Kando menus from these tools. |
| 58 | +You can either open a menu by simulating the shortcut for the menu (if this is supported by the tool), or you can make the tool call the Kando executable with the [`--menu "menu name"`](/launch-from-cli) or [`--trigger <shortcut>`](/launch-from-cli) argument. |
23 | 59 |
|
24 | 60 | ### Option 1: Simulate the Shortcut |
25 | 61 |
|
26 | 62 | If the third-party tool supports simulating keyboard shortcuts, it is recommended to use this method. |
27 | 63 | In most cases, this will be a bit faster then option 2. |
28 | 64 |
|
| 65 | +Many mice even come with special drivers which allow you to rebind mouse buttons to keyboard shortcuts or to run arbitrary commands. |
| 66 | +If your mouse supports this, this is an easy way to open Kando menus with mouse buttons. |
| 67 | + |
29 | 68 | You can choose any shortcut you like! |
30 | 69 | Using one which does not interfere with you workflow is a good idea. |
31 | 70 | For instance <kbd>Ctrl</kbd>+<kbd>F13</kbd> is usually not used by any application, so it is a good choice. |
32 | 71 |
|
33 | | -<Aside type="tip" title="Use a modifier key!"> |
34 | | - Kando menus can be called with single-key shortcuts, but this is not recommended. Turbo |
35 | | - mode will only work properly if the shortcut includes a modifier like <kbd>Ctrl</kbd>,{' '} |
36 | | - <kbd>Alt</kbd>, or <kbd>Shift</kbd>. |
37 | | -</Aside> |
38 | | - |
39 | 72 | ### Option 2: Use `--menu` or `--trigger` |
40 | 73 |
|
41 | 74 | With the `--menu` and `--trigger` arguments, you can open a Kando menu by calling the Kando executable with the name or shortcut of the menu you want to open. |
@@ -68,38 +101,6 @@ Depending on your operating system, the command to open a Kando menu would look |
68 | 101 | </TabItem> |
69 | 102 | </Tabs> |
70 | 103 |
|
71 | | -## Third-Party Tools for Opening Menus |
72 | | - |
73 | | -Many mice come with special drivers which allow you to rebind mouse buttons to keyboard shortcuts or to run arbitrary commands. |
74 | | -If your mouse supports this, this is an easy way to |
75 | | - |
76 | | -If you do not have such a driver, you can use any of the third-party tools listed below. |
77 | | -Most of them are free and open-source. |
78 | | - |
79 | | -<Tabs syncKey='os'> |
80 | | - <TabItem label="Windows" icon="seti:windows"> |
81 | | - * [AutoHotkey](https://www.autohotkey.com/) is a powerful scripting language for Windows. You can use it to run the kando command when you press a mouse button or to remap a mouse button to a keyboard shortcut which opens a Kando menu. You can follow [this guide](https://github.com/orgs/kando-menu/discussions/853) for a complete example. |
82 | | - * [GestureSign](https://www.microsoft.com/store/productId/9N45WQVK2QQW?ocid=pdpshare) allows opening a Kando menu with multi-touch taps and gestures on both touchpad and touchscreen. |
83 | | - </TabItem> |
84 | | - <TabItem label="macOS" icon="apple"> |
85 | | - * [Karabiner-Elements](https://karabiner-elements.pqrs.org/) can be used to remap mouse buttons to keyboard shortcuts. |
86 | | - * [BetterTouchTool](https://folivora.ai/) allows opening a Kando menu via touchpad gestures. |
87 | | - * [Multitouch](https://multitouch.app) allows to add keyboard shortcut as a gesture for trackpad or Apple Magic Mouse. |
88 | | - * [BetterMouse](https://better-mouse.com/) is a tool which allows you to remap mouse buttons to keyboard shortcuts. |
89 | | - </TabItem> |
90 | | - <TabItem label="Linux" icon="linux"> |
91 | | - * [fusuma](https://github.com/iberianpig/fusuma) together with it's [sendkey plugin](https://github.com/iberianpig/fusuma-plugin-sendkey?tab=readme-ov-file) can be used to open a Kando menu with touchpad or touchscreen gestures. It works on **X11** and **Wayland**. |
92 | | - * [Input Remapper](https://github.com/sezanzeb/input-remapper) is a tool which allows you to remap mouse buttons to keyboard shortcuts. It works both on **X11 and Wayland**. While you can use it directly to bind menus to mouse buttons via keyboard shortcuts, it also allows for more advanced setups like showing menus when pressing two mouse buttons at the same time. [Here is a guide!](https://github.com/orgs/kando-menu/discussions/1183) |
93 | | - * [Touchegg](https://github.com/JoseExposito/touchegg#readme) is a multitouch gesture recognizer for Linux. You can use it to open a Kando menu with touchpad gestures. It only works on **X11**. |
94 | | - * **KDE Plasma** comes with built-in support for remapping mouse buttons to keyboard shortcuts. You can find [this feature](https://www.phoronix.com/news/KDE-Rebind-Extra-Mouse-Buttons) in the system settings under "System Settings" / "Mouse & Touchpad" / "Add Binding". |
95 | | - * There's a [Configurable Button](https://store.kde.org/p/1297839/) widget for **KDE Plasma** which allows running `kando --menu "menu name"` when clicked. |
96 | | - * On **GNOME Shell**, you can use the [CHC-E (Custom Hot Corners - Extended)](https://extensions.gnome.org/extension/4167/custom-hot-corners-extended/) extension to run arbitrary commands when you move your mouse to a corner of the screen. |
97 | | - * On **GNOME Shell**, you can also use the [Floating Dock](https://extensions.gnome.org/extension/2542/floating-dock/). It requires a bit of tinkering as you need to create custom desktop files for each menu you want to open. However, it allows you to open menus by clicking on a floating dock icon. |
98 | | - </TabItem> |
99 | | -</Tabs> |
100 | | - |
101 | | -<br/> |
102 | | - |
103 | 104 | <Aside type="note" title="Have you discovered another cool tool?"> |
104 | 105 | If you discovered a cool new way to open menus, please let us know! You can either open an issue, edit this file, or join the [Discord server](https://discord.gg/hZwbVSDkhy) to discuss your idea! |
105 | | -</Aside> |
| 106 | +</Aside> |
0 commit comments