gtk 和 qt 应用程序之间的 compose-key 映射有所不同

gtk 和 qt 应用程序之间的 compose-key 映射有所不同

我注意到其中一个组合键的输出存在不一致。

当我在 Chrome、gedit、gnome-terminal 或 roxterm 下输入 ( [Compose] . . ) 时,我得到了字符 '˙'。这是一个凸起的小点:

$ echo -n '˙' | xxd
0000000: cb99                                     ..

当我在 konsole、yakuake 或 kate 下输入相同的组合时,我得到了字符 '...'。这是一个省略号:

$ echo -n '…' | xxd
0000000: e280 a6                                  ...

这不是字体问题:如果我将字符从使用一个工具包的应用程序复制粘贴到使用另一个工具包的应用程序,其外观将得以保留。

我经常使用其他一些组合,它们似乎在各个工具包中都能一致地发挥作用。

我认为这是一个相当新的现象。我最近从 Ubuntu 8.10 升级到了 9.10,所以这可能与此有关。

我不确定如果我重新启动 X 这种情况是否会再次发生,而且我宁愿不去发现。

有人能解释一下这是怎么回事吗?我该怎么做才能解决这个问题?我想在输入该组合时在所有应用程序中都显示省略号。

答案1

X 以及每个小部件工具包都有自己的组合表。GTK+ 的主要来自 X而 Qt 有自己的映射,位于其他地方。当我找到它们时,我会更新此内容。

答案2

输入法和 X 有着悠久而复杂的历史。简而言之,在您的机器上,Qt 和 GTK 使用不同的 X 输入法。

KDE wiki 上有一个关于如何让 Qt 和 GTK 使用相同输入法的页面(在本例中为 xim)。

基于 Debian/Ubuntu 的发行版概述:

sudo update-alternatives --verbose --install /etc/X11/xinit/xinput.d/all_ALL xinput-all_ALL /etc/X11/xinit/xinput.d/*xim 20

相关内容