文档章节

ubuntu下解决sublime text3无法输中文问题

姚欣炜
 姚欣炜
发布于 2015/04/07 13:01
字数 345
阅读 3732
收藏 2
点赞 1
评论 2

一、系统已成功安装搜狗输入法

二、保存下面的代码到文件sublime_imfix.c(位于~目录)

#include <gtk/gtkimcontext.h>
	void gtk_im_context_set_client_window (GtkIMContext *context,
	          GdkWindow    *window)
	{
	  GtkIMContextClass *klass;
	  g_return_if_fail (GTK_IS_IM_CONTEXT (context));
	  klass = GTK_IM_CONTEXT_GET_CLASS (context);
	  if (klass->set_client_window)
	    klass->set_client_window (context, window);
	  g_object_set_data(G_OBJECT(context),"window",window);
	  if(!GDK_IS_WINDOW (window))
	    return;
	  int width = gdk_window_get_width(window);
	  int height = gdk_window_get_height(window);
	  if(width != 0 && height !=0)
	    gtk_im_context_focus_in(context);
	}

如果出现以下问题

则输入以下命令后再编译

sudo apt-get install libgtk2.0-dev

三、将上一步的代码编译成共享库libsublime-imfix.so,命令

gcc -shared -o libsublime-imfix.so sublime_imfix.c  `pkg-config --libs --cflags gtk+-2.0` -fPIC

四、将libsublime-imfix.so拷贝到sublime_text所在文件夹

sudo mv libsublime-imfix.so /opt/sublime_text/

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

sudo 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的中文输入

六、为了使用鼠标右键打开文件时能够使用中文输入,还需要修改文件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"


© 著作权归作者所有

共有 人打赏支持
姚欣炜
粉丝 4
博文 51
码字总数 33914
作品 0
其他
程序员
加载中

评论(2)

姚欣炜
姚欣炜

引用来自“shuaia”的评论

用右键打开有空格的文件试试。打不开额~将sh -c'换成 env 13
咦,你出现这个问题?我这个方法已经用了很久了都还行哦
shuaia
shuaia
用右键打开有空格的文件试试。打不开额~将sh -c'换成 env 13
Sublime Text 2/3 输入法(Fcitx)修复[Ubuntu(Debian)]

文章目录 主要目的 更新 注意 使用方法 主要目的 安装 Sublime Text 3 安装 Fcitx 输入法 + 皮肤 修复 Sublime Text 2/3’s 在 Ubuntu(Debian) 系统下的无法输入中文(CJK 字符)输入法的问题 ...

John ⋅ 06/15 ⋅ 0

Ubuntu,sublime的安装和配置中文输入

系统:Ubuntu 16.04 输入法:fcitx 拼音五笔 官网下载页: 安装 本想添加软件源到apt ,但是sublime的网站貌似被墙了。添加不成功。老是链接失败。只好下载安装包,自己手动安装了。 官网的安...

ol_O_O_lo ⋅ 05/17 ⋅ 0

linux 系统下安装sublime

首先在linux 下需要下载一个sublime的安装包,,,这里给大家提供一个下载地址:https://www.sublimetext.com/3 , 这里安装的是linux版本的sublime,所以必然是选择linux repos ,选择一个6...

上官_9b5e ⋅ 06/02 ⋅ 0

Sublime-Text3 Python环境的配置

Sublime-Text3 Python环境的配置 01.前言 本文主要是在Sublime-Text3的安装与使用的基础上,介绍如何在window10上配置Python的开发环境。使用Sublime-Text书写Python代码是一个非常不错的选择...

meiqi0538 ⋅ 05/05 ⋅ 0

Sublime-Text3 的安装与使用

Sublime-Text3 的安装与使用 Sublime-Text3 的安装与使用 01.Sublime-Text3介绍 Sublime-Text 是一个比较强大的代码,文本编辑器。它的强大之处可以总结以下: 1.可扩充性:你可以根据自己的需...

meiqi0538 ⋅ 05/03 ⋅ 0

【防衰老教程】-三种预处理器之px2rem转换

虽然rem这个单位,浏览器支持的还不是太好,但是手机端上基本时没问题,下面主要针对三种常见的css预处理器,做个px2rem使用方法总结: 一、sass预处理器 二、less预处理器 四、cssrem插件 ...

Weijue ⋅ 05/26 ⋅ 0

Sublime Text 3.1发布! 如何在Ubuntu 18.04中安装

Sublime Text 3.1发布! 如何在Ubuntu 18.04中安装 IMCN 20分钟前暂无评论 阅读 9 次 Sublime Text源代码编辑器3.1几天前发布,对DPI支持进行了大量改进。 Sublime Text 3.1发布亮点: Wind...

IMCN ⋅ 05/12 ⋅ 0

SublimeText3 配置lua开发环境傻瓜式教学

第一步:下载安装 主要下载vs编辑器再下载lua的源码。利用源码借助vs生成动态链接库 VS2015 Community:http://www.ithome.com/html/win10/164028.htm Sublime Text3:http://www.sublimetex...

m0_37335203 ⋅ 04/11 ⋅ 0

8款实用Sublime text 3插件推荐

Sublime Text作为一个尽为人知的代码编辑器,其优点不用赘述。界面整洁美观、文本功能强大,且运行速度极快,非常适合编写代码,写文章做笔记。Sublime Text还支持Mac、Windows和Linux各大平...

slagga ⋅ 04/16 ⋅ 0

年薪20万Python工程师进阶(1):Python 资源 + 经典练手项目

Python 越来越火爆,最近自己也在学习。整理下一些 Python 资料,和练手的项目。希望对你学习 Python 有所帮助。 1、入门阶段 1 Python 官网 Python 官网 The Python Tutorialdocs.python.o...

程序员八阿哥 ⋅ 05/11 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 45分钟前 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

一起读书《深入浅出nodejs》-node模块机制

node 模块机制 前言 说到node,就不免得提到JavaScript。JavaScript自诞生以来,经历了工具类库、组件库、前端框架、前端应用的变迁。通过无数开发人员的努力,JavaScript不断被类聚和抽象,...

小草先森 ⋅ 昨天 ⋅ 0

Java桌球小游戏

其实算不上一个游戏,就是两张图片,不停的重画,改变ball图片的位置。一个左右直线碰撞的,一个有角度碰撞的。 左右直线碰撞 package com.bjsxt.test;import javax.swing.*;import j...

森林之下 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部