You are not logged in.
Hi, i thought this should be a GNOME xkb issue, but i have no way to login
gitlab.gnome.org because it block github login, so, just ask question for help here.
I use following config for change Capslock into Ctrl, and change Right Alt to Capslock, it works quite well.
/usr/share/X11/xkb/symbols/new_ctrl
partial modifier_keys
xkb_symbols "new_ctrl" {
replace key <RALT> { [ Caps_Lock, Caps_Lock ] };
modifier_map Lock { <RALT> };
replace key <CAPS> { [ Control_L, Control_L ] };
modifier_map Control { <CAPS>, <LCTRL> };
};
Until i want to use key binding of `Ctrl + Shift + TAB`, that is, i expect it should be `Capslock + Shift + TAB`
which is useful for move to firefox/konsole tab, but former work, latter not work, at the same time, `Caplock + TAB`
always work as expected.
This issue exists for a long time on my arch, although, i remember it works before, even, when i use the system builtin config. e.g.
gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:swapcaps']"
So, how to fix that?
Thanks.
-------------------
EDIT: i hope someone can help test if this issue exists in his own arch linux too. (to eliminate my some other config cause this)
Following is process: (Ensure you are use Gnome + Wayland)
1. Run
gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:swapcaps']"
2. Open Firefox or Konsole, open several tabs, then try `Capslock + TAB`, `Capslock + Shift + TAB` to switch between tabs.
former should always work, but latter not work on my Arch.
3. After done, Run following command to restore to default.
gsettings reset org.gnome.desktop.input-sources xkb-options
Last edited by zw963 (2023-05-05 13:38:35)
Offline
Are you sure this is related to your custom layout at all?
Shift+Tab is backtab/ISO_Left_Tab, depending on what FF/konsole (using xwayland or native wayland?) hook onto and what gnome actually creates (tried the behavior w/ gnome on X11?) the issue might be just that.
Offline
> Are you sure this is related to your custom layout at all?
Not sure.
> Shift+Tab is backtab/ISO_Left_Tab, depending on what FF/konsole (using xwayland or native wayland?) hook onto and what gnome actually creates (tried the behavior w/ gnome on X11?) the issue might be just that.
This issue happen on X11 too, when i use X11, i have to use xmodmap ~/.Xmodmap to remap the Capslock into Ctrl because xkb not work.
But, in this case, Capslock + TAB + RShift still not work.
So, is this stand for some issue happen on some system config?
Last edited by zw963 (2023-04-19 09:04:08)
Offline
Not sure.
You should first and foremost test that, because if the client binds the wrong™ key (shift+tab instead of shift+backtab) you're chasing a wild goose here.
useful for move to firefox/konsole tab, but former work, latter not work
For clarification: firefox acts as expected, it's just konsole that causes problems?
=> https://bugs.kde.org/show_bug.cgi?id=409563
Offline
> For clarification: firefox acts as expected, it's just konsole that causes problems?
No, No, sorry, what i means is, after set the kbd layout, old Ctrl + Shift + TAB still works, but Capslock + Shift + TAB not work on both firefox/konsole.
> You should first and foremost test that, because if the client binds the wrong™ key (shift+tab instead of shift+backtab) you're chasing a wild goose here.
I consider this is true, because Capslock + Shift + TAB even can't be detected when try to set this keybinding to a new command, and i test on a new created
user too, Capslock + Shift + TAB just noop.
Offline
The main question is whether ctrl+shift+tab works as expected when you're NOT mapping capslock to ctrl in any way shape or form.
Offline
The main question is whether ctrl+shift+tab works as expected when you're NOT mapping capslock to ctrl in any way shape or form.
Sorry for confusing, the main question is, after xkb mapping done(caps to ctrl), why ctrl + shift + tab always(keep as before) work, but capslock + shift + tab not work as expected?
Offline
Log into an X11 session w/ the regular layout, do not try to swap anything.
setxkbmap -print -query
xev -event keyboard # press ctrl+tab and ctrl+shift+tab
setxkbmap -option 'ctrl:swapcaps'
setxkbmap -print -query # for confirmation
xev -event keyboard # press ctrl+tab and ctrl+shift+tab and caps+tab and caps+shift+tab
Post the outputs.
Offline
Log into an X11 session w/ the regular layout, do not try to swap anything.
setxkbmap -print -query xev -event keyboard # press ctrl+tab and ctrl+shift+tab setxkbmap -option 'ctrl:swapcaps' setxkbmap -print -query # for confirmation xev -event keyboard # press ctrl+tab and ctrl+shift+tab and caps+tab and caps+shift+tab
Post the outputs.
please check:
1. setxkbmap -print -query first time.
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
rules: evdev
model: pc105
layout: us
2. Run press ctrl+tab and ctrl+shift+tab before setxkb, sorry not split two individual log
Outer window is 0x2a00001, inner window is 0x2a00002
KeymapNotify event, serial 24, synthetic NO, window 0x0,
keys: 130 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
KeyRelease event, serial 25, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81484578, (543,1047), root:(580,1153),
state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81489442, (543,1047), root:(580,1153),
state 0x10, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81489705, (543,1047), root:(580,1153),
state 0x14, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XmbLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81489840, (543,1047), root:(580,1153),
state 0x14, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81489870, (543,1047), root:(580,1153),
state 0x14, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81496955, (543,1047), root:(580,1153),
state 0x10, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81497096, (543,1047), root:(580,1153),
state 0x14, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81497398, (543,1047), root:(580,1153),
state 0x15, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81497509, (543,1047), root:(580,1153),
state 0x15, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81497539, (543,1047), root:(580,1153),
state 0x15, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81497559, (543,1047), root:(580,1153),
state 0x14, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
3. Run setxkbmap -print -query after set xkb
sorry for forget copy the log, but, i can ensure "setxkbmap -option 'ctrl:swapcaps'" run successful.
4. xev -event keyboard # press ctrl+tab and ctrl+shift+tab and caps+tab and caps+shift+tab
I split into four log instead,
1) ctrl + tab (work as expected)
Outer window is 0x2a00001, inner window is 0x2a00002
KeymapNotify event, serial 24, synthetic NO, window 0x0,
keys: 130 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
KeyRelease event, serial 25, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81691568, (1003,1188), root:(1040,1294),
state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81722884, (1003,1188), root:(1040,1294),
state 0x10, keycode 37 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81723040, (1003,1188), root:(1040,1294),
state 0x12, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XmbLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81723181, (1003,1188), root:(1040,1294),
state 0x12, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81723190, (1003,1188), root:(1040,1294),
state 0x12, keycode 37 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
2) ctrl+shift+tab (work as expected)
Outer window is 0x2a00001, inner window is 0x2a00002
KeymapNotify event, serial 24, synthetic NO, window 0x0,
keys: 130 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
KeyRelease event, serial 25, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81809733, (801,1241), root:(838,1347),
state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81814571, (801,1241), root:(838,1347),
state 0x10, keycode 37 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81814748, (801,1241), root:(838,1347),
state 0x12, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81815039, (801,1241), root:(838,1347),
state 0x13, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81815130, (801,1241), root:(838,1347),
state 0x13, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81815160, (801,1241), root:(838,1347),
state 0x13, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81815179, (801,1241), root:(838,1347),
state 0x12, keycode 37 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
3) caps+tab (work as expected)
Outer window is 0x2a00001, inner window is 0x2a00002
KeymapNotify event, serial 24, synthetic NO, window 0x0,
keys: 130 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
KeyRelease event, serial 25, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81940175, (768,1238), root:(805,1344),
state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81945755, (768,1238), root:(805,1344),
state 0x10, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81945896, (768,1238), root:(805,1344),
state 0x14, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XmbLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81946062, (768,1238), root:(805,1344),
state 0x14, keycode 23 (keysym 0xff09, Tab), same_screen YES,
XLookupString gives 1 bytes: (09) " "
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81946072, (768,1238), root:(805,1344),
state 0x14, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
4) caps+shift+tab (this is my issue, not work well!)
Outer window is 0x2a00001, inner window is 0x2a00002
KeymapNotify event, serial 24, synthetic NO, window 0x0,
keys: 130 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
KeyRelease event, serial 25, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 81986280, (670,1250), root:(707,1356),
state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 82002653, (670,1250), root:(707,1356),
state 0x10, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 82006737, (670,1250), root:(707,1356),
state 0x14, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 82007193, (670,1250), root:(707,1356),
state 0x15, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x2a00001,
root 0x55b, subw 0x0, time 82008142, (670,1250), root:(707,1356),
state 0x14, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Offline
The key event isn't picked up at all - this might be a hardware problem (not all 3-key comobos are necessarily wired in your keyboard)
sudo evtest # the keyboard mappings in X11 don't matter for this
Select your keyboard and press the physical keys for shift+caps+tab and make sure they all (notably the tab key) generate *some* event.
Offline
The key event isn't picked up at all - this might be a hardware problem (not all 3-key comobos are necessarily wired in your keyboard)
sudo evtest # the keyboard mappings in X11 don't matter for this
Select your keyboard and press the physical keys for shift+caps+tab and make sure they all (notably the tab key) generate *some* event.
Following is output when GNOME + Wayland when pressing RShift first, then Capslock + TAB
╰─ $ 130 sudo evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Lid Switch
/dev/input/event1: Power Button
/dev/input/event10: HDA Intel PCH Mic
/dev/input/event11: HDA Intel PCH Headphone
/dev/input/event12: HDA Intel PCH HDMI/DP,pcm=3
/dev/input/event13: HDA Intel PCH HDMI/DP,pcm=7
/dev/input/event14: HDA Intel PCH HDMI/DP,pcm=8
/dev/input/event15: LG Camera: LG Camera
/dev/input/event2: Sleep Button
/dev/input/event3: Power Button
/dev/input/event4: AT Translated Set 2 keyboard
/dev/input/event5: Video Bus
/dev/input/event6: LG WMI hotkeys
/dev/input/event7: PC Speaker
/dev/input/event8: 04CA00B1:00 04CA:00B1 Touchpad
/dev/input/event9: 04CA00B1:00 04CA:00B1 Mouse
Select the device event number [0-15]: 4
Input driver version is 1.0.1
Input device ID: bus 0x11 vendor 0x1 product 0x1 version 0xab41
Input device name: "AT Translated Set 2 keyboard"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 1 (KEY_ESC)
Event code 2 (KEY_1)
Event code 3 (KEY_2)
Event code 4 (KEY_3)
Event code 5 (KEY_4)
Event code 6 (KEY_5)
Event code 7 (KEY_6)
Event code 8 (KEY_7)
Event code 9 (KEY_8)
Event code 10 (KEY_9)
Event code 11 (KEY_0)
Event code 12 (KEY_MINUS)
Event code 13 (KEY_EQUAL)
Event code 14 (KEY_BACKSPACE)
Event code 15 (KEY_TAB)
Event code 16 (KEY_Q)
Event code 17 (KEY_W)
Event code 18 (KEY_E)
Event code 19 (KEY_R)
Event code 20 (KEY_T)
Event code 21 (KEY_Y)
Event code 22 (KEY_U)
Event code 23 (KEY_I)
Event code 24 (KEY_O)
Event code 25 (KEY_P)
Event code 26 (KEY_LEFTBRACE)
Event code 27 (KEY_RIGHTBRACE)
Event code 28 (KEY_ENTER)
Event code 29 (KEY_LEFTCTRL)
Event code 30 (KEY_A)
Event code 31 (KEY_S)
Event code 32 (KEY_D)
Event code 33 (KEY_F)
Event code 34 (KEY_G)
Event code 35 (KEY_H)
Event code 36 (KEY_J)
Event code 37 (KEY_K)
Event code 38 (KEY_L)
Event code 39 (KEY_SEMICOLON)
Event code 40 (KEY_APOSTROPHE)
Event code 41 (KEY_GRAVE)
Event code 42 (KEY_LEFTSHIFT)
Event code 43 (KEY_BACKSLASH)
Event code 44 (KEY_Z)
Event code 45 (KEY_X)
Event code 46 (KEY_C)
Event code 47 (KEY_V)
Event code 48 (KEY_B)
Event code 49 (KEY_N)
Event code 50 (KEY_M)
Event code 51 (KEY_COMMA)
Event code 52 (KEY_DOT)
Event code 53 (KEY_SLASH)
Event code 54 (KEY_RIGHTSHIFT)
Event code 55 (KEY_KPASTERISK)
Event code 56 (KEY_LEFTALT)
Event code 57 (KEY_SPACE)
Event code 58 (KEY_CAPSLOCK)
Event code 59 (KEY_F1)
Event code 60 (KEY_F2)
Event code 61 (KEY_F3)
Event code 62 (KEY_F4)
Event code 63 (KEY_F5)
Event code 64 (KEY_F6)
Event code 65 (KEY_F7)
Event code 66 (KEY_F8)
Event code 67 (KEY_F9)
Event code 68 (KEY_F10)
Event code 69 (KEY_NUMLOCK)
Event code 70 (KEY_SCROLLLOCK)
Event code 71 (KEY_KP7)
Event code 72 (KEY_KP8)
Event code 73 (KEY_KP9)
Event code 74 (KEY_KPMINUS)
Event code 75 (KEY_KP4)
Event code 76 (KEY_KP5)
Event code 77 (KEY_KP6)
Event code 78 (KEY_KPPLUS)
Event code 79 (KEY_KP1)
Event code 80 (KEY_KP2)
Event code 81 (KEY_KP3)
Event code 82 (KEY_KP0)
Event code 83 (KEY_KPDOT)
Event code 85 (KEY_ZENKAKUHANKAKU)
Event code 86 (KEY_102ND)
Event code 87 (KEY_F11)
Event code 88 (KEY_F12)
Event code 89 (KEY_RO)
Event code 90 (KEY_KATAKANA)
Event code 91 (KEY_HIRAGANA)
Event code 92 (KEY_HENKAN)
Event code 93 (KEY_KATAKANAHIRAGANA)
Event code 94 (KEY_MUHENKAN)
Event code 95 (KEY_KPJPCOMMA)
Event code 96 (KEY_KPENTER)
Event code 97 (KEY_RIGHTCTRL)
Event code 98 (KEY_KPSLASH)
Event code 99 (KEY_SYSRQ)
Event code 100 (KEY_RIGHTALT)
Event code 102 (KEY_HOME)
Event code 103 (KEY_UP)
Event code 104 (KEY_PAGEUP)
Event code 105 (KEY_LEFT)
Event code 106 (KEY_RIGHT)
Event code 107 (KEY_END)
Event code 108 (KEY_DOWN)
Event code 109 (KEY_PAGEDOWN)
Event code 110 (KEY_INSERT)
Event code 111 (KEY_DELETE)
Event code 112 (KEY_MACRO)
Event code 113 (KEY_MUTE)
Event code 114 (KEY_VOLUMEDOWN)
Event code 115 (KEY_VOLUMEUP)
Event code 116 (KEY_POWER)
Event code 117 (KEY_KPEQUAL)
Event code 118 (KEY_KPPLUSMINUS)
Event code 119 (KEY_PAUSE)
Event code 121 (KEY_KPCOMMA)
Event code 122 (KEY_HANGUEL)
Event code 123 (KEY_HANJA)
Event code 124 (KEY_YEN)
Event code 125 (KEY_LEFTMETA)
Event code 126 (KEY_RIGHTMETA)
Event code 127 (KEY_COMPOSE)
Event code 128 (KEY_STOP)
Event code 140 (KEY_CALC)
Event code 142 (KEY_SLEEP)
Event code 143 (KEY_WAKEUP)
Event code 155 (KEY_MAIL)
Event code 156 (KEY_BOOKMARKS)
Event code 157 (KEY_COMPUTER)
Event code 158 (KEY_BACK)
Event code 159 (KEY_FORWARD)
Event code 163 (KEY_NEXTSONG)
Event code 164 (KEY_PLAYPAUSE)
Event code 165 (KEY_PREVIOUSSONG)
Event code 166 (KEY_STOPCD)
Event code 172 (KEY_HOMEPAGE)
Event code 173 (KEY_REFRESH)
Event code 183 (KEY_F13)
Event code 184 (KEY_F14)
Event code 185 (KEY_F15)
Event code 217 (KEY_SEARCH)
Event code 226 (KEY_MEDIA)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Event type 17 (EV_LED)
Event code 0 (LED_NUML) state 0
Event code 1 (LED_CAPSL) state 0
Event code 2 (LED_SCROLLL) state 0
Key repeat handling:
Repeat type 20 (EV_REP)
Repeat code 0 (REP_DELAY)
Value 250
Repeat code 1 (REP_PERIOD)
Value 33
Properties:
Testing ... (interrupt to exit)
Event: time 1682066160.703400, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1c
Event: time 1682066160.703400, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0
Event: time 1682066160.703400, -------------- SYN_REPORT ------------
Event: time 1682066164.763444, type 4 (EV_MSC), code 4 (MSC_SCAN), value 36
Event: time 1682066164.763444, type 1 (EV_KEY), code 54 (KEY_RIGHTSHIFT), value 1
Event: time 1682066164.763444, -------------- SYN_REPORT ------------
Event: time 1682066164.974795, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066164.974795, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 1
Event: time 1682066164.974795, -------------- SYN_REPORT ------------
Event: time 1682066165.225776, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066165.225776, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 2
Event: time 1682066165.225776, -------------- SYN_REPORT ------------
Event: time 1682066165.255664, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066165.255664, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 2
Event: time 1682066165.255664, -------------- SYN_REPORT ------------
Event: time 1682066165.265781, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066165.265781, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 0
Event: time 1682066165.265781, -------------- SYN_REPORT ------------
Event: time 1682066165.276056, type 4 (EV_MSC), code 4 (MSC_SCAN), value 36
Event: time 1682066165.276056, type 1 (EV_KEY), code 54 (KEY_RIGHTSHIFT), value 0
Following is the only Capslock + TAB
Testing ... (interrupt to exit)
Event: time 1682066025.922350, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1c
Event: time 1682066025.922350, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0
Event: time 1682066025.922350, -------------- SYN_REPORT ------------
Event: time 1682066028.728349, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066028.728349, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 1
Event: time 1682066028.728349, -------------- SYN_REPORT ------------
Event: time 1682066028.913803, type 4 (EV_MSC), code 4 (MSC_SCAN), value 0f
Event: time 1682066028.913803, type 1 (EV_KEY), code 15 (KEY_TAB), value 1
Event: time 1682066028.913803, -------------- SYN_REPORT ------------
Event: time 1682066029.025298, type 4 (EV_MSC), code 4 (MSC_SCAN), value 0f
Event: time 1682066029.025298, type 1 (EV_KEY), code 15 (KEY_TAB), value 0
Event: time 1682066029.025298, -------------- SYN_REPORT ------------
Event: time 1682066029.034603, type 4 (EV_MSC), code 4 (MSC_SCAN), value 3a
Event: time 1682066029.034603, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 0
Event: time 1682066037.387442, -------------- SYN_REPORT ------------
As you can see, when i keep pressing RShift, the TAB event never record.
I don't consider this is hardware issue? because RShift + LCtrl + TAB always work.
Event: time 1682066389.418908, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1c
Event: time 1682066389.418908, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0
Event: time 1682066389.418908, -------------- SYN_REPORT ------------
Event: time 1682066393.393326, type 4 (EV_MSC), code 4 (MSC_SCAN), value 36
Event: time 1682066393.393326, type 1 (EV_KEY), code 54 (KEY_RIGHTSHIFT), value 1
Event: time 1682066393.393326, -------------- SYN_REPORT ------------
Event: time 1682066393.635025, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1d
Event: time 1682066393.635025, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
Event: time 1682066393.635025, -------------- SYN_REPORT ------------
Event: time 1682066393.759914, type 4 (EV_MSC), code 4 (MSC_SCAN), value 0f
Event: time 1682066393.759914, type 1 (EV_KEY), code 15 (KEY_TAB), value 1
Event: time 1682066393.759914, -------------- SYN_REPORT ------------
Event: time 1682066393.886864, type 4 (EV_MSC), code 4 (MSC_SCAN), value 0f
Event: time 1682066393.886864, type 1 (EV_KEY), code 15 (KEY_TAB), value 0
Event: time 1682066393.886864, -------------- SYN_REPORT ------------
Event: time 1682066393.915654, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1d
Event: time 1682066393.915654, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 0
Event: time 1682066393.915654, -------------- SYN_REPORT ------------
Event: time 1682066393.966543, type 4 (EV_MSC), code 4 (MSC_SCAN), value 36
Event: time 1682066393.966543, type 1 (EV_KEY), code 54 (KEY_RIGHTSHIFT), value 0
It just not work when combile with Capslock.
Any idea?
Thanks
Offline
Any idea?
not all 3-key comobos are necessarily wired in your keyboard
I don't consider this is hardware issue? because RShift + LCtrl + TAB always work.
not all 3-key comobos are necessarily wired in your keyboard
Im pretty sure that this is a hardware limitation, since there're no kernel level events for that combo.
If anything, a device-specific WMI module would be buggy, but that's far less likely than teh keyboard just not generating a signal here which isn't uncommon at all.
You can try whether you can get an event for the combo w/ a live distro or even windows or for a cross-test, try a different keyboard (gam0rz k3yb0ardz tend to brag a lot about their rollover capacity - if you have such device)
Offline
Hi, don't know why, after run pacman -Syu today(May 5 2023), this issue is gone ...
I consider this probably a drive issue, but fixed in newest arch linux.
Thank you very much.
Offline
Hi, Seth.
Finally, i installed a windows 10 on my laptop, and do same keybinding swap too. i can confirm, this really is a hardware limitation,
because i can reproduce it on windows, use laptop keyboard.
But, this issue is not happen when use a external USB keyboard.
Anyway, i know why this happen, thank you very much!
Offline