2008年3月6日 星期四

把Gedit打造為Linux下的Textmate



如果有用RoR來開發網站的朋友,一定都有聽過Textmate這套編輯器吧?這套Mac限定的編輯器,是RoR之父DHH也大力推崇的,不過Windows跟Linux的使用者就沒辦法使用這一套編輯器了。所以我在剛開始學RoR的時候,一直都是使用NetBeans 6.0來寫我的網站,雖然NetBeans也不錯啦,可是因為先天就是用Java寫的,實在是耗太多的資源了,所以這一個星期我一直在找有沒有其他編輯器可以取代NetBeans。

後來我在Windows的版本找到了一個叫做E的編輯器,從官方網站上的抬頭就很清楚的了解,E編輯器就是Textmate在Windows下的clone版。我自己也試用了一兩次,不過真的是太難用了 = =,如果有興趣的話就自己去試試看好了,這邊就不多做介紹了。如果你不是用Windows,而是用Gnome為桌面的Linux的話,就可以試試看我下面的教學,把Gedit變成Linux下的Textmate喔。

首先,必須先安裝一些plugins在Gedit上面,我看了這篇文章「Textmate-like Gedit in few steps」之後,加了下面這幾個plugins,大家就參考看看吧:

上面的gedit-plugins套件,如果你是灌debian或是ubuntu系列的話,就apt-get install gedit-plugins吧,要安裝上去才會有上面其中的那三個plugins,如果大家不會安裝Class Browser, Quick Highlight Mode和Rails Hot Commands的話,就下載plugins.tar.gz這個檔案,把檔案解壓縮到$HOME/.gnome2/gedit/plugins/就可以了。

再來就是安裝theme,如果你的Gedit版本是大於2.20.x的話,就把darkmate.xml下載到/usr/share/gtksourceview-2.0/styles/這個資料夾,如果版本小於2.20.x的話,就把另一個叫做syntax_highlighting.tar.gz的檔案下載到$HOME/.gconf/apps/gedit-2/preferences/syntax_highlighting/這個資料夾裡面,不過這個版本我沒使用過,所以有問題的話就回這篇文章「Textmate-like Gedit in few steps」看看吧。

再來就是安裝字型,有了一個漂亮的編輯器,當然要有字型啦。這邊用了一個叫做Consolas的字型,我找了很久才從微軟的網站上面找到,不過因為這個是Windows的執行檔,所以經過了一番波折之後才請cybersta安裝上去,然後再把裡面的四個字型copy給我。如果要下載的話,就下載Consolas.tar.gz這個壓縮檔吧。下載完成之後,把壓縮檔解壓縮到/usr/share/fonts/truetype/裡面,然後再執行sudo fc-cache -f -v,這是為了讓Gnome可以抓到剛安裝好的字型,這樣就可以了。

接下來還要讓Gedit可以正確的辨識出rb, rhtml, rjs這幾個檔案類型,參考了這篇「HOWTO: add support for .rhtml, .html.erb, .rjs, .rxml, .builder - Ubuntu Forums」和這篇「Ubuntu 7.10, rails, gedit and gtksourceview 2.0」,下載support_ror.tar.gz這個壓縮檔,把裡面所有的.lang檔案都copy到/usr/share/gtksourceview-2.0/language-specs/,然後把rhtml.xml拷貝到/usr/share/mime/packages,再來執行文章裡面1.1跟1.2的指令,這樣子Gedit就可以正確辨識出這幾個檔案類型了。

再來就是重頭戲啦,把Snippets所需要的檔案複製到/usr/share/gedit-2/plugins/snippets/,如果沒有這個檔案,那就發揮不出Gedit的強大功能了,這兩個檔案我是參考了RubyCodeTemplates還有tmbundles4win才做出來的,花了我兩三天的時間,真的是累翻了。

最後記得下載這個檔案,把這個檔案複製到/usr/lib/gedit-2/plugins/snippets/,如果沒有安裝這個檔案的話,在切換輸入法(Ctrl+Space)的時候,會呼叫Snippet的Popup Menu出來,導致切換輸入法跟Popup Menu的功能衝突。所以我把裡面的程式改了一下,呼叫Snippet的Popup Menu改用Ctrl+Enter,這樣子應該會比較好一點。







上面步驟都完成的話,就把上面這幾張圖片的選項打開吧,打開之後,回到Gedit主畫面再按F9和Ctrl+F9把Terminal和左邊的Pane打開,其他像是Rails Hot Commands和Quick Highlighting Mode的話,就自己試試如何使用吧,這樣也就大功告成啦!!!

參考資料:
Ruby on Rails
TextMate — The Missing Editor for Mac OS X
國家高速網路與計算中心 Ruby on Rails 推廣: Textmate 簡單介紹
Welcome to NetBeans
E Text Editor | The Power of Textmate on Windows
Gedit/Plugins - GNOME Live!
Textmate-like Gedit in few steps | Grigio
Class Browser
Quick Highlight Mode
Rails Hot Commands
文字片段(Snippets)
檔案瀏覽器窗格(File Browser)
Plugins - Class Browser, Quick Highlight Mode和Rails Hot Commands
Theme - Darkmate
Theme - syntax_highlighting.tar.gz
Consolas - Wikipedia
Download details: Consolas Font Pack
Fonts - Consolas
HOWTO: add support for .rhtml, .html.erb, .rjs, .rxml, .builder - Ubuntu Forums
Long’s Blog » Blog Archive » Ubuntu 7.10, rails, gedit and gtksourceview 2.0
辨識RoR檔案類型
Snippets - Ruby, Rhtml
NetBeans Wiki: RubyCodeTemplates
tmbundles4win - Google Code
中文輸入法修正檔 - Document.py

3 則留言:

pigy 提到...

成功改機!!!!

只是不太習慣的是,我的記事本不見了。囧

有沒有別的替代方案的說?

版主回覆:(03/07/2008 10:13:35 AM)


記事本不見!?

何解??

pigy 提到...

我說,這樣原本的gedit白色底的記事本就不見了,需要切換一番。

大體來說,還不錯用,tab切換相當順,哈哈。

btw, 上面有個連結錯了,Ubuntu 7.10, rails, gedit and gtksourceview 2.0,改一下。

版主回覆:(03/08/2008 04:01:54 AM)


喔喔 白色底的記事本......那就用quick highlighting來設定吧,按下ctrl+shift+h,然後選擇你要的檔案格式。

你可以試著安裝第一個連結寫的word completion,會有意想不到的結果 XDDD

pigy 提到...

感謝K大教學。

Btw,找到一個暈倒版,內建snipper,不錯用,安裝後改一下預設字型就可以。

Intype http://intype.info/home/index.php

跟e editor很像,不過免費的。

版主回覆:(03/08/2008 05:44:09 AM)


目前還在阿法耶,等過一陣子再試用看看好了。