Linux « Переназначение клавиш
Дистрибутив Debian Squeeze. Появилось желание переназначить клавиши таким образом:
Подскажите пожалуйста как это реализовать. Может быть через правку ~/.xmodmaprc? Если да, то что прописать?
- Control на Caps Lock, а Caps Lock соответственно на Control
-
Mod4 на Return, а Return соответственно на Mod4
Подскажите пожалуйста как это реализовать. Может быть через правку ~/.xmodmaprc? Если да, то что прописать?
1 ответов
Здравствуйте.
Перепаять - возможно и хорошо, но это не "unix way". Для переназначения можно воспользоваться утилитой xmodmap. Данная утилита входит в стандартный дистрибутив практически любой операционной системы, основанной на ядре Linux. Например, для того, чтобы поменять местами левый Ctrl и Caps Lock нужно в домашней директории создать файл .Xmodmap и добавить в него строки:
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
применить изменения можно командой
xmodmap ~/.Xmodmap
Изменения вступят в силу автоматически после перезагрузки X сервера. В случае, если изменения не вступили в силу - нужно подредактировать сценарий загрузки X сервера. Например, можно добавить строку
{ sleep 5; xmodmap ~/.Xmodmap; } &
в сценарий загрузки X. Она будет работать, но я не уверен в грамотности этого решения. Сценарий загрузки X сервера, как правило, расположен в файле
/etc/X11/xinitrc
Вы также можете создать свой локальный файл, содержащий сценарий загрузки в файле
~/.xinitrc
Локальный файл со сценарием загрузки - это более правильный способ.