вівторок, 24 квітня 2012 р.

Перевизначаємо клавіші на клавіатурі

На мому ноуті не дуже вдало розміщені клавіші Home і End:
  1. на цифровій клавіатурі (без Shift-а)
  2. на стрілочках (з Fn)
Проблема стає очевидною, коли слід натиснути Shift + Home (Fn + Shift + Home) і ще більш очевидною при Ctrl + Shift + Home (Fn + Ctrl + Shift + Home). Щоб це натиснути треба бути практично йогом :)
Тож я вирішив перевизначити дві інші клавіші, які я не використовую (PrtSc і Pause) на Home і End.
Для цього ми використовуємо 2 команди.
Спочатку - xev. Вона показує який keycode у потрібної клавіші (при її натисканні):
... 
KeyRelease event, serial 34, synthetic NO, window 0x1400001,
    root 0x15d, subw 0x0, time 4155630, (89,80), root:(964,102),
    state 0x0, keycode 107 (keysym 0xff61, Print), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 34, synthetic NO, window 0x1400001,
    root 0x15d, subw 0x0, time 4173605, (89,80), root:(964,102),
    state 0x0, keycode 127 (keysym 0xff13, Pause), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False
...
Далі - xmodmap, яка власне і перевизначає клавіші:
xmodmap -e "keycode 107 = Home"
xmodmap -e "keycode 127 = End"

Залишається дрібничка - зробити так, щоб це працювало щоразу, коли вмикається ноут.
Для цього робимо файлик (наприклад, .xmodmap у домашній директорії) з таким вмістом:
keycode 107 = Home
keycode 127 = End
І запускаємо xmodmap при кожному логіні (наприклад у .bash_profile):
xmodmap  .xmodmap
Усе :)

Немає коментарів:

Дописати коментар

Translate