Клавиша Shift не работает с клавишами F1, F2 и т. Д. В gnome2. Что может быть причиной?

276
GP92

У меня есть сеанс VNC с рабочим столом gnome2.

Ниже приведено несколько примеров, в которых нажатие нескольких клавиш работает должным образом, а последние два примера дают неожиданные результаты (с F1& F2).

Пожалуйста помоги.

( Shift+ Enter)

KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513198614, (95,-14), root:(97,63), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513198717, (95,-14), root:(97,63), state 0x1, keycode 36 (keysym 0xff0d, Return), same_screen YES, " XLookupString gives 1 bytes: (0d) " " XmbLookupString gives 1 bytes: (0d) " XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513198790, (95,-14), root:(97,63), state 0x1, keycode 36 (keysym 0xff0d, Return), same_screen YES, " XLookupString gives 1 bytes: (0d) " XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513198810, (95,-14), root:(97,63), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False 

( Shift+ \)

KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513201404, (95,-14), root:(97,63), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513201476, (95,-14), root:(97,63), state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES, XLookupString gives 1 bytes: (7c) "|" XmbLookupString gives 1 bytes: (7c) "|" XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513201547, (95,-14), root:(97,63), state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES, XLookupString gives 1 bytes: (7c) "|" XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513201577, (95,-14), root:(97,63), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False 

( Shift+ Backspace)

KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513204915, (95,-14), root:(97,63), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513205006, (95,-14), root:(97,63), state 0x1, keycode 22 (keysym 0xff08, BackSpace), same_screen YES, XLookupString gives 1 bytes: (08) " XmbLookupString gives 1 bytes: (08) " XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513205075, (95,-14), root:(97,63), state 0x1, keycode 22 (keysym 0xff08, BackSpace), same_screen YES, XLookupString gives 1 bytes: (08) " XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513205107, (95,-14), root:(97,63), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False 

Во всех приведенных выше примерах:

  • Клавиша Shift нажата
  • Другая клавиша нажата и отпущена
  • Клавиша Shift отпущена.

( Shift+ F1)

KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513207893, (95,-14), root:(97,63), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63), state 0x0, keycode 67 (keysym 0xffbe, F1), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513208208, (95,-14), root:(97,63), state 0x1, keycode 67 (keysym 0xffbe, F1), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513208273, (95,-14), root:(97,63), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False 

( Shift+ F2)

KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219709, (79,-12), root:(81,65), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65), state 0x0, keycode 68 (keysym 0xffbf, F2), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyPress event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XmbLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219885, (79,-12), root:(81,65), state 0x1, keycode 68 (keysym 0xffbf, F2), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False  KeyRelease event, serial 33, synthetic NO, window 0x6600001, root 0x3f, subw 0x0, time 3513219925, (79,-12), root:(81,65), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes:  XFilterEvent returns: False 

Так, удерживая Shiftи нажимая F1клавишу, вы получите следующий результат:

  • Shiftнажата и (и Shiftклавиша отпущена)
  • F1Клавиша нажата (и ShiftКлавиша нажата)
  • F1ключ выпущен и Shiftключ выпущен

Это означает, что shiftклавиша отпускается при нажатии клавиши F.

Как это предотвратить?

Alt работает нормально с клавишами F

Ниже приводится xmodmap для этого сервера:

xmodmap: up to 4 keys per modifier, (keycodes in parentheses):  shift Shift_L (0x32), Shift_R (0x3e) lock Caps_Lock (0x42) control Control_L (0x25), Control_R (0x6d) mod1 Alt_L (0x40), Alt_R (0x71), Meta_L (0x9c) mod2 Num_Lock (0x4d) mod3  mod4 Super_L (0x73), Super_R (0x74), Super_L (0x7f), Hyper_L (0x80) mod5 Mode_switch (0x8), ISO_Level3_Shift (0x7c) 

Ниже приведено xmodmap другого сервера, на котором работает Shift+ Fkeys:

xmodmap: up to 2 keys per modifier, (keycodes in parentheses):  shift Shift_L (0x32), Shift_R (0x3e) lock  control Control_L (0x25), Control_R (0x6d) mod1 Alt_L (0x40), Alt_R (0x71) mod2 Num_Lock (0x4d) mod3  mod4  mod5  

Я попытался удалить последние 3 модификатора. Но все равно не работает. Нужно ли будет перезапустить любую службу, чтобы вступить в силу. Если так, то не сделали этого. Однако перезапуск VNC полностью сбрасывается к его настройкам по умолчанию.

Я также пытался отключить клавиши F. Но не знаю как. И даже если я отключу эти привязки клавиш F, Alt+ F keyкоманды не будут работать правильно. Поэтому я не должен полностью отключать привязку клавиш F.

Пожалуйста помоги.

1

0 ответов на вопрос