gEdit: 打造簡潔,小巧的程式設計環境

工程師WWW發表於2013-11-06

使用gEdit搭配terminal來寫程式也有一段時間了,但一直當它是windows下的notepad,沒有好好熟悉下它,今天無意中發現原來gEdit也可以打造一個不錯的程式設計環境。這裡對相關的資料收集總結了一下,與大家共享。
gEdit是GNOME桌面環境中預設的文字編輯器,它簡單易用,對中文支援良好,支援多種字元編碼,同時具有開放的外掛支援特性。通過安裝外掛,作一些簡單的設定,gEdit就可以做為一個簡潔的程式設計環境。在我的ubuntu 8.04下,預設情況只安裝了gedit包,還有以下幾個外掛:

程式碼:
   Change case: Changes the case of selected text. 
   Document Statistics: Analyses the current document and reports the number of words, lines, characters and non-space characters in it. 
   External tools: Execute external commands and shell scripts. (More) 
   File Browser: A file browser plugin allowing to easily access your filesystem (includes remote mounts, creating new files/dirs, monitor dirs for changes, etc) (More) 
   Indent: Indents or un-indents selected lines. 
   Modelines: Emacs, Kate and Vim-style modelines support for gedit. 
   Python console: Interactive python console standing in the bottom panel. 
   Snippets: Insert often used pieces of text in a fast way. (More) 
   Sort: Sorts a document or selected text. 
   Spell: Checks the spelling of the current document. 
   Tag list: Provides a method to easily insert into a document commonly used tags/strings without having to type them. 
   Insert Date/Time: Inserts current date and time at the cursor position.

就程式設計而言,我覺得比較有用的有External tools(外部工具),通過它在選單上整合shell命令來編譯執行程式(由於不是互動性的shell,所以不便用於debug);File Browser(檔案瀏覽器),提供一個多檔案(工程)的檢視,還有可以編輯遠端檔案,雖然後者我很少用到;Snippets(片斷),提供一種程式碼模板以快速輸入,如我在snippets->C++下定義瞭如下for迴圈:
程式碼:
      for( $1 ; $2 ; ${3:++ix} )
      {
         $4
      }
      $0

並且其Tab觸發器設定為forlp+tab(表示輸入forlp,然後按下tab鍵)。之後在程式碼中每當我要輸入for迴圈,在C++的原始檔中,只需輸入forlp,然後按下tab鍵,forlp+tab就會自動擴充套件成上面的for迴圈,游標會處於$1處,此時可以直接輸入for的初始條件,然後按一下tab,游標會跳到$2處,再按tab,跳到$3處,如此類推。$3處設定了預設值++ix,如果直接按tab跳過,就為預設值++ix,如果輸入ix++之後再按tab跳到$4,預設值就會被ix++覆蓋。$0為此模組最後跳轉到的位置。
此外Tag list對編寫網頁等多tag原始檔比較有用,Indent方便我們對程式碼進行縮排與取消縮排。預設安裝好系統後,gedit能通過字尾正確識別到不同語言的原始碼,其語法高亮也做得比較好。但是要作為一個程式設計環境還有很多不方便的地方,此時就要安裝另外一些外掛來完善其功能了,首先我們安裝軟體源中gedit的plugin集,terminal下輸入:
程式碼:
sudo apt-get install gedit-plugins

  


安裝gedit-plugins。其中包括
程式碼:
     * Smart Spaces: Forget you're not using tabulations.   
<=== 智慧空格
     * Embedded Terminal: Embed a terminal in the bottom pane.   
<=== 內嵌的terminal,應該是最有用的一個外掛了,有了它,我們就可以不用上面External tools來編譯除錯程式啦,而且也不用心煩在gedit與terminal之間來回切換了,不足之處是貌似只能有一個terminal,有時不夠方便。
     * Show/Hide Tabbar: Add a menu entry to show/hide the tabbar.     
<=== 顯示/隱藏標籤欄
     * Join/Split Lines: Join several lines or split long ones         
<=== 合併/分割行
     * Color Picker: Pick a color from a dialog and insert its hexadecimal representation.  
