重新映射键以输出 Unicode 字符

重新映射键以输出 Unicode 字符

我的目标是通过重新映射我的按键以使用正确的 Unicode 符号来更有效地排版数学/物理并更具可读性。

因此,我想重新映射我的键,以便按Alt Gr+Letter输出特殊的 Unicode 符号,例如Alt Gr+a输出

答案1

这在 X11 中有效并经过测试,并且应该适用于 Wayland 以及每个关于 Wayland 协议的讨论。此方法可移植到任何使用 Xorg 的操作系统。这是对我有用的:

  1. 创建一个目录来保存自定义键盘映射,我喜欢.settings在我的主目录中创建一个文件夹,并创建一个子文件夹,命名keyboard只是为了让事情井井有条。

  2. 创建一个包含您的键盘映射的文件,例如uc(在“us”键盘映射上播放,但使用“c”自定义),并使用以下几行

default partial alphanumeric_keys
xkb_symbols "uc" {
    name[Group1]="uc";
    include "us(basic)"
    include "level3(ralt_switch_multikey)"

};

us在这里,我们基本上只是使用 line复制默认键盘映射include "us(basic)",我选择将右侧设置alt为我的 3 级转变,这将是我们的自定义符号。这个选择有点随意,您可以选择许多其他选项,这些选项都在文件中列出

/usr/share/X11/xkb/symbols/level3

此时运行以下命令以确保我们的脚本中没有拼写错误或错误setxkbmap ./uc

  1. 让我们将所需的符号添加到键盘布局中。例如,我要将符号U2200(对于所有符号)添加到字母 中a。这是通过在第二条语句下方添加以下行来完成的include
key <AC01> { [a, A, U2200 ] };

保存此文件并运行setxkbmap ./uc现在会将该符号添加到键盘,并且按住右键alta产生一个 ∀ 符号。在这一行中,<AC01>意味着我们将定义a键盘上的键,在xkb_symbols本文档的部分中,键盘的行从下到上表示为AAABACAD、 和AE,各个键列01到最后键盘的(我没有对此进行太多实验,但是修饰键 和Tab不被计算在内,因此za和都是其行中的q键号),因此该键是第三行上的第一个非修饰键键盘,或者更确切地说,按键。然后,我们告诉将此键的值分别设置为、、 和对于一级、二级和三级。01AC01axkbaAU2200不要忘记首先列出该键的实际字母,否则在将其设置为键盘映射后您将无法键入这些字符。对您想要编辑的每个键执行此操作将为您提供想要添加到键盘映射中的符号。

至此,我们已经完成了足够的工作,可以将其设置为我们的键盘映射。要了解如何使这些更改永久生效并能够在系统设置的键盘菜单中访问我们的新键盘映射,请参阅我的其他答案这里。这基本上包括将此文件链接到正确的位置,并在文件中为其添加一个条目,evdev.xml以便您的系统可以访问它。

祝你好运!

相关内容