Я использую Xubuntu 18.04, и я использую итальянский раскладку клавиатуры. До 17.10 мне пришлось вручную настроить ключ Alt Gr с помощью команды xmodmap с помощью следующей команды:
xmodmap -e "keycode 108 = Mode_switch"
После этого ключ будет работать правильно и позволит мне вводить символы, которые aren на клавиатуре.
Так как обновление, тем не менее, я не могу заставить его работать. Я попытался установить Alt Gr ключ как Mode_switch или ISO_Level3_Shift, но ни один из них не работает. Mode_switch ничего не делает, и с ISO_Level3_Shift либо я не получаю никакого вывода, я получаю тот же ключ без ключа Alt Gr, или я получаю тарабарщину.
Однако, как только я пытаюсь использовать команду xev для проверки проблем, результат кажется правильным. Например, из-за того, что я пытаюсь набрать Alt Gr и ò на моей клавиатуре, что является комбинацией для получения символа #:
# press AltGr
KeyPress event, serial 37, synthetic NO, window 0x2e00001,
root 0x5c9, subw 0x0, time 910833, (94,262), root:(965,712),
state 0x10, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
# press ò
KeyPress event, serial 37, synthetic NO, window 0x2e00001,
root 0x5c9, subw 0x0, time 911417, (94,262), root:(965,712),
state 0x98, keycode 48 (keysym 0x23, numbersign), same_screen YES,
XLookupString gives 1 bytes: (23) "#"
XmbLookupString gives 1 bytes: (23) "#"
XFilterEvent returns: False
# release ò
KeyRelease event, serial 37, synthetic NO, window 0x2e00001,
root 0x5c9, subw 0x0, time 911737, (94,262), root:(965,712),
state 0x98, keycode 48 (keysym 0x23, numbersign), same_screen YES,
XLookupString gives 1 bytes: (23) "#"
XFilterEvent returns: False
# release AltGr
KeyRelease event, serial 37, synthetic NO, window 0x2e00001,
root 0x5c9, subw 0x0, time 912169, (94,262), root:(965,712),
state 0x98, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XFilterEvent returns: False
Похоже, что он правильно интерпретирует символ #, поэтому он, похоже, является проблемой связи внутри самой X-org, но я не понимаю, почему и как.
Я знаю, что это проблема X.org, а не клавиатура, потому что я могу ò -Alt-F1 в любое время и правильно использовать Alt Gr в терминале (кроме тот факт, что он работал нормально до тех пор, пока я не обновился)
Кто-нибудь знает, что может происходить здесь?
EDIT: Я получил еще одну клавиатуру и на этом Alt работает без проблем в xfce. И этот тоже дает эту XKeysymToKeycode returns keycode: 92 линию, поэтому она, похоже, не является виновником.
На этом этапе я предполагаю, что что-то странное происходит в связи с клавиатурой, которая немного отбрасывает X.org. Я не уверен, есть ли реальное решение. Если у кого-нибудь есть какие-то идеи, я буду их проверять, так как я не хочу пускать клавиатуру, но теперь я просто использую новую клавиатуру.
Итак, я нашел «решение». Я просто отключил и снова подключил клавиатуру, и теперь все работает отлично. Однако это нужно делать каждый раз, когда я выхожу из системы (но на него не влияет режим ожидания). Хотя это не идеальное решение, по крайней мере, сейчас я могу его использовать.
Похоже на ошибку в X.org, о которой я расскажу.
Я не буду принимать этот ответ, если у кого-то есть другое мнение о том, что может происходить.
Итак, я нашел «решение». Я просто отключил и снова подключил клавиатуру, и теперь все работает отлично. Однако это нужно делать каждый раз, когда я выхожу из системы (но на него не влияет режим ожидания). Хотя это не идеальное решение, по крайней мере, сейчас я могу его использовать.
Похоже на ошибку в X.org, о которой я расскажу.
Я не буду принимать этот ответ, если у кого-то есть другое мнение о том, что может происходить.