溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ubuntu sublime中文輸入問(wèn)題解決辦法

發(fā)布時(shí)間:2021-06-30 15:53:32 來(lái)源:億速云 閱讀:123 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了ubuntu sublime中文輸入問(wèn)題解決辦法,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

ubuntu sublime中文輸入問(wèn)題解決辦法

概述:ubuntu下面使用sublime寫代碼,不能輸入中文寫注釋都比較麻煩,所以就搜了一下如何輸入中文。寫篇博客記錄一下,測(cè)試成功。

測(cè)試環(huán)境

系統(tǒng):ubuntu 14.04lts

sublime text

安裝編譯環(huán)境

sudo apt-get install build-essential libgtk2.0-dev

編輯文件

1.在主目錄下(隨意)下創(chuàng)建sublime_imfix.c文件
2.將下面的代碼復(fù)制到文件下并保存

#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);
}

編譯共享庫(kù)

終端運(yùn)行下面的命令,需要在sublime_imfix.c文件所在的目錄下,會(huì)在該目錄下產(chǎn)生libsublime-imfix.so文件。

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

復(fù)制到sublime安裝目錄

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

其中/opt/sublime_text為sublime的安裝目錄。

修改subl文件

sudo gedit /usr/bin/subl//subl命令就是sublime終端啟動(dòng)的命令

將subl文件改為:

#!/bin/sh
SUBLIME_HOME="/opt/sublime_text"
export LD_PRELOAD=$SUBLIME_HOME/libsublime-imfix.so//需要寫在exec命令之前生效
exec /opt/sublime_text/sublime_text "$@"//subl命令能打開sublime的原因

修改sublime_text.desktop

sudo vim /usr/share/applications/sublime-text.desktop

修改下面三處啟動(dòng)時(shí)的設(shè)置:

[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=/usr/bin/subl %F    #這里修改執(zhí)行路徑為/usr/bin/subl,subl文件剛才已經(jīng)修改過(guò),大家應(yīng)該記得
Terminal=false
MimeType=text/plain;    
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;

[Desktop Action Window]
Name=New Window
Exec=/usr/bin/subl -n    #這里修改執(zhí)行路徑為/usr/bin/subl,subl文件剛才已經(jīng)修改過(guò),大家應(yīng)該記得
OnlyShowIn=Unity;

[Desktop Action Document]
Name=New File
Exec=/usr/bin/subl new_file  #這里修改執(zhí)行路徑為/usr/bin/subl,subl文件剛才已經(jīng)修改過(guò),大家應(yīng)該記得
OnlyShowIn=Unity;

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“ubuntu sublime中文輸入問(wèn)題解決辦法”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI