如何在 XKB 中安装新的自定义键盘映射?

如何在 XKB 中安装新的自定义键盘映射?

我正在尝试在 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!

相关内容