3

Первый пост. Здесь это идет:

У меня Ubuntu 10.10, индивидуалист.

Несколько дней назад я пытался преобразовать свой «командный» ключ на своем яблочном компьютере в «ctrl», и после поиска в Интернете я столкнулся с xmodmap. Позвольте мне сначала пойти дальше и сказать, что я в конце концов выяснил, как переназначить мой ключ (перейдите в «Система» -> «Настройки» -> «Клавиатура», затем раскладки, затем нажмите клавишу «win /alt» и сопоставьте ее с управлением). Но до этого я пытался использовать xmodmap для переназначения. В процессе я понял, что xmodmap просто не работает для меня, и я ничего не могу найти в Интернете, сообщая о подобной проблеме.

Еще до создания любого вида.Файл Xmodmap должен выполняться каждый раз при входе в систему, команда просто не работает в терминале. Если я запускаю xev, вывод моей левой клавиши:

KeyPress event, serial 33, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 2747931, (120,-383), root:(123,436),
state 0x0, keycode 133 (keysym 0x85, (no name)), same_screen YES,
XLookupString gives 2 bytes: (c2 85) ""
XmbLookupString gives 2 bytes: (c2 85) ""
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 2748059, (120,-383), root:(123,436),
state 0x4, keycode 133 (keysym 0x85, (no name)), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

Что означает, что код моего командного символа 133. Выполнение того же для моей клавиши ctrl говорит мне, что код клавиши для моей левой клавиши управления - 37.

Но выполняя эту команду:

xmodmap -e "keycode 133 = Control_L"

не заставил бы мою командную клавишу функционировать как управляющий символ. Кроме того, я знаю, что xmodmap сделал отображение, потому что ввод символа команды в xev теперь дает:

KeyPress event, serial 33, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 3016638, (293,-389), root:(296,430),
state 0x0, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 3016750, (293,-389), root:(296,430),
state 0x4, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XFilterEvent returns: False

И запись кода ключа 133 из вывода xmodmap -pke также выглядит правильно:

keycode 133 = Control_L NoSymbol Control_L

На этом этапе командная клавиша все равно будет действовать как командная клавиша. Мой вопрос: что-то переопределяет сопоставления клавиш в xmodmap, и если да, то где и как?

0