作为巴西人,我希望我的美式键盘使用死键并将变音符 (ç) 映射到' + c。默认映射给我C对于基于 GTK 的应用程序,可以通过设置以下环境变量轻松实现此设置:
GTK_IM_MODULES=cedilla
但是,对于基于 Qt 的应用程序(例如 KWrite),相同的方法不起作用:
QT_IM_MODULES=cedilla #doesn't work!
Qt 应用程序将继续打印ć。如何调试和修复此问题?
注意:请不要建议给出的方法这里. 打字AltGr + c对于巴西人来说感觉很陌生,而 GTK 解决方案效果很好。
答案1
创建一个包含以下内容的文件~/.XCompose
应该可以解决问题:
include "%S/en_US.UTF-8/Compose"
<dead_acute> <C> : "Ç"
<dead_acute> <c> : "ç"
但是,这仅在应用程序读取 XCompose 文件 ( /usr/share/X11/locale/...
) 时才有效。这不是 X 服务器设置,但实际上取决于应用程序,请参阅Gilles 在 UNIX.SE 上回答寻找一种方法来查明应用程序是否正在读取这些文件。