sublime text 3怎麼在Ubuntu下支援中文輸入
下面由sublime教學專欄跟大家介紹sublime text 3怎麼在Ubuntu下支援中文輸入,希望對需要的朋友有幫助!
- 相關依賴軟體的安裝---sudo apt-get install build-essential libgtk2.0-dev
- 複製下面程式碼到sublime text 3中,並儲存為名為sublime_imfix.c的檔案
/* * sublime-imfix.c * Use LD_PRELOAD to interpose some function to fix sublime input method support for linux. * By Cjacker Huang <jianzhong.huang at i-soft.com.cn> * * * gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC * LD_PRELOAD=./libsublime-imfix.so sublime_text */ #include <gtk/gtk.h> #include <gdk/gdkx.h> typedef GdkSegment GdkRegionBox; struct _GdkRegion { long size; long numRects; GdkRegionBox *rects; GdkRegionBox extents; }; GtkIMContext *local_context; void gdk_region_get_clipbox (const GdkRegion *region, GdkRectangle *rectangle) { g_return_if_fail (region != NULL); g_return_if_fail (rectangle != NULL); rectangle->x = region->extents.x1; rectangle->y = region->extents.y1; rectangle->width = region->extents.x2 - region->extents.x1; rectangle->height = region->extents.y2 - region->extents.y1; GdkRectangle rect; rect.x = rectangle->x; rect.y = rectangle->y; rect.width = 0; rect.height = rectangle->height; //The caret width is 2; //Maybe sometimes we will make a mistake, but for most of the time, it should be the caret. if (rectangle->width == 2 && GTK_IS_IM_CONTEXT(local_context)) { gtk_im_context_set_cursor_location(local_context, rectangle); } } //this is needed, for example, if you input something in file dialog and return back the edit area //context will lost, so here we set it again. static GdkFilterReturn event_filter (GdkXEvent *xevent, GdkEvent *event, gpointer im_context) { XEvent *xev = (XEvent *)xevent; if (xev->type == KeyRelease && GTK_IS_IM_CONTEXT(im_context)) { GdkWindow *win = g_object_get_data(G_OBJECT(im_context), "window"); if (GDK_IS_WINDOW(win)) { gtk_im_context_set_client_window(im_context, win); } } return GDK_FILTER_CONTINUE; } 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); } if (!GDK_IS_WINDOW (window)) { return; } g_object_set_data(G_OBJECT(context), "window", window); 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); local_context = context; } gdk_window_add_filter (window, event_filter, context); }
- 在終端機找到檔案位置,將這個檔案編譯成共用函式庫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拷貝到sublime_text所在資料夾---sudo mv libsublime-fix .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啟動,就能在sublime中輸入中文了!
最後,為了方便我們直接啟動時,也能使用中文輸入,我們需要在終端指令開啟和修改檔案sublime_text.desktop的內容---sudo gedit /usr/share/applications/sublime_text.desktop
[Desktop Entry] Version=1.0 Type=Application Name=Sublime Text GenericName=Text Editor Comment=Sophisticated text editor for code,markup and prose Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text %F" Terminal=false MimeType=text/plain; Icon=sublime-text Categories=TextEditor;Development;Utility; StartupNotify=true Actions=Window;Document; X-Desktop-File-Install-Version=0.22 [Desktop Action Window] Name=New Window Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text -n" OnlyShowIn=Unity; [Desktop Action Document] Name=New File Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text --command new_file" OnlyShowIn=Unity;
將內容替換為上面程式碼內容,這樣,我們就大功告成了!當然,為了穩定,我們還是從終端啟動更好!
*註
因為我們會看到兩個圖標,其中一個啟動才是可以輸入中文的,另一個則還是不能輸入
以上是sublime text 3怎麼在Ubuntu下支援中文輸入的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

ubuntu系統常常遇到有的資料夾頂面有個鎖的形狀,這個檔案常常是無法進行編輯或移動,這是因為對這個檔案沒有可以編輯等的權限,所以我們要修改它的權限,就能去掉右下角的鎖,該怎麼操作呢?下面我們就來看看詳細的教學。 1.在上鎖的資料夾上右鍵--屬性。 2、選擇視窗中的權限選項。 3.把裡面都選擇為建立和刪除檔案。 4.接著選擇底部的更改包含文件的權限,裡面同樣都設定為創建和刪除文件,最後記得點擊右上角的更改。 5.如果還是沒有去掉上面的鎖,或是當面的選項出現灰色無法操作,可以在裡面右鍵--開啟終端。 6、使

