Идея в целом не нова. Клавиша Caps_Lock на клавиатуре расположена в очень удобном месте и нажимать на нее легко особенно если пользоваться "Десятипальцевым методом". В следствии легко доступности этой клавиши и возникает желание заменить Caps_Lock на какие-нибудь более важные клавиши. Тут уж кому, что больше нравиться, кто-то этой клавишей раскладку переключает, у кого-то вместо Caps_Lock дополнительный Controll. Очень удобно повесить на нее Backspace. А так как я в качестве редактора использую vim, то мне милее в этом месте иметь клавишу Escape.
Я знаю два способа как поменять значение клавиши Caps_Lock.
Первый. Через гуй: Система-Параметры-Клавиатура-Раскладки-Параметры Раскладки-Клавиша Caps Lock тут можно выбрать как она будет себя вести.
Второй. Через xmodmap
вызываем в терминаре утилиту xev, нажимаем на Caps_Lock, смотрим ее кейкод и далее выполняем в терминале:
xmodmap -e "remove Lock = Caps_Lock"
xmodmap -e "keycode 66 = Caps_Lock"
а чтоб и после перезагрузки работало нужно добавить в файл ~/.xmodmaprc
remove Lock = Caps_Lock
keycode 66 = Caps_Lock
Собственно а в чем же вопрос? А в том, что иногда и Caps_Lock бывает нужен, имена переменных там вводить и т.п. Можно его и на Escape повесить, но мне кажется это неудобным. Самым оптимальным будет переключения режима капса клавишей Caps_Lock при зажатом шифте. Как это реализовать, чтоб при простом нажатии на Caps_Lock он работал как Escape, а комбинация Shift + Caps_Lock переключала режим капса?
Заранее спасибо.