我注意到Emacs 无法识别M->
(end-of-buffer) 和(org-meta-right) 等命令。M-S-<right arrow>
通过使用描述键绑定证实了这一点C-h k
,它显示了分配给 的功能M-.
。
我在运行最新版本 Xorg(无根)的最新 Arch Linux 系统上使用 Emacs 24.3 (gui)。该问题在窗口管理器中持续存在,因此我认为这不是窗口管理器问题。另外,对我的按键映射所做的唯一修改是:
setxkbmap -option ctrl:nocaps
setxkbmap -option terminate:ctrl_alt_bksp
我用key-mon确认MS-可以被X识别。看起来可以。不过,我也安装了 conkeror,发现它也收不到组合键,所以我认为这一定是我的 X 服务器的问题。
我还可以尝试什么来解决这个问题?
打字xmodmap -pke
会显示我的键盘映射的这些 NoSymbol 区域。他们会是罪魁祸首吗?
keycode 36 = Return NoSymbol Return
keycode 37 = Control_L NoSymbol Control_L
使用命令:
setxkbmap-打印-详细10
给出以下输出:
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: thinkpad
layout: us
options: terminate:ctrl_alt_bksp,ctrl:nocaps,grp:alt_shift_toggle
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+inet(evdev)+group(alt_shift_toggle)+ctrl(nocaps)+terminate(ctrl_alt_bksp)
geometry: thinkpad(us)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)+group(alt_shift_toggle)+ctrl(nocaps)+terminate(ctrl_alt_bksp)" };
xkb_geometry { include "thinkpad(us)" };
答案1
grp:alt_shift_toggle 以某种方式添加到我的 Xorg 配置中。从 10-keyboard.conf 中删除该行并重新启动 X 可以消除不需要的行为。