XCompose 与 GTK 结合使用会导致自身映射出现奇怪的行为

XCompose 与 GTK 结合使用会导致自身映射出现奇怪的行为

~/.XCompose我在 GTK 应用(例如 Thunderbird 或 Signal-Desktop)中使用自己的应用时遇到了问题。添加这些行后~/.profile,它(几乎)可以正常工作。

# XCompose
export QT_IM_MODULE="xim"
export GTK_IM_MODULE="xim"

以下是两个使用时行为不同的示例:

<Multi_key> <o> <o> : "ö"
<Multi_key> <s> <s> : "ß"

两种组合都已在 中设置/usr/share/X11/locale/en_US.UTF-8/Compose。后者默认添加,映射相同(ss -> ß)。而第一个映射(默认且应被覆盖)到度数符号°

当我输入后一个组合时,“ß”按预期出现。但第一个组合产生了一个难以解释的奇怪结果。输入组合后,字母下方会出现一个小下划线/横线。当我输入另一个字母时,它会插入到“ö”之前。例如:

INPUT: <Multi_key> <o> <o>
OUTPUT:  ö # with a bar underneath

INPUT: m
OUTPUT: mö # inserted in front??

相比之下(为了更好地说明这个奇怪的错误):

INPUT: <Multi_key> <s> <s>
OUTPUT:  ß 

INPUT: m
OUTPUT: ßm

在 GTK Apps 和 bash shell 中,这两个结果是相同的。操作系统信息:

$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS"

答案1

我使用的文件中有重复的行~/.XCompose,导致出现这种奇怪的行为。现在,只有唯一的定义并删除了多余的定义,一切正常。

内容~/.profile

...
export GTK_IM_MODULE="xim"

相关内容