自定义组合没有xim的键序列(例如在Sublime Text 2中)

我有很多自定义组合键序列。 我知道我可以让他们使用~/.XCompose并将输入方法切换到xim 。 但是,当我使用xim时,Sublime Text 2不接受任何组合键序列。 当我使用默认输入法时,它确实接受它们。 我想我刚刚为Sublime Text 2报告了这个bug。

使用默认输入法,我将~/.XCompose的内容添加到/usr/share/X11/locale/en_US.UTF-8/Compose但这并没有改变任何内容。 有没有什么方法可以让我的~/.XCompose的组合键序列在不依赖xim情况下工作?

我知道你在一年前问过这个问题,但是如果它曾经帮助过某些人,那么我可以通过以下方式启用自定义.XCompose添加:

 sudo apt-get install uim export "GTK_IM_MODULE=uim" (log out and in again) 

uim是一种输入方法,它遵循撰写文件添加,但也启用xim中不可用的function,例如Ctrl+Shift+U输入hexUnicode字符ID。

如果他还需要解决方案,这可能适用于OP的情况,我不知道。

@coteyr所说的实际上是不正确的。 Sublime Text使用标准的GTK输入法API,但是它不正确。


我做了一个修复Sublime Text 的软件包 。 您可以在我的博客文章中找到有关错误和我的解决方法的所有详细信息,但这里是安装的快速概述:

  1. 通过执行以下命令将sublime-imethod-fix imethod sublime-imethod-fix -PPA添加到APT源:

     sudo add-apt-repository ppa:whitequark/sublime-imethod-fix 
  2. 安装与您的Sublime Text版本对应的错误修复程序包:

    • 对于ST2中的XCompose支持:

       sudo apt-get install libsublime-text-2-xim-xcompose 
    • 对于ST3中的XCompose支持:

       sudo apt-get install libsublime-text-3-xim-xcompose 
  3. 重新启动Sublime Text(如果它正在运行)。 撰写序列现在应该可以正常工作。

这是一个非常随机的猜测,但我认为这是因为Sublime Text正在使用不同的小部件库,并且没有为xim输入设置。

您可以尝试(如果您还没有)在此链接上设置持久性配置

如果这不起作用,你可以随时破解IM支持。

这篇文章应该有所帮助。

两者都非常技术性,两者都意味着让你的工作有点偏离。

这是Sublime Text 2的一种解决方法。 通过Package Control或手动安装此软件包 :

 cd ~/.config/sublime-text-2/Packages git clone https://github.com/xgenvn/InputHelper.git 

重新启动Sublime后,您可以使用Ctrl + Shift + Z访问组合键序列的输入窗口。 按Enter键将序列插入光标位置。

Interesting Posts