不使用 xim 自定义撰写键序列(例如在 Sublime Text 2 中)

不使用 xim 自定义撰写键序列(例如在 Sublime Text 2 中)

我有相当多的自定义组合键序列。我知道我可以使用~/.XCompose并将输入法切换为 来让它们工作xim。但是,当我使用 时,Sublime Text 2 不接受任何组合键序列xim。当我使用默认输入法时,它会接受它们。我想我不久前就报告过 Sublime Text 2 的这个错误。

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

答案1

我知道您一年前就问过这个问题,但万一它能帮助到别人,以下是对我启用自定义.XCompose添加的方法:

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

uim 是一种尊重撰写文件附加内容的输入法,但也启用了 xim 中不可用的功能,例如Ctrl+Shift+U输入十六进制 Unicode 字符 ID。

这可能对 OP 的情况有用,如果他仍然需要解决方案,我不知道。

答案2

@coteyr 说了什么事实上,这是不正确的。Sublime Text 使用标准 GTK 输入法 API,但是这样做是错误的。


我做了一套修复了 Sublime Text。您可以在我的博客文章中找到有关该错误的所有详细信息以及我的解决方法,但以下是安装的简要概述:

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

    sudo add-apt-repository ppa:whitequark/sublime-imethod-fix
    
  2. 安装与你的 Sublime Text 版本相对应的 bugfix 包:

    • 对于 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(如果它正在运行)。Compose 序列现在应该可以正常工作。

答案3

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

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

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

这个帖子应该能够协助此事。

两者都是相当技术性的并且都意味着你需要付出一些努力才能实现。

答案4

以下是专门针对 Sublime Text 2 的解决方法。安装这个包,或者通过包控制或者手动:

cd ~/.config/sublime-text-2/Packages

git clone https://github.com/xgenvn/InputHelper.git

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

相关内容