|Version Control: Link|
|Submitted: Oct 8 2012|
Updated: Aug 14 2015
ksuperkey allows you to open the application launcher in KDE Plasma Desktop using the Super key (also known as the 'Windows key'). Unlike other solutions, it will not affect your current keyboard shortcuts, as the Super key will still act as a modifier when held down.
Note that ksuperkey does not depend on any specific desktop environment and should work fine on KDE Plasma 4, Plasma 5, GNOME Shell, Unity, Xfce, LXDE, etc.
ksuperkey is a fork of xcape (https://github.com/alols/xcape), most of the work was done by the original author Albin Olsson.
Below is a list of distribution-specific ways to install ksuperkey.
Note that some packages are provided by a third party and that I do not take any responsibility for their contents.
Arch Linux: Available from the official repo ([community])
Chakra: Installed by default, available from the official repo
Gentoo: emerge ksuperkey
Netrunner: Installed by default, available from the official repo
PCLinuxOS: Available from the official repo
Did I miss your favorite distribution? Please add a comment below with instructions on how to install it in your distro!
Compiling from source
If there is no package for ksuperkey for your distribution, you can compile the program from source following these instructions:
1. Install dependencies. On Ubuntu:
sudo apt-get install gcc make libx11-dev libxtst-dev pkg-config
On some system you'll also have to install the build-essential package.
2. Download ksuperkey-0.4 (Source) from this page and extract the tar.gz file (using e.g. Ark).
3. Go to the newly extracted directory called ksuperkey, open a terminal (press F4 in Dolphin), and run:
3b. Optionally, if you want to install ksuperkey to the standard PATH for all users:
sudo make install
4. Launch ksuperkey:
or by clicking on its icon. ksuperkey will run in the background. (If you did step 3b, you can just type "ksuperkey" from anywhere to launch it.)
5. Try to press the left Super key. If the application launcher does not show up, make sure that its shortcut is set to Alt+F1:
right click on the application launcher icon -> Application Launcher Settings -> Keyboard Shortcut.
6. (Optional) Make ksuperkey autostart in System Settings -> Startup and Shutdown -> Autostart -> Add Program... -> Browse button -> select the ksuperkey application.
If you do not like the default mapping (Super_L to Alt+F1), you can tell ksuperkey to use another mapping. The syntax is as follows:
ksuperkey -e 'ModKey=Key[|OtherKey][;NextExpression]'
Looks complicated? Do not worry, it really is not. Let us look at some examples:
Make Super key open KRunner (Alt+F2)
ksuperkey -e 'Super_L=Alt_L|F2'
We have more modifier keys on our keyboard, why not use them?
ksuperkey -e 'Control_L=Alt_L|F1;Super_L=Alt_L|F2;Shift_L=Control_L|S'
This makes the left Ctrl key generate Alt+F1 (application launcher), left Super generate Alt+F2 (KRunner), and left Shift generate Ctrl+S (save the current document) when pressed and released on their own.
If you want to add your custom mapping to Autostart:
1. Follow the instructions in 4. under Installation.
2. When you see the dialog with the tabs (General, Permissions, Application, etc.), click on the Application tab.
3. Add the -e option to the Command field. It could look something like this:
/home/myname/ksuperkey/ksuperkey -e 'Super_L=Alt_L|F2'
1. ksuperkey does not work.
Make sure that ksuperkey is running (use e.g. the system monitor, Ctrl+Escape) and that it is running only once.
Also check that the keyboard shortcut for the application launcher is set to Alt+F1, see 4. under Installation.
Finally, make sure you do not remap the Super (Win) key, for example in System Settings -> Input Devices -> Keyboard -> Advanced or by using xmodmap.
2. When I try to change the mapping, I get 'command not found: ksuperkey'
When following the installation instructions above, kusperkey will not be installed to $PATH. This means that your shell does not know where to find ksuperkey. Therefore you have to specify the full path to the executable, e.g.
~/ksuperkey/ksuperkey -e 'Super_L=Alt_L|F2'
3. I remap my keys (e.g. using xmodmap) and ksuperkey does not behave as I want it to.
Try to restart ksuperkey every time after doing the remapping. Also make sure that the key you send has a defined keycode.
4. When I type 'make' I get "xcape.c:22:20: fatal error: stdlib.h: No such file or directory"
You need to install the build-essential package, e.g.
sudo apt-get install build-essential
You no longer have to bind Alt+F1 to the thing you want ksuperkey to trigger, since you can easily change the mapping! (See "Change mapping" section above.)
For more options, see included README.md or the Github page: https://github.com/hanschen/ksuperkey
Please post issues to Github:
I will try to answer questions here.
- Allow keycodes in map expressions. [upstream]
- Fix Makefile to make it easier to package.
- XKeycodeToKeysym has been deprecated, use XkbKeycodeToKeysym instead. [upstream]
- It is now possible to define your own mappings (e.g. Super_L to Alt+F2) without editing the source code. [upstream]
- Initial release