我正在尝试在 XKB 中的键盘映射中安装自定义符号文件,因为找到这里。我想改写J
按键的处理方式(模拟数字键盘的第一步,但目前我只是应用与us
符号文件中相同的映射)。但是,在使用加载文件的步骤中xkbcomp
,我收到错误。请在下面找到错误状态和文件内容:
该映射是通过修改 的输出并在 include 语句末尾setxkbmap -print
添加“ ”创建的。+altkeypad_symbols(altkeypad)
xkb_symbols
~$ cat .xkb/altkeypad_map
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+us:2+inet(evdev)+altkeypad_symbols(altkeypad)" };
xkb_geometry { include "pc(pc105)" };
};
J
自定义符号文件,是将键“重新映射”为其正常功能的简单玩具盒。
~$ cat .xkb/symbols/altkeypad_symbols
// Emulate the keypad using {j k l u i o 7 8 9} as KP_{1 2 3 4 5 6 7 8 9}
default partial alphanumeric_keys modifier_keys
xkb_symbols "altkeypad" {
key <AC07> { [ j, J ] };
}
尝试安装新地图时出现错误,由于符号“J”出现在文件的第 5 行而不是第 7 行,因此这变得越来越奇怪。
~$ xkbcomp -I$HOME/.xkb $HOME/.xkb/altkeypad_map $DISPLAY
syntax error: line 7 of altkeypad_symbols
last scanned symbol is: J
Error: Error interpreting include file "altkeypad_symbols"
Exiting
Abandoning symbols file "(null)"
Error: success in unknown
Couldn't write keyboard description to :0
据我所知,我已经非常接近其他自定义符号映射的语法。如能提供任何帮助解决错误,我将不胜感激!
答案1
我相信那里少了一个分号
// Emulate the keypad using {j k l u i o 7 8 9} as KP_{1 2 3 4 5 6 7 8 9}
default partial alphanumeric_keys modifier_keys
xkb_symbols "altkeypad" {
key <AC07> { [ j, J ] };
}; <<----- HERE!