Может кто-нибудь сказать, как переназначить мою Super kbd> (левую) клавишу на клавишу Ctrl kbd>?
Я имею в виду Super kbd > (слева) должно работать как клавиша Ctrl kbd>.
Чтобы внести серьезные изменения в клавиатуру, включая переназначение символов и изменение модификаторов, вам необходимо: u воспользуйтесь утилитой xmodmap - см. man xmodmap
. Есть несколько способов выполнить изменения:
либо из командной строки
xmodmap -e "ваши команды"
или запишите команды в файл типа .xmodmaprc
, затем выполните его в элементах входа или в вашем .bashrc с помощью
xmodmap .xmodmaprc
Если вы назовете файл ~ / .xmodmap
, он будет выполняться автоматически при входе в систему.
То, что вы хотите сделать, представляет собой двухэтапный процесс. Сначала вы отключаете Super от его модификатора, а затем сопоставляете его с control.
Запустите xmodmap -pm
в окне терминала, чтобы получить список связанных модификаторов. На моей машине (и предположительно вашей) Super обозначается как mod4
. Super_L
и Super_R
- это отдельные ключи, которые выводят один и тот же модификатор.
Теперь вы можете отключить от него модификатор. Запустите команду xmodmap (используя один из методов выше)
remove mod4 = Super_L
Теперь физический ключ по-прежнему упоминается внутри как Super_L, но он ничего не делает.
Теперь просто переназначьте его. Запустите команду xmodmap:
add control = Super_L
Если вы хотите отменить это позже, просто запустите те же команды с соответствующими аргументами.
Вывод xmodmap -pm может дать вам несколько ключей с именем Super_L, но ни одного с именем Super_R). Если это так, теперь у вас есть несколько дополнительных клавиш, назначенных для Control, но ни одна не назначена для Super. Вам придется переименовать один ключ. (NB: это может дать вам несколько Super_L и хотя бы один Super_R. Это нормально.)
Все имена ключей в таблице имеют шестнадцатеричное число в скобках рядом с ними. Этот номер представляет собой физический код клавиши на клавиатуре (он может различаться в зависимости от модели). Если вам нужно изменить один Super_L на Super_R, сначала найдите код клавиши, который вы хотите связать с Super_R (не уверены, какой из них правильный? Запустите xev
, затем нажмите правый Super пару раз. Где-нибудь в лабиринте вывода "keycode = 133" (с другим номером)). Выполните команду xmodmap
keycode 133 = Super_R
, чтобы переименовать ключ, затем
add mod4 = Super_R
, чтобы назначить его Super.
Попробуйте следующее:
clear Control
clear mod4
remove Control = Control_L Control_R
remove mod4 = Super_L Super_R
add Control = Super_L
Поместите приведенные выше строки в свой ~ / .Xmodmap
и выполните xmodmap ~ / .Xmodmap
.
В Ubuntu вы можете отредактировать / etc / default / keyboard
и установить:
XKBOPTIONS = "altwin: ctrl_win"
Что:
Ctrl сопоставлен с клавишами Win (и обычными клавишами Ctrl)
Подробнее см. man 5 keyboard
. Вы можете найти все возможные комбинации опций в своей системе, выполнив:
grep alt /usr/share/X11/xkb/rules/evdev.lst | grep win
Командная строка:
xmodmap -e "remove mod4 = Super_L"
xmodmap -e "add control = Super_L"
Или вставьте ~/.Xmodmap
для активации при старте:
remove mod4 = Super_L
add control = Super_L
Если вы хотите использовать графический интерфейс:
Клавиатура и мышь
Дополнительные параметры макета
Положение Ctrl
Поменять местами левую победу на левый Ctrl