在善用佳軟上看到一篇文章,介紹的是一款編輯器——SUBLIME。印象不錯(cuò),下下來試用了一下。功能之強(qiáng)大,簡(jiǎn)直讓我的Emacs也為之汗顏。EMACS,VIM也是跨平臺(tái)的。但是,就像Windows下很少有人用VIM或EMACS一樣,SUBLIME或許會(huì)在WINDOWS下流行開來(雖然不會(huì)像EMACS和VIM在UNIX和LINUX上那樣的流行),或許MAC上也會(huì)有不少人用它,但它恐怕是無法在LINUX/UNIX上有多大成就。因?yàn)樗m然跨平臺(tái),但還是帶著太多WINDOWS的東西。而WINDOWS和LINUX/UNIX,是兩種完全不同的文化。開源文化不僅在于開放源代碼,更是一種自由的精神。在LINUX/UNIX上,你幾乎有無限的自由去做你想做的任何事,修改內(nèi)核,配置一個(gè)獨(dú)一無二的桌面,甚至完全不要桌面,發(fā)明一種新的編程語言,一種新的版權(quán)協(xié)議,義務(wù)翻譯英文文檔,報(bào)告程序bug或者自己修改別人程序的bug.有些事情或許再我們看來難以完成,或者只是一種奢望。但奢望總比安于所得強(qiáng)些,所謂技進(jìn)乎藝。唯有不斷地磨練自己的技術(shù),永無止境,才能達(dá)到藝的境界,才能讓技藝和自己的生活完美地融合在一起。而不是只會(huì)在情人節(jié)的時(shí)候沾沾自喜地用某種語言輸出一句“I love you"。
而LINUX/UNIX給我們提供了一個(gè)不斷追求技藝提高的平臺(tái)。這是一個(gè)高手云集的世界,你永遠(yuǎn)不敢說自己是最強(qiáng)者。在不斷的競(jìng)爭(zhēng)中,開源就像微軟所說“像癌癥一樣“不斷地迅猛發(fā)展。VIM和EMACS就是這種文化孕育出來的最為優(yōu)秀的產(chǎn)物之一。
為什么它們會(huì)被稱為神一級(jí)的編輯器?因?yàn)樽杂桑约皩?duì)技術(shù)的熱愛。一個(gè)安裝出來要好幾個(gè)G的virtual studio,在功能上完全比不上幾十兆的EMACS和VIM。因?yàn)镋MACS和VIM只需一些幾十K的插件,就能支持你所知道的任何語言。語法高亮,自動(dòng)補(bǔ)全,快捷鍵綁定,編譯,調(diào)試,項(xiàng)目構(gòu)建,源碼閱讀……。EMACS和VIM都是公開源碼的,你可以自由修改以滿足自己的需求,還可以自己寫插件,并免費(fèi)提供給別人,因?yàn)橐磺卸寂c利益無關(guān),有關(guān)的只是興趣,以及分享的快樂。在設(shè)計(jì)之處,EMACS和VIM就有無限擴(kuò)展的能力。在VIM里你可以很容易地執(zhí)行SHELL命令,或者調(diào)動(dòng)系統(tǒng)中任意的程序。在EMACS中,你可以很容易地?cái)U(kuò)展出普通編輯器所無法具有的功能。源碼控制,RSS,郵件客戶端,網(wǎng)頁瀏覽,閱讀PDF文件或者圖片,聽音樂,看電影,IRC聊天,記筆記(evernote),wiki,微博(twitter),甚至查看Google Map,畫圖,玩游戲,又或者管理系統(tǒng)中的文件……
EMACS和VIM是兩個(gè)極端。VIM是UNIX軟件設(shè)計(jì)的精髓的體現(xiàn):只做一件事,并且做到最好。EMACS則更像是LINUX的一種代表,豐富多彩,給人以無線可能。但有些東西是共通的:開源,還有人在與編輯器的接觸中人與編輯器的共同進(jìn)步。從某種程度上說,它們確實(shí)是神器。
而在WINDOW上,一切的軟件,WINDOWS本身,Virtual Studio,UltraEdit,NOTEPAD++,還有這個(gè)SUBLIME,呈現(xiàn)的完全是另一番景象。在這些軟件的作者眼里,他們的用戶都應(yīng)該是傻子,我給你什么,你就用什么。我把所有的功能都做出來,你為這些功能掏錢。在LINUX/UNIX上,軟件開發(fā)者開發(fā)出來的軟件也是他們自己喜歡用的。其實(shí)評(píng)判一個(gè)軟件的好壞很簡(jiǎn)單,那就是看他的作者會(huì)不會(huì)會(huì)用。LINUX在用LINUX,StallMan在用EMACS,微軟的開發(fā)人員在給LINUX報(bào)告BUG。那些WINDOWS上自以為是的程序員高高在上地看著他們開發(fā)的軟件的用戶,以為不開放源碼就能永遠(yuǎn)保持技術(shù)的領(lǐng)先。在用戶變得越來越懶的時(shí)候,自己也會(huì)越來越失去創(chuàng)新的活力。
SUBLIME是也是可擴(kuò)展的,但是和VIM與EMACS有根本的不同。對(duì)于一個(gè)不開源的軟件,不知道有多少人愿意為它寫插件。對(duì)于一個(gè)普通的用戶,他最多也只是會(huì)去看一眼那些看起來長(zhǎng)的要命的選項(xiàng)設(shè)定,然后心滿意足地去這個(gè)“優(yōu)秀”的軟件。對(duì)于VIMER和EMACSER則不然,They stay foolish,and they also stay hungry!。誰會(huì)滿意最開始的那個(gè)EMACS或VIM,在常年累月的“折騰”中,手中雖然仍然是一個(gè)不太完美的編輯器,但是,眼界和能力,已不是當(dāng)初的那個(gè)新手了。
EMACS和VIM還有另外一個(gè)很大的福利:SHELL和LISP。這更是普通編輯器所無法比擬的。有誰會(huì)在用SUBLIME的時(shí)候PYTHON編程也很快的提高呢?但是要想用好EMACS,你要熟練LISP,要想用好VIM,你要熟練SHELL,這是成為高手的必由之路。也沒有幾個(gè)人愿意避開。在LINUX/UNIX上,這么好的學(xué)習(xí)和鍛煉自己的機(jī)會(huì),誰舍得呢?