解决Ubuntu下Sublime Text 3无法输入中文

前言

sublime很好用,但是ubuntu下不能输入中文,这是一个很大的问题。不知道为什么开发着一直也不解决,好在还是有高手在,总能找到方法。网上方法很多,但是也很乱,现在我将自己的经验总结一下。

首先,我参考了好几篇文章,都是蛮不错的,先列出来:

sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题。可用这个的强烈推荐用这个
完美解决 Linux 下 Sublime Text 中文输入:讲的比较明白,也可用参考。
Ubuntu下Sublime Text 3解决无法输入中文的方法: 讲解的最清楚了,建议看看。

我的方法

1.下载我们需要的文件,打开终端,输入:

git clone https://github.com/lyfeyaj/sublime-text-imfix.git

2.将subl移动到/usr/bin/,并且将sublime-imfix.so移动到/opt/sublime_text/(sublime的安装目录)
终端输入:

cd ~/sublime-text-imfix
sudo cp ./lib/libsublime-imfix.so /opt/sublime_text/
sudo cp ./src/subl /usr/bin/

修改文件/usr/bin/subl的内容

sudo gedit /usr/bin/s将

!/bin/sh

exec /opt/sublime_text/sublime_text “$@”

修改为

!/bin/sh

LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text “$@”

此时,在命令中执行 subl 将可以使用搜狗for linux的中文输入
Ubuntu下Sublime Text 3解决无法输入中文的方法
3.用subl命令试试能不能启动sublime,如果成功启动的话,应该就可以输入中文了。
终端输入:

LD_PRELOAD=./libsublime-imfix.so subl

4.但是这样子只能用上述命令行启动才能输入中文,我们需要更简单的办法,我选择新建一个shell脚本,很简单,就一句话。
sublime新建文件输入:

#!/bin/bash
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so subl

然后将文件另存为sublime(注意:没有后缀),并且放到/home文件夹。

修改文件/usr/bin/subl的内容udo gedit /usr/bin/subl

#!/bin/sh

exec /opt/sublime_text/sublime_text "$@"

修改为

#!/bin/sh

LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"

此时,在命令中执行 subl 将可以使用搜狗for linux的中文输入
Ubuntu下Sublime Text 3解决无法输入中文的方法

5.至此,所有工作完成了。想要启动,直接终端输入:bash ~/sublime,就可以启动sublime,并且能够输入中文。

(自己实验)在主文件夹内的sublime文件里的scr文件里有个sublim text 的快捷方式,直接放在桌面就可以点击使用。

6.如果不需要输入中文,直接按以前的方式打开即可。建脚本文件的目的就是方便打开能输入中文的sublime。
说明

这只是一个权宜之计,完美的解决办法还没有,只能等sublime开发者更新。
网上所谓的完美解决,还是有问题,比如如果更改桌面快捷方式,那么sublime的Browse Packages功能不能使用,当然,还有其他问题。为了正常使用,我就没改。当然如果你中文输入比较多,还是建议修改桌面快捷方式,毕竟那会方便很多,具体怎么样,自己取舍。

另外,输入法不跟框,暂时无解啊。

为了使用鼠标右键打开文件时能够使用中文输入,还需要修改文件sublime_text.desktop的内容。

命令

sudo gedit /usr/share/applications/sublime_text.desktop

将[Desktop Entry]中的字符串

Exec=/opt/sublime_text/sublime_text %F

修改为

Exec=bash -c “LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text %F”

将[Desktop Action Window]中的字符串

Exec=/opt/sublime_text/sublime_text -n

修改为

Exec=bash -c “LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text -n”

将[Desktop Action Document]中的字符串

Exec=/opt/sublime_text/sublime_text –command new_file

修改为

Exec=bash -c “LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text –command new_file”

注意:

修改时请注意双引号”“,否则会导致不能打开带有空格文件名的文件。

此处仅修改了/usr/share/applications/sublime-text.desktop,但可以正常使用了。

opt/sublime_text/目录下的sublime-text.desktop可以修改,也可不修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值