我使用波斯字母 ۀ (U+06C0) 很多次,所以我尝试为它分配一个简单的键。我打开“/usr/share/X11/xkb/symbols/ir”并更改了一个我从不使用的键,如下所示:
key <AC07> { [ Arabic_teh, 0x000006C0, VoidSymbol ] };
但它输入的不是 ۀ,而是 ю,即 U+044E(Unicode 0x0000044E)
我不明白为什么。Ubuntu 中的 Unicode-32 代码是否不同?!我敢打赌没有,但我不知道我的错误在哪里。我怎样才能将我的 AC07 键更改为键入 ۀ (U+06C0) 而不是 ю (U+044E)
编辑:我正在使用带有 IR 键盘布局(波斯语)的 Ubuntu 23.10,我将上面提到的行放在文件“/usr/share/X11/xkb/symbols/ir”的第 74 行中名为 //波斯字母和符号的部分下
答案1
我可以在我自己的 Ubuntu 22.04 上重现此行为。然后我将其替换0x000006C0
为0x10006C0
,结果就是Shift+AC07变成了 ۀ 字符。
确实无法解释,但查看 XKB 文件中的其他 Unicode 条目,我看到许多以 开头的条目0x100
。