天天看點

解決Sublime Text 2在Ubuntu 14.04系統下不能輸入中文

Sublime Text 2在Ubuntu 14.04系統下的安裝

  1. 到Sublime Text 2官網下載下傳對應系統版本的tar.gz檔案

    注意: 64位系統也可以下載下傳32位的tar.gz檔案,而事實上,如果下載下傳64位的tar.gz檔案不能執行,換成32位的即可

  2. 解壓縮該tar.gz檔案

    tar zxvf Sublime\ Text\ 2.tar.gz

  3. 由于官網的目錄結構中包含空格(不知道他們怎麼想的), 做一些配置的時候,容易出錯,是以重命名該目錄

    mv Sublime\ Text\ 2 Sublime2

  4. 把重命名後的目錄移動到/opt目錄下

    sudo mv Sublime2 /opt/

  5. 在/usr/bin目錄下建立Sublime Text 2的軟連結,使其被加入到$PATH中

    cd /usr/bin

    sudo ln -s /opt/Sublime2/sublime_text sublime

  6. 建立到Unity Launcher的連結

    通過指令

    sudo sublime /usr/share/applications/sublime.desktop

    打開或建立sublime.desktop檔案

    拷貝以下内容到該檔案中

    [Desktop Entry]

    Version=2.0.1

    Name=Sublime Text 2

    # Only KDE 4 seems to use GenericName, so we reuse the KDE strings.

    # From Ubuntu’s language-pack-kde-XX-base packages, version 9.04-20090413.

    GenericName=Text Editor

    Exec=sublime

    Terminal=false

    Icon=/opt/Sublime2/Icon/48x48/sublime_text.png

    Type=Application

    Categories=TextEditor;IDE;Development

    X-Ayatana-Desktop-Shortcuts=NewWindow

    [NewWindow Shortcut Group]

    Name=New Window

    Exec=sublime -n

    TargetEnvironment=Unity

至此,Sublime Text 2可以在指令行和Unity Launcher中啟動了

此時,也是問題出現的地方,Sublime無法輸入中文,真是非常郁悶.

解決Sublime Text 2在Ubuntu 14.04系統下不能輸入中文

  1. 将一下代碼儲存到/home/$USER/sublime-fixim.c檔案中

    sublime-imfix.c

  2. 安裝C\C++編譯環境和gtk libgtk2.0-dev開發庫

    sudo apt-get install build-essential

    sudo apt-get install libgtk2.0-dev

  3. 進入到儲存sublime-fixim.c檔案的目錄/home/$USER/中,編譯共享庫

    gcc -shared -o libsublime-imfix.so sublime_imfix.c

    pkg-config --libs --cflags gtk+-2.0

    -fPIC
  4. 把編譯好的共享庫移動到$Sublime的目錄中去,也就是/opt/Sublime2

    mv libsublime-imfix.so /opt/Sublime2

  5. 在Terminal中輸入指令

    cd /opt/Sublime2

    LD_PRELOAD=./libsublime-imfix.so ./sublime_text

  6. 至此,Sublime Text2中已經可以輸入中文,但是需要更改 /usr/share/applications/sublime.desktop檔案,使其在Unity Launcher中也能啟動.

    是以删除sublime.desktop中的内容,把下面的代碼拷貝到sublime.desktop檔案中

    [Desktop Entry]

    Version=2.0.1

    Name=Sublime Text 2

    # Only KDE 4 seems to use GenericName, so we reuse the KDE strings.

    # From Ubuntu’s language-pack-kde-XX-base packages, version 9.04-20090413.

    GenericName=Text Editor

    Exec=bash -c ‘LD_PRELOAD=/opt/Sublime2/libsublime-imfix.so sublime’ %F

    Terminal=false

    Icon=/opt/Sublime2/Icon/48x48/sublime_text.png

    Type=Application

    Categories=TextEditor;IDE;Development

    X-Ayatana-Desktop-Shortcuts=NewWindow

    [NewWindow Shortcut Group]

    Name=New Window

    Exec=bash -c ‘LD_PRELOAD=/opt/Sublime2/libsublime-imfix.so sublime’ -n

    TargetEnvironment=Unity

DONE