[返回 打造全能的文本編輯器序列文章] 文本文件,是很重要的一種文件類(lèi)型,它有很多優(yōu)勢(shì),最重要的是它很小。在日常的學(xué)習(xí)與工作中,每個(gè)人都會(huì)或多或少要接觸文本文件,這樣,對(duì)文本文件進(jìn)行編輯就是很平常的事情了。現(xiàn)在文本編輯器可謂種類(lèi)繁多,魚(yú)龍混雜。各個(gè)編輯器有它自己的優(yōu)勢(shì),對(duì)編輯器的喜愛(ài)也因人而異。很普通的用戶(hù),或者說(shuō)初級(jí)用戶(hù),可能用到的文本編輯器會(huì)是Windows自帶的Notepad(記事本)。就我個(gè)人而言,曾經(jīng)有段時(shí)間也只是使用notepad。然而對(duì)于一個(gè)程序員,notepad是遠(yuǎn)遠(yuǎn)不能滿(mǎn)足要求的。大部分時(shí)候,也許程序員們使用的會(huì)是IDE,然而,IDE一般都比較龐大,占用資源也比較多。如果只是寫(xiě)一些簡(jiǎn)單的或者只是看看一些代碼,似乎沒(méi)有必要啟動(dòng)一個(gè)龐大的IDE,而notepad又沒(méi)法滿(mǎn)足要求,這個(gè)時(shí)候擁有一個(gè)好用、強(qiáng)大的文本編輯器就很重要了——這些文本編輯器一般都支持語(yǔ)法高亮等功能,方便閱讀程序與程序編寫(xiě)。
記得在初學(xué)JAVA程序設(shè)計(jì)時(shí),看網(wǎng)上的視頻,一上來(lái)不會(huì)是教你使用Eclipse之類(lèi)的IDE,而是使用UtralEdit、Editplus等之類(lèi)的文本編輯器。使用這些編輯器作為入門(mén)有很多好處:所有代碼基本都是手工輸入,對(duì)于初學(xué)很有好處,而不是利用IDE的代碼提示等完成的,初學(xué)者更容易理解來(lái)龍去脈,更好的入門(mén);這些編輯器一般都比較輕量級(jí),對(duì)于入門(mén)級(jí)教程,沒(méi)有必要使用龐大的IDE,使用普通文本編輯器就可以勝任了……
使用過(guò)Unix/Linux的用戶(hù),肯定都知道vi編輯器,似乎vi之于Unix/Linux如同notepad之于Windows。然而Vi與notepad的功能卻超越甚遠(yuǎn),更不用說(shuō)Vim了。
在武林大會(huì)開(kāi)始之前,首先介紹一下“當(dāng)世英雄人物”:
武林中的泰山北斗,人人敬仰,流傳于世,地位無(wú)人撼動(dòng)。Vi/Vim、Emacs就是文本編輯器中的泰山北斗。
Vim:前段時(shí)間花了不少時(shí)間系統(tǒng)地學(xué)習(xí)了Vim,功能確實(shí)十分強(qiáng)大,而且有眾多的插件可使用。然而,Vi/Vim的門(mén)檻比較高,很多人一開(kāi)始使用會(huì)很不習(xí)慣,繼而放棄使用。我在使用時(shí)也有這種感覺(jué),然而沒(méi)過(guò)多久就喜歡上了它的一些操作方式,比如:移動(dòng)光標(biāo)的方式,簡(jiǎn)潔的界面,經(jīng)典的黑底白字等?,F(xiàn)在我用的瀏覽器Firefox、Chrome都定義移動(dòng)光標(biāo)的快捷方式為Vim的方式,這樣手不用移開(kāi)鍵盤(pán)就很順手地在屏幕上跳動(dòng),很是方便;很多軟件,我也盡量使用快捷方式操作,隱藏菜單欄與工具欄,編程黑底白字等。由于功能強(qiáng)大,學(xué)習(xí)難度也大,需要長(zhǎng)期實(shí)踐才能熟練掌握,才能用起來(lái)很爽。用很多使用Vim的人的話說(shuō):Notepad等編輯器根本沒(méi)法用。然而作為一個(gè)程序員,很有必要至少掌握Vi/Vim的一些基本操作。如果你決定深入地學(xué)習(xí)Vi/Vim,在網(wǎng)上有很多相關(guān)的學(xué)習(xí)資料,而且它的官方幫助文檔很全、很詳細(xì),是學(xué)習(xí)的好資料。另外,在此推薦幾篇優(yōu)秀的博文供學(xué)習(xí):善用佳軟之《普通人的編輯利器——Vim》、Dieken之《程序員的編輯器——Vim》。
Emacs:對(duì)于Emacs,入門(mén)難度似乎更高,網(wǎng)上說(shuō)不少高級(jí)程序員很喜愛(ài)。我沒(méi)有接觸,一來(lái),不想花大量時(shí)間去學(xué),沒(méi)那么多精力;二來(lái),現(xiàn)用的文本編輯器已經(jīng)能夠滿(mǎn)足基本工作需要了。有興趣的朋友可以在網(wǎng)上收集資料學(xué)習(xí)。推薦一篇優(yōu)秀博文:王垠之《Emacs是一種信仰!世界最強(qiáng)編輯器介紹》。
jEdit:也許很多人聽(tīng)說(shuō)過(guò)甚至使用過(guò)Vi/Vim、Emacs,但是對(duì)于jEdit卻知之甚少。這段時(shí)間有使用過(guò)jEdit,開(kāi)始以為它和EditPlus等是一個(gè)數(shù)量級(jí)的,用了之后才發(fā)現(xiàn),該編輯器十分的靈活,功能當(dāng)然就相當(dāng)強(qiáng)大,個(gè)人覺(jué)得與Vim等是一個(gè)數(shù)量級(jí)的。因而我將其歸為“武林泰斗”。jEdit最大的優(yōu)勢(shì)是可以通過(guò)JAVA語(yǔ)言編寫(xiě)插件?,F(xiàn)在已經(jīng)有眾多jEdit插件可以使用(主頁(yè):http://www.jedit.org)。
一代宗師,深受特定領(lǐng)域人的愛(ài)戴和敬仰。
這些軟件有一個(gè)共同特點(diǎn):共享軟件,有一個(gè)試用期,過(guò)后需要支付一定的費(fèi)用。這些軟件功能也比較強(qiáng)大,可以代替Notepad,不過(guò)由于是共享軟件,使用有限制。當(dāng)然,網(wǎng)上有很多破解的。具體哪一個(gè)好,應(yīng)該說(shuō)是各有優(yōu)劣。似乎使用UltraEdit的人比較多,它的確是一款十分優(yōu)秀的編輯器。
對(duì)于EditPlus與EmEditor是兩款很好的軟件,Polaris現(xiàn)在就是兩者結(jié)合者使用。
注意,這些軟件都只能在Windows下使用。
雖然不如泰山北斗、一代宗師那樣聞名千里,然而實(shí)力卻也不差,可稱(chēng)之為高手,一般人無(wú)法與之較量。
這些軟件入門(mén)低,但功能強(qiáng),十分適合那些不想使用記事本的初級(jí)用戶(hù)。它們是記事本(Notepad)很好的替代品。
當(dāng)然還有很多來(lái)參加武林大會(huì)的人物,不過(guò)由于他們實(shí)在太一般,來(lái)一般也只是捧場(chǎng)、湊熱鬧而已,在此不一一列舉。
就像武林界沒(méi)有絕對(duì)的高手,文本編輯器一樣沒(méi)有最好的,只有最適合的。Emacs很強(qiáng)大,可是對(duì)一個(gè)很普通的用戶(hù),平常只是寫(xiě)寫(xiě)日記之類(lèi)的,對(duì)電腦知識(shí)了解也不多,學(xué)習(xí)Emacs是不可能的。所以,適合每個(gè)人的編輯器可能不一樣,我們應(yīng)該選擇一款自己喜歡的、使用起來(lái)很順手的編輯器使用,以求達(dá)到最高效率。我的建議是:
(1)普通初級(jí)用戶(hù),覺(jué)得Notepad太一般,不能滿(mǎn)足要求,也討厭其界面的,可以選擇使用Notepad++,Notepad2等,Polaris強(qiáng)烈建議使用EmEditor,至于原因,后續(xù)文章會(huì)給出;
(2)一般程序員,建議使用EditPlus、EmEditor、UtralEdit等。
如果你愿意學(xué)習(xí),可以深入學(xué)習(xí)jEdit、Vim甚至Emacs;
如果你是一個(gè)JAVA程序員,愿意學(xué)習(xí),推薦使用jEdit,因?yàn)樗亩ㄎ痪褪牵篜rogrammer's Text Editor,而且有很多插件可供使用,只要你愿意,甚至可以配置成類(lèi)似Eclipse那樣強(qiáng)大的IDE。
對(duì)于C/C++程序員,jEdit的支持也很好,不過(guò)如果愿意學(xué)習(xí),推薦使用Vim,網(wǎng)上眾多關(guān)于配置Vim開(kāi)發(fā)環(huán)境的文章大多都是針對(duì)C/C++語(yǔ)言的。
如果你是一個(gè)程序員,一般人應(yīng)該都會(huì)使用Eclipse之類(lèi)的IDE,不過(guò)這樣的IDE太龐大,很耗費(fèi)資源。
如果只是些一些測(cè)試性的代碼或閱讀一般性的代碼,還是建議用一般的文本編輯器,它們小巧且功能強(qiáng)大;
如果你不愿意配置,不想學(xué)那么多,在此強(qiáng)烈推薦UltraEdit、EditPlus和EmEditor,它們各有優(yōu)劣,在后續(xù)文章中,Polaris會(huì)詳細(xì)對(duì)比說(shuō)明。
眾多文本編輯器的比較可以參看維基百科關(guān)于《文本編輯器的比較》。另外,有興趣的朋友可以把眾多的軟件下下來(lái)試試,瀏覽一下這些軟件的樣子,并選擇一兩款作為自己長(zhǎng)期使用的編輯器。
聯(lián)系客服