2 July 2013

ksuperkey — открытие меню KDE Kickoff по кнопке Win key (Super) в Ubuntu, Kubuntu и других версиях Linux

Configuring Linux*nix
После перехода с Windows на Linux и KDE многие пользователи испытывают сильные мучения и головокружения из-за невозможности настройки открытия меню запуска программ KDE Kickoff по привычной кнопке Win на клавиатуре. Среди таких пользователей был и я, не столько из-за привычки, а больше из-за того что кнопка Win на клавиатуре занимает бесполезное место и не используется. Причем я очень долго и упорно искал и тестировал различные решения этой проблемы, но ни одно из них по-нормальному не работало либо требовало чуть-ли не перекомпилировать ядро.

Но в один прекрасный день я нашёл отличное и легкое в использовании решение — небольшая программка ksuperkey, которая делает это волшебство и очень просто устанавливается. Её достаточно установить, добавить в автозапуск и сразу все заработает как надо. Причем клавиатурные сочетания вида Win+D остаются рабочими.

Официальный сайт программы: github.com/hanschen/ksuperkey
Уведомление о новых версиях и обсуждение: kde-apps.org/content/show.php?content=154569

В Ubuntu и Kubuntu программу ksuperkey можно установить с помощью «пары кликов» из PPA: launchpad.net/~mehanik/+archive/ksuperkey следующим способом через GUI:

1. Запускаем «Программа управления пакетами Muon» или для старых версий может называться «Менеджер пакетов», «Менеджер программ», «Software center», KPackageKit, Synaptic и т.п.:
image

2. Идем в меню Настройка — Настройка источников программ, вводим пароль администратора, должно открыться окно «Источники программ» или «Software Sources»:
image

3. Открываем закладку «Другие программы» (Other software), нажимаем кнопку «Добавить» (Add...) и в появившемся поле пишем: ppa:mehanik/ksuperkey
image

4. Нажимаем «Закрыть», кликаем кнопку «Проверить обновления» (Check updates), после чего набираем в поиске ksuperkey и кликаем на строке, после этого нажимаем в правом нижнем углу кнопку «Отметить для Установки»:
image

5. Нажимаем «Применить изменения», после установки закрываем программу, перезагружаем компьютер и радуемся работающей кнопке Win (Super key).

Более быстрый способ установки через консоль:

sudo add-apt-repository ppa:mehanik/ksuperkey
sudo apt-get update
sudo apt-get install ksuperkey


Для других дистрибутивов Linux программу можно установить с помощью компилирования из исходников, инструкции можно найти здесь: kde-apps.org/content/show.php?content=154569

После установки нажатие кнопки Win будет эмулировать нажатие Alt+F1 и выполняться соответствующее действие, которое по-умолчанию открывает меню Kickoff. При этом другие клавиатурные сочетания вида Win+D или Win+R продолжают нормально работать, в отличие от других решений вида переназначения кнопки Win на кнопку F13 через xmodmap. Соответственно теперь на нажатие Win можно настроить любое нужное вам действие без лишних плясок с бубном.

После установки программа может сразу не заработать по следующим причинам:

1. Кнопка Win уже переназначена через Xmodmap. Для отключения этого нужно удалить или изменить файл .Xmodmap в вашей домашней папке.

2. Кнопка Win отмечена как кнопка Meta в настройках KDE. Для отключения нужно открыть Настройки системы — Устройства Ввода — Клавиатура — Дополнительно и убрать все галки связанные с кнопкой Win:
image

В остальных случаях у меня всё начинало работать сразу после перезагрузки без лишних действий.

Дополнительные настройки программы:


Кроме основной функции открытия меню Kickoff по кнопке Win эта программа может гибко настраиваться и под любые другие действия с левой, правой кнопкой Win, кнопками Shift, Alt, Ctrl, Menu и другими. Её можно настроить для работы с Lancelot, KRunner и любыми другими программами. Для этого нужно добавлять параметры к строке запуска программы:
ksuperkey -e 'ModKey=Key[|OtherKey][;NextExpression]'

Где ModKey — клавиша, которую хотите переназначить, из следующих вариантов:
Control_L Control_R Alt_L Alt_R Super_L Super_R Shift_L Shift_R

OtherKey — клавиша или комбинация клавиш, нажатие которых должно эмулироваться.

NextExpression — следующая комбинация, соответственно можно задать столько комбинаций сколько нужно.

Пример перенастройки кнопки Win для запуска KRunner (Alt+F2):
ksuperkey -e 'Super_L=Alt_L|F2'

Более сложный пример — По левому Ctrl открывается Kickoff, по левому Win -Krunner, по левому Shift — комбинация Ctrl+S:
ksuperkey -e 'Control_L=Alt_L|F1;Super_L=Alt_L|F2;Shift_L=Control_L|S'

Для отладки программы можно запускать её в дебаг-режиме используя параметр -d:

ksuperkey -d -e 'Control_L=Alt_L|F1;Super_L=Alt_L|F2;Shift_L=Control_L|S'

Подобнее о параметрах запуска написано на английском языке на сайте программы: kde-apps.org/content/show.php?content=154569

Если у вас появятся какие-то предложения по развитию программы или обнаружаться баги, то не стесняйтесь создавать темы в баг-трекере репозитория github.com/hanschen/ksuperkey/issues

Удачного использования и счастья в жизни! Надеюсь теперь у вас кнопка Win будет также быстро истираться на клавиатуре как и остальные, а не оставаться покрытой слоем пыли ;)
Tags:win keykdekubuntuubuntulinux
Hubs: Configuring Linux *nix
+1
13.6k 17
Comments 2
Popular right now
DevOps инженер Linux, Openstack (Можно удаленно, Москва)
to 220,000 ₽Баланс-ПлатформаМоскваRemote job
Системный администратор Linux
from 60,000 ₽ZonatelecomТулаRemote job
Системный администратор Linux
from 130,000 to 130,000 ₽Таможенная картаМосква
Data Scientist/Senior Data Scientist (AI Lab)
from 150,000 to 250,000 ₽СберМосква