xkbmap 重新映射 PrtScr 并插入 Home 和 Escape 键

xkbmap 重新映射 PrtScr 并插入 Home 和 Escape 键

我已经摸索xkbmap了一段时间,但不知道如何将“打印屏幕”按钮重新映射到“主页”。就好像美国键盘映射根本没有提到 PRSC 键代码。我无法使用,xmodmap因为切换键盘会破坏我的配置。

如何使用 将 PrtScr 键重新映射到 Home,将 Insert 键重新映射到 End xkbmap

答案1

我通过在 xkb 中编辑键盘映射来设法做到这一点。

在 中/usr/share/X11/xkb/symbols/,将其添加到与您正在使用的布局相对应的文件中(我使用美国布局,因此我编辑该us文件):

partial alphanumeric_keys modifier_keys
xkb_symbols "remap_prtsc_home_insert_end" {
    replace key <PRSC> { [ Home ] };
    replace key <INS> { [ End ] };
};

// Then include the previous block in the layout variant you're using
// For instance I'm using an international US layout so I edit the "intl" block:

partial alphanumeric_keys
xkb_symbols "intl" {
   include "us(remap_prtsc_home_insert_end)"
   // ...
   // Here the rest of your configuration, left unchanged
}

然后您需要重新启动才能使这些更改生效。

警告:仔细检查这些文件中的拼写错误,就好像它们无效一样,您在重新启动后可能无法登录,并且您需要以恢复模式启动并手动编辑上述文件来更正它们。


请注意在哪里可以找到键的名称:

在左侧,您需要使用关键事件名称(例如<PRSC>),可以在 中找到/usr/share/X11/xkb/keycodes/evdev
在右侧,您需要为字符使用有效的 X11 名称(例如Home)。/usr/include/X11/keysymdef.h如果您忽略前导,似乎可以找到它们XK_(对此不是 100% 确定,但它们似乎与我迄今为止所看到的相匹配)。

相关内容