Рейтинг:0

Как переназначить CapsLock на сочетание клавиш Gnome?

флаг de
ARX

В Ubuntu 20.04 я хочу переключиться на рабочее пространство выше, просто нажав клавишу CapsLock. Однако следующее не работает:

gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-up ['capslock']

Я также не могу сделать это из графического интерфейса, потому что в настройках CapsLock не распознается. Но в любом случае, мне нужно иметь возможность сделать это из командной строки.

Как, пожалуйста?

vanadium avatar
флаг cn
В параметрах раскладки клавиатуры можно было сделать Capslock дополнительной суперклавишей
ARX avatar
флаг de
ARX
Спасибо, но это будет противоречить другим функциям, которые у меня уже есть для ключа Super.
Рейтинг:1
флаг cn

Вы действительно не можете привязать клавиши-модификаторы к команде. Тем не менее, инструмент xcape может переназначить нажатие и отпускание клавиши-модификатора на комбинацию клавиш.

Таким образом,

xcape -e 'Caps_Lock=Super_L|Далее'

заставит вас переключиться на следующую рабочую область, нажав и отпустив CapsLock, так как Супер+PgDn является существующей по умолчанию привязкой клавиш для перехода к следующей рабочей области.

К сожалению, ЭТО КАЖДЫЙ РАЗ МЕНЯЕТ СОСТОЯНИЕ CAPSLOCK.

Чтобы избежать этого, один трюк состоит в том, чтобы сначала переназначить CapsLock на Hyper, которого нет на обычных клавиатурах с использованием опций xkb. Вы можете сделать это с помощью Gnome Tweaks на вкладке «Клавиатура и мышь». Затем следующая команда сделает свое дело:

xcape -e 'Hyper_L=Super_L|Далее'
ARX avatar
флаг de
ARX
Сопоставление CapsLock с Hyper_L — отличное предложение. Большое тебе спасибо. Поскольку мне нужно было сделать все это из сценария, я закончил сопоставление с помощью xmodmap: `xmodmap -e "keycode 66 = Hyper_L"`, а затем напрямую использовал Hyper_L для изменения рабочей области: `gsettings set org.gnome.desktop. wm.keybindings переключается на рабочую область вверх "['Hyper_L']"`. Работает как шарм.
vanadium avatar
флаг cn
Если в какой-то момент вы заметите, что сопоставление исчезло, вы все равно можете реализовать сопоставление напрямую с помощью параметров xkb. Может произойти, если вы поменяете клавиатуру или компьютер выйдет из спящего режима. Я не ожидал, что сработает только «Hyper_L» в команде gsettings, так что это действительно приятно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.