jEdit應(yīng)用指南【基礎(chǔ)篇】
作者:tedeyang
創(chuàng)作時(shí)間:2005年9月24日
序
jEdit是一個(gè)非常強(qiáng)大和靈活的文本編輯器.在java開發(fā)過(guò)程中,我一直使用eclipse,UltraEdit和jEdit.經(jīng)常在它們之間來(lái)回切換.因?yàn)?span lang="EN-US" style="FONT-FAMILY: Arial">ultraEdit太簡(jiǎn)單,而eclipse又太復(fù)雜,所以現(xiàn)在我要介紹的就是簡(jiǎn)單又復(fù)雜的jEdit,它將大大加速你的編程,我會(huì)將重點(diǎn)放在其內(nèi)嵌的Beanshell腳本上。
第一章 jEdit是Java編寫,強(qiáng)大,易用的程序員文本編輯器
以下部分介紹是我從其官方網(wǎng)站翻譯來(lái)的:
jEdit是一個(gè)成熟的,設(shè)計(jì)優(yōu)秀的程序員文本編輯器,已經(jīng)有了7年的開發(fā)歷史。在功能和易用性方面壓倒許多昂貴的開發(fā)工具時(shí),jEdit在GNU公用許可證(GPL)下發(fā)布成了開源軟件。
jEdit的核心主要由Slava Pestov開發(fā)完成,一支由世界各地的程序員組成的隊(duì)伍正在為jEdit開發(fā)插件(plugin)。
下面是jEdit的幾個(gè)特色:
- 用java編寫,所以它可以運(yùn)行在Mac OS X, OS/2, Unix, VMS 和Windows平臺(tái)上(山顛:非java程序員不推薦使用)
- 內(nèi)建宏語(yǔ)言;可擴(kuò)展的插件體系;目前已經(jīng)有了很多宏和插件.(山顛:內(nèi)建BeanShell腳本語(yǔ)言,通過(guò)插件可以支持其他腳本語(yǔ)言.這點(diǎn)是我之所以在這里費(fèi)力的原因 ^_^)
- 使用jEdit的插件管理器可以下載插件并安裝.(山顛:如果網(wǎng)絡(luò)狀況允許,這個(gè)功能確實(shí)非常好.不過(guò)建議想這么干的家伙去sf看看那些插件都是干什么的先,全裝了會(huì)影響性能)
- 提供超過(guò)130總編程語(yǔ)言的自動(dòng)縮進(jìn)和語(yǔ)法高亮.(山顛:很棒.據(jù)我所知,BeanShell的高亮顯示好象只有它支持)
- 支持UTF8和Unicode在內(nèi)的大量字符編碼
- 代碼折疊
- 自動(dòng)換行
- 極高的可配置性和可定制性
- 所有其他你希望在一個(gè)文本編輯器里找到的功能,不管是基礎(chǔ)性的還是高級(jí)的,你都可以在jEdit中找到.請(qǐng)查看全部功能清單
看看這些截圖,從直觀上感受一下jEdit:http://www.jedit.org/index.php?page=screenshots
是啊,千變?nèi)f化的jEdit。融合VIM,EditPlus,Emacs等編輯器的優(yōu)點(diǎn)于一身。請(qǐng)查看維基百科中的文本編輯器比較。在這個(gè)有些片面(顯然測(cè)試的是個(gè)陽(yáng)春版本,沒(méi)有加任何插件)的比較中,jEdit的表現(xiàn)仍然很是搶眼,全面超越它的只有Emacs(這個(gè)超級(jí)難用的程序)。作為一個(gè)Java程序員,我找遍了整個(gè)地球,在苦惱地承認(rèn)自己的智商還不足以輕松學(xué)好Emacs或Vim后欣喜地發(fā)現(xiàn)了:開源、強(qiáng)大、易用、Java編寫的jEdit正是我要的。
相關(guān):從其他編輯器轉(zhuǎn)移到j(luò)Edit http://community.jedit.org/cgi-bin/TWiki/view/Main/SwitchingToJEdit
第二章 jEdit的下載、安裝和插件配置
jEdit的官方主頁(yè)是www.jedit.org,目前最高版本是4.3,穩(wěn)定版本是4.2final。因?yàn)橛行┎寮€不支持4.3,因此建議下載jEdit4.2版本。jEdit還需要JDK1.4的支持
- 開源項(xiàng)目網(wǎng)址:http://sourceforge.net/projects/jedit/
- 官方網(wǎng)站下載頁(yè)面:http://www.jedit.org/index.php?page=download
- 用戶指南:http://jedit.org/users-guide/
- 安裝FAQ:http://www.jedit.org/FAQ/installation.html#id2877328
- 官方Wiki:http://community.jedit.org/cgi-bin/TWiki/view/Main/WebHome
Note:jEdit的各個(gè)版本都有平臺(tái)獨(dú)立的版本和相應(yīng)平臺(tái)的版本。不過(guò)針對(duì)windows用戶,jEdit還提供了一個(gè)啟動(dòng)器jEditLauncher。(目前官方已經(jīng)不提供啟動(dòng)器了,相關(guān)的討論見(jiàn):http://community.jedit.org/?q=node/view/1411,其實(shí)以前的啟動(dòng)程序還是能用的,下載我使用的啟動(dòng)程序包,釋放到jedit安裝目錄下就行了)
安裝完jEdit,下一步就是安裝插件。和Eclipse類似,jEdit的插件安裝也有兩種途徑:直接在jEdit中升級(jí)和手工下載插件包。建議選擇直接升級(jí)。
1. 直接升級(jí)。
按Plugins->Plugin Manager打開插件管理器,進(jìn)入Install,選擇你想裝的插件,點(diǎn)擊install就可以安裝了。注意,一次安裝不要選中太多插件,否則這個(gè)過(guò)程將持續(xù)很長(zhǎng)時(shí)間。安裝完成后可以在Plugins->Plugin Options中進(jìn)行配置。
2. 手工安裝
jEdit插件是個(gè)開源項(xiàng)目,見(jiàn)http://sourceforge.net/projects/jedit-plugins/
在官方主頁(yè)上也有這些插件的介紹:http://plugins.jedit.org/list.php。仔細(xì)的看看插件的說(shuō)明,確定你需要的。下載后把壓縮包后解壓縮到jEdit安裝目錄的jars目錄中(確保有jar文件在jars目錄下,如果你下載的是完全版的插件,jars目錄下還會(huì)有個(gè)包含源文件的同名文件夾),之后重啟jEdit。
Note:必備的幾個(gè)美化界面的插件是:Buffer Tabs(類似UltraEdit的標(biāo)簽)、Background(為View――編輯區(qū)添加背景圖片)、LookAndFeel(外觀選擇)。如果有需要,其他插件會(huì)在后續(xù)文章中按用途進(jìn)行介紹。
第三章 Beanshell腳本在jEdit的應(yīng)用
第一節(jié) 強(qiáng)大、簡(jiǎn)單、獨(dú)到的宏
在目前的Java IDE領(lǐng)域中,Eclipse是最好的。但jEdit并不是一個(gè)IDE,而是“程序員文本編輯器”。在文本編輯領(lǐng)域,jEdit擁有很多獨(dú)到的優(yōu)勢(shì),其中之一,也是作者最感興趣的部分,就是它的宏——其實(shí)就是Beanshell腳本。內(nèi)嵌的Beanshell引擎能夠直接訪問(wèn)jEdit的內(nèi)部對(duì)象和API,例如:你可以寫出這樣的宏命令:
buffer.undo(textArea); //撤銷當(dāng)前buffer的一個(gè)操作
Registers.paste(textArea,'$',false);//粘貼到當(dāng)前文本域
textArea.setSelectedText(" ");//將選定文本設(shè)為“ ”
textArea.goToNextLine(false);//移動(dòng)光標(biāo)到下一行
Registers.copy(textArea,'$');//copy
textArea.showWordCountDialog();//顯示對(duì)話框,統(tǒng)計(jì)字?jǐn)?shù)
textArea.backspace();//按一下后退鍵
buffer、textArea都是jEdit的內(nèi)部對(duì)象,Registers是jEdit中的寄存器類。可見(jiàn)Beanshell腳本具有直接訪問(wèn)jEdit內(nèi)部資源的能力,這使我們寫出一個(gè)高度自動(dòng)化的宏命令成為可能。
除了手工編寫宏文件(.bsh文件)外,jEdit也可以錄制宏。 錄制宏有三種途徑:
1.使用菜單:打開 Macros->Record Macro,進(jìn)行操作,完成時(shí)點(diǎn)擊stop Recording。
2.使用快捷鍵:開始錄制用c+m c+r,結(jié)束錄制用c+m c+s。(其中c+m c+r表示先按Ctrl+e,再按Ctrl+r,也可以按住Ctrl,然后再接著按m和r鍵)
3.使用action bar:Ctrl+Enter組合鍵打開action bar,輸入record,按Tab鍵,回車,就開始錄制宏。完成后打開action bar,輸入recording,按tab,回車。
Note:多種使用方式體現(xiàn)出jEdit強(qiáng)大的操作性;有關(guān)action bar的相關(guān)資料,請(qǐng)查看幫助。
Note:宏文件必須存放在jedit\macros\目錄或\Documents and Settings\uername\.jedit\macros目錄下,前者是系統(tǒng)宏目錄,后者是用戶宏目錄。
第二節(jié) 使用 jEdit中的Beanshell編寫宏
到了這一步,看來(lái)我們又要學(xué)一門新的語(yǔ)言了。“太麻煩了!”,你可能已經(jīng)決定放棄jEdit了。幸好,Beanshell是Java陣營(yíng)的腳本語(yǔ)言,我們基本上不需要什么精力就學(xué)會(huì)怎么在jEdit中使用它——當(dāng)然前提你必須熟悉Java,這就是我在前面推薦Java程序員使用jEdit的原因。
Beanshell 有腳本語(yǔ)言的特性,如弱類型、閉包等,但同時(shí)也完全兼容Java語(yǔ)法。為了簡(jiǎn)便起見(jiàn),我們這里就象java一樣來(lái)寫beanshell,只要記住一點(diǎn):它是解釋執(zhí)行的。更深入的學(xué)習(xí)推薦訪問(wèn)以下網(wǎng)站:
1. http://dev.csdn.net/develop/article/15/15090.shtm
2. http://www-128.ibm.com/developerworks/cn/java/l-beanshell/index.html
3. 官方網(wǎng)站:http://www.beanshell.org
4. 在線教程:http://www.beanshell.org/manual/contents.html
下面通過(guò)jEdit自帶的一個(gè)宏文件來(lái)看看宏是怎么“煉成”的。
實(shí)例:jEdit 4.2\macros\java\Java_File_Save.bsh
文件源代碼如下:中文部分是添加的注釋









































































































































































jEdit自帶的Macro就是很好的例子,配合幫助中的API,beanshell宏是很容易上手的。
一方面,寫文章費(fèi)時(shí)費(fèi)力,卻沒(méi)有成就感。
另一方面,因?yàn)殡娔X內(nèi)存不夠用后來(lái)逐漸不太用jEdit編程了。
加起來(lái)jEdit的使用時(shí)間肯定不如你,希望能和你交流交流。
msn:pilot@sina.com
這個(gè)macro可以用來(lái)遍歷目錄下的java文件進(jìn)行語(yǔ)法分析并查找jdbc語(yǔ)句中沒(méi)有關(guān)閉的ResultSet,Statement和Connection。
可惜硬盤意外損壞后這個(gè)macro丟失了。
我是一個(gè)JAVA初學(xué)者,“針對(duì)windows用戶,jEdit還提供了一個(gè)啟動(dòng)器jEditLauncher”。我費(fèi)了好大勁也沒(méi)找到適用于Windows的JEDIT。您能把您的jEditLauncher發(fā)一份給我嗎?或告訴我一個(gè)下載地址。謝謝!
這個(gè)是windows版本的exe安裝包,
直接安裝就可以,至于我提到的launcher,時(shí)過(guò)境遷,現(xiàn)在不需要了.