好吧,这不仅仅是一个问题,而是一个解释这件事的请求……我试图回答另一个问题,但我陷入了混乱。免责声明:我是一个老牌 Unix/Linux 用户,也许技术已经超越了我……
我有一个标准的 13.10 安装,其中有两种输入法:普通美国输入法和带国际死键的美国输入法(最后一个是默认输入法 - 我通常用西班牙语、意大利语和英语书写,经常混合使用)。我没有选择任何输入法,所以我使用默认输入法……我不知道哪个是默认输入法。
因此,我创建了包含以下内容的文件.XCompose
(不要问):
include "%L"
<dead_acute> <z> : "å" aring
<dead_acute> <Z> : "Å" Aring
然后重启服务器。现在xterm
,, 让我用死重音符号写出埃单位“Å”,然后是 Z,而xjed
,仍然给出“Ź”。kile
gedit
gnome-terminal
我(认为我)知道如何通过 GTK_IM_MODULE(和 co.)环境变量修改行为,但我的问题是试图了解哪个是默认配置 --- 我必须更改什么和在哪里更改才能在所有应用程序中保持一致的行为。
我知道,另一个问题会让我获得另一个 Tumbleweed 徽章......
答案1
The ComposeKey sequences used by Gnome to enter special characters are hard coded into the program
,因此您修改后的设置将适用于 X 程序,显然也适用于 KDE 程序,但不能适用于 Gtk 程序。
来源:GtkComposeTable,其中列出了 Gnome Compose 键表。Gnome 死键设置位于GtkDeadKeyTable
有关使用 Compose 键(以及如何xim
绕过 Gnome 硬编码)的更多信息,请参阅撰写键在社区文档中。
通过设置环境变量 GTK_IM_MODULE,可以推翻 Gnome 硬编码,转而使用原始的 Xwindow 输入法 (XIM)。这可以在 /etc/environment 文件中设置,但如果机器有多个用户,则最好通过修改 ~/.gnomerc 或 ~/.Xsession 在每个用户的基础上从主目录中进行设置
export GTK_IM_MODULE="xim"
对于gnome-terminal
,在终端窗口中单击鼠标右键,然后在上下文菜单中选择输入法 >> X 输入法
xim
应该是默认输入法,但为了确保默认输入法在整个系统范围内应用,从系统设置>>语言支持确保键盘输入法系统设置为default
。这样你就不需要每次都右键单击终端窗口,但你可能仍然需要GTK_IM_MODULE
环境设置。