<=== 拾色器
     * Draw Spaces: Draw Spaces and Tabs           
<=== 特別顯示空格與製表符
     * Session Saver: Save and restore your working sessions    
<=== 會話儲存  不過貌似不怎麼管用哦,>3<
     * Code comment: Comment out or uncomment a selected block of code.   
<=== 註釋程式碼,這下要註釋大片程式碼就方便了
     * Bracket Completion: Automatically adds closing brackets.     
<=== 自動的括號補全
     * Character Map: Insert special characters just by clicking on them.  
<=== 對特殊字符集對映,暫時對我而言沒什麼用

安裝好後將覺得有用的外掛啟用,不用的外掛禁用掉。比起notepad已經好用了很多,但是還不夠,要讓gEdit變得更方便,登入gEdit的外掛網站http://live.gnome.org/Gedit/Plugins,選擇你需要的外掛啦。這裡寫下個人覺得寫程式碼比較有用的幾個外掛,僅供參考:
1.Class Browser:顯示程式碼中類,函式,巨集等的大綱,類似於VC或eclipse的類檢視,支援多種語言,但這個外掛相對簡單,另一個Symbol Browser貌似更強大,不過暫時我找不到下載。
2.單詞自動補全,有多個word completion的小外掛,功能大同小異,都支援自動補全前文或所有開啟的檔案標籤中已經出現過的單詞,類似於visual assist或eclipse的自動補全功能,不足在於暫時不支援根據不同語言提供不同的關鍵字自動補全
3.Full screen: 在開啟檔案的情況下將gEdit全屏,偶爾會用下。
4.Open terminal here: 在當前資料夾下開啟新terminal,有了Embedded Terminal這個外掛比較雞肋了
5.session autosave: 記錄上次退出gEdit時開啟的檔案,下次開啟時重新開啟這些檔案,由於止面的Session Saver好像不能用,所以裝了這個。開啟多個相關檔案時比較有用,退出後下次就不用一個個檔案手動開啟啦
6.Code Formatter:自動格式化
7.snap open: 輸入檔名(支援正規表示式)查詢並開啟檔案
8.vigedit: 支援vi快捷鍵
9.Tabs Extend: 擴充套件的標籤功能支援
gEdit的外掛多用python來寫,我們可以根據自己的偏好來修改編寫,gEdit的外掛網站上也有很多的外掛,可以根據自己的需要酌情安裝。這些外掛都放在~/.gnome2/gedit/plugins/目錄下,如果沒有此目錄則建立一個,下載的外掛可以直接放到此目錄下。
很多人可能習慣去改變編輯器的配色(程式碼高亮,像定製vim或Emacs時常常做的那樣),使經常面對著電腦寫程式碼的眼睛沒那麼累,在gEdit的選單 [編輯]->[首選項]->[字型和顏色] 中,只有4種配色可選,此外通過GUI並不能具體定製配色。要DIY配色的話,我們可以從網上下載載配置檔案,新增配色,或自己重新寫一個。下面提供兩個配色檔案下載網站:
1. http://github.com/mig/gedit-themes/tree/master
2. http://live.gnome.org/GtkSourceView/StyleSchemes
gEdit使用的是gtksourceview,我們將字尾為.xml的檔案下載並放入
1. /usr/share/gtksourceview-2.0/styles <==== 所有使用者均可用
or 2. ~/.gnome2/gedit/styles <==== 只有你自己可用
重啟一次gedit,就可以在[編輯]->[首選項]->[字型和顏色]選擇喜歡的配色,也可以修改配色檔案來DIY自己的Style.再定義一種好看的字型,對行號,備份時間等簡單設定一下,整個編輯環境就相當個性,舒服啦。
雖然比不上vim,emacs的靈活,也比不上IDE的強大,但Gedit也是不錯的一種工具。即使搭配了眾多的外掛,gEdit還是相當輕量的編輯器,如你像我一樣,用不習慣vim或Emacs,又不喜歡那些慢悠悠的IDE,那就試下系統預設安裝的Gedit吧。附我的gEdit截圖:
附件:
my_gEdit.png

相關文章