我有三个系统:
- 笔记本电脑运行 22.04,alt-gr 可在其中运行。
- 23.04 上有 2 个桌面,但不存在该问题。
我已尽力尝试匹配键盘/本地化配置,但效果不佳。
这让我很烦恼,因为我在 Jetbrains IDE 中有几个键绑定现在不起作用了。
我在 Jetbrain 论坛上遇到过这个问题,似乎可以通过“修复” AltGr(选中注册表中的复选框)来解决,但这不起作用
我尝试了 GUI 中的“备用字符键”,但它也不起作用(我能够在键绑定中写入ŧ
字符而不是T
,但这会给其他一些特殊字符带来更多问题)
我已经尝试使用 VSCode,但它也没有在桌面上注册绑定。
以下示例使用 AltGr+t 进行测试,但我也常用 AltGr+a 和 AltGr+c
笔记本电脑设置
- xev 检测
ISO_Level3_Shift
并ŧ
char(奇怪,但有效):
KeyPress event, serial 34, synthetic NO, window 0x1a00001,
root 0x3cf, subw 0x0, time 63129127, (2778,633), root:(2878,861),
state 0x0, 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
KeyPress event, serial 37, synthetic NO, window 0x1a00001,
root 0x3cf, subw 0x0, time 63130658, (2778,633), root:(2878,861),
state 0x80, keycode 28 (keysym 0x3bc, tslash), same_screen YES,
XLookupString gives 2 bytes: (c5 a7) "ŧ"
XmbLookupString gives 2 bytes: (c5 a7) "ŧ"
XFilterEvent returns: False
KeyRelease event, serial 37, synthetic NO, window 0x1a00001,
root 0x3cf, subw 0x0, time 63130895, (2778,633), root:(2878,861),
state 0x80, keycode 28 (keysym 0x3bc, tslash), same_screen YES,
XLookupString gives 2 bytes: (c5 a7) "ŧ"
XFilterEvent returns: False
KeyRelease event, serial 37, synthetic NO, window 0x1a00001,
root 0x3cf, subw 0x0, time 63131602, (2778,633), root:(2878,861),
state 0x80, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XFilterEvent returns: False
设置xkbmap
michondr@zen ~> set | grep -E 'XMODIFIERS|GTK_IM_MODULE|QT_IM_MODULE';setxkbmap -query
QT_IM_MODULE ibus
XMODIFIERS @im=ibus
rules: evdev
model: pc105
layout: us
区域设置:
michondr@zen ~> locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=cs_CZ.UTF-8
LC_TIME=cs_CZ.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=cs_CZ.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=cs_CZ.UTF-8
LC_NAME=cs_CZ.UTF-8
LC_ADDRESS=cs_CZ.UTF-8
LC_TELEPHONE=cs_CZ.UTF-8
LC_MEASUREMENT=cs_CZ.UTF-8
LC_IDENTIFICATION=cs_CZ.UTF-8
LC_ALL=
截图:
GUI 中的键盘设置:
goland:(按下 alt-gr + t):
当专注于搜索时:
goland 注册表中的 Alt-GR 设置:
台式电脑
xev 注册相同的键码
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x49e, subw 0x0, time 252633, (1848,776), root:(2018,940),
state 0x0, 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
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x49e, subw 0x0, time 253113, (1848,776), root:(2018,940),
state 0x80, keycode 28 (keysym 0x3bc, tslash), same_screen YES,
XLookupString gives 2 bytes: (c5 a7) "ŧ"
XmbLookupString gives 2 bytes: (c5 a7) "ŧ"
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x49e, subw 0x0, time 253233, (1848,776), root:(2018,940),
state 0x80, keycode 28 (keysym 0x3bc, tslash), same_screen YES,
XLookupString gives 2 bytes: (c5 a7) "ŧ"
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x49e, subw 0x0, time 254009, (1848,776), root:(2018,940),
state 0x80, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XFilterEvent returns: False
setxkbmap:键盘布局相同
michondr@home ~> set | grep -E 'XMODIFIERS|GTK_IM_MODULE|QT_IM_MODULE';setxkbmap -query
QT_IM_MODULE ibus
XMODIFIERS @im=ibus
WARNING: Running setxkbmap against an XWayland server
rules: evdev
model: pc105
layout: us
区域设置:
michondr@home ~ [127]> locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=cs_CZ.UTF-8
LC_TIME=cs_CZ.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=cs_CZ.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=cs_CZ.UTF-8
LC_NAME=cs_CZ.UTF-8
LC_ADDRESS=cs_CZ.UTF-8
LC_TELEPHONE=cs_CZ.UTF-8
LC_MEASUREMENT=cs_CZ.UTF-8
LC_IDENTIFICATION=cs_CZ.UTF-8
LC_ALL=
键盘设置(也尝试将“替代字符键”作为右 alt,仍然无济于事(注销并重新启动后:
当专注于关键搜索时:
当专注于搜索时:
戈兰注册中心:
有人遇到过这种情况吗?发布时是否可能发生了什么事情?
如果有必要,我可以提供有关这两台机器的更多信息。