如今,Ubuntu不允許其用戶打開終端機是一個非常普遍的問題。如果您收到類似的問題並且不知道下一步該怎麼做,請了解有關如何在Linux裝置上解決此「Ubuntu無法開啟終端」問題的五個修復程式。事不宜遲,讓我們深入探討導致它的原因及其可用的解決方案。為什麼Ubuntu打不開它上面的終端機?這主要發生在您安裝一些有缺陷的軟體或修改終端配置時。除此之外,與語言環境互動並破壞它們的新應用程式或遊戲也可能導致類似的問題。一些用戶在Ubuntu的活動選單中搜尋終端時報告修復了這個問題。這表明這個

ubuntu系統開始選單裡面列出了很多的軟體圖標,有很多不常用的圖標,想要刪除,該怎麼刪除呢?下面我們就來看看詳細的教學。 1.先進入ubuntu桌面,點選左邊面板下面的開始選單。 2、裡面可以找到一個文字編輯器圖標,我們要把它刪除了。 3.現在我們回到桌面直接滑鼠右鍵開啟終端。 4、使用指令開啟應用程式列表目錄。 sudonautilus/usr/share/applicationssudonautilus~/.local/share/applications5、在裡面找到對應的文字編輯器圖示。 6、接著直

在Ubuntu系統中,root使用者通常是停用狀態的。要啟動root用戶,可以使用passwd指令設定密碼,然後使用su-指令以root身分登入。根用戶是具有系統管理權限且不受限制的使用者。他擁有存取和修改檔案、使用者管理、軟體安裝和刪除,以及系統配置變更等權限。根用戶與一般用戶有著明顯的區別,根用戶擁有系統中最高的權限和更廣泛的控制權。根用戶可以執行重要的系統命令和編輯系統文件,而普通用戶則無法做到這一點。在本指南中,我將探討Ubuntu根用戶,如何以根用戶身份登錄,以及它與一般用戶的不同之處。注意

Ubuntu24.04LTS,代號「NobleNumbat」即將發布!如果你正在使用的是Ubuntu23.10這類非LTS版本,遲早需要考慮升級。對於那些使用Ubuntu20.04LTS或Ubuntu22.04LTS的用戶,是否升級值得深思。 Canonical已經宣布,Ubuntu24.04LTS將提供長達12年的更新支持,細分如下:作為LTS版本,它將有5年的常規維護和安全更新。如果訂閱UbuntuPro,還能享有額外5年的支援。目前,這個額外的支援期限已經延長至7年,這意味著你將獲得長達12

OBS是由世界各地的志願貢獻者在空閒時間開發的開源軟體。一款視訊直播錄製軟體,主要用於視訊的錄製、直播的創流。 Ubuntu/Mint的安裝請注意,OBSStudio在ChromeOS上無法完全運作,螢幕和視窗捕捉等功能不能使用。建議使用xserver-xorg1.18.4或更新的版本,以避免OBS中某些功能的潛在效能問題,如全螢幕投影機。 FFmpeg是必要的如果你沒有安裝FFmpeg(如果你不確定,那麼你可能沒有),你可以用以下命令得到它:sudoaptinstallffmpeg我這裡已經安裝有了

Ubuntu11.04起,新增了一個新功能,稱為全域選單,它是所有應用程式共享的常用功能表列(如上所示)。我們大多數人已被使用到具有自己的功能表列的每個應用程式視窗。 Unity桌面頂部面板上提供全域選單,無論應用程式視窗在哪裡。如果您的螢幕的右下角的應用程式視窗大小調整為小,則該應用程式的選單列仍在頂部面板上。如果不習慣,這可能會令人困惑和不舒服。本經驗主要參考《Linux就該這麼學》,如果您不喜歡新的全域選單,並希望將選單列移回各個應用程式窗口,我們將向您展示如何停用全域選單。 1、按Ctrl+Al

要把系統的鍵盤佈局改為美式鍵盤,ubuntu系統該怎麼修改呢?下面我們就來看看詳細的設定方法。 1.在桌面上右鍵,開啟openterminal,輸入指令。 2、只要輸入管理員密碼,依照類型選擇你的電腦。 3、選擇國家English(us),按tab選OK。 4.鍵盤佈局選擇English(us)代表是美國,圖二設定一個修飾按鍵。 5.再選擇一個按鍵組合起來以便啟動它的【altgr】功能,選no,則不用組合鍵,然後選yes,那麼即可把鍵盤佈局設定為English(us),就是美式鍵盤。
