淺談如何配置Eclipse支持Perl腳本開發(fā)
本文和大家重點(diǎn)學(xué)習(xí)一下如何配置Eclipse支持Perl腳本開發(fā),EPIC(EclipsePerlIntegration)是一個(gè)基于Eclipse平臺(tái)的開源Perl集成開發(fā)環(huán)境。其支持的功能有語法高亮、語法檢查、代碼提示、Perldoc支持、模版、Perl調(diào)試器和正則表達(dá)式插件等。
淺談配置Eclipse支持Perl腳本開發(fā)
本文將介紹如何配置Eclipse支持Perl腳本開發(fā),這里推薦大家以核心Perl發(fā)布的慣例形式來組織你的工程。
1Installation
EPIC(EclipsePerlIntegration)是一個(gè)基于Eclipse平臺(tái)的開源Perl集成開發(fā)環(huán)境。其支持的功能有語法高亮、語法檢查、代碼提示、Perldoc支持、模版、Perl調(diào)試器和正則表達(dá)式插件等。
在安裝EPIC之前需要安裝Eclipse3.1以上版本,此外還需要安裝Perl解釋器(Unix和Linux平臺(tái)通常會(huì)缺省安裝Perl,Windows平臺(tái)上可以安裝ActivePerl,下載地址www.activestate.com)。
可以通過EclipseUpdateManager來安裝EPIC。選擇菜單Help->SoftwareandUpdates->FindandInstall,在彈出的Install/Update對(duì)話框中選擇Searchfornewfeaturestoinstall然后單擊下一步,在彈出的Install對(duì)話框中單擊NewRemoteSite,在彈出的對(duì)話框中輸入Name(例如EPIC)和URL(http://e-p-i-c.sf.net/updates)然后單擊確定。接下來在Install對(duì)話框中選中剛才新建的Site,單擊完成。按照向?qū)У闹甘就瓿珊罄m(xù)的過程,忽略途中提示的未經(jīng)簽名的警告。重啟Eclipse后,EPIC應(yīng)該已經(jīng)安裝完畢了。
如果要暫時(shí)禁用或者卸載EPIC,選擇菜單Help->SoftwareandUpdates->ManageConfiguration,展開彈出對(duì)話框左側(cè)的樹控件,選中當(dāng)前版本的EPIC并單擊右鍵,在彈出菜單中選擇禁用或者卸載。
2SettingUpPreferences
選擇菜單Window->Preferences,在彈出的Preferences對(duì)話框左側(cè)的樹控件中選擇PerlEPIC以打開PerlEPICGeneralPreferences頁。這個(gè)頁中包含了Perl解釋器的路徑、解釋器的類型以及其他選項(xiàng)等。
關(guān)于解釋器的類型,除了standard之外,還可以選擇Cygwin。如果選擇Cygwin,那么@INC數(shù)組的內(nèi)容會(huì)有所變化。至于@INC數(shù)組,當(dāng)使用useModuleName來裝載模塊時(shí),Perl會(huì)在@INC數(shù)組中列出的每一個(gè)目錄中查找模塊。因?yàn)閡se是在編譯時(shí)裝載模塊,所以任何對(duì)@INC的修改都需要在編譯時(shí)發(fā)生??梢酝ㄟ^BEGIN塊在編譯時(shí)向@INC中添加值,例如BEGIN{push@INC,‘/path’}。@INC通常包含(假設(shè)Perl安裝在/perl):/perl/lib/perl/site/lib.。核心模塊是安裝在”perl/lib”目錄中,非核心模塊安裝在”perl/site/lib”目錄中,”.”這個(gè)目錄表示當(dāng)前的工作目錄。在Eclipse中選中Perl工程,選擇Project->Properties,在彈出的對(duì)話框中選擇PerlIncludePath,然后就可以向@INC中添加項(xiàng)目。如果沒有指定絕對(duì)路徑,那么這個(gè)路徑是相對(duì)于工程目錄的??梢允褂脴?biāo)準(zhǔn)的Eclipse變量,例如${project_loc}。
關(guān)于調(diào)試器相關(guān)的設(shè)置有以下兩個(gè):
◆Enabledebuggerconsole。這個(gè)選擇只是在你希望調(diào)試EPIC自身的時(shí)候有用,在其它情況下不要使用。在調(diào)試的時(shí)候,一個(gè)特殊的控制臺(tái)(單擊DebugView中的perl–d項(xiàng)目以顯示此控制臺(tái))會(huì)顯示EPIC和后臺(tái)的Perl調(diào)試器之間的通信內(nèi)容。
◆Suspenddebuggeratfirststatement。此項(xiàng)目缺省是選中的,選中它會(huì)導(dǎo)致調(diào)試器在Perl腳本的開始處停止,而不論該處是否有斷點(diǎn)。
如果不安裝PadWalker模塊也是可以使用調(diào)試器的,但是在這種情況下localvariables不會(huì)被顯示。可以從CPAN上下載PadWalker的最近版本并進(jìn)行安裝,例如使用Perl安裝中附帶的安裝管理器(ActiveState附帶的是PerlPackageManager)進(jìn)行安裝。
EPIC在進(jìn)行語法檢查時(shí)如果發(fā)現(xiàn)語法錯(cuò)誤,那么會(huì)顯示錯(cuò)誤或警告圖標(biāo)。如果右鍵單擊該圖標(biāo),并在彈出菜單中選擇ExplainErrors/Warnings,那么在ExplainErrors/Warningsview中會(huì)顯示具體的錯(cuò)誤或警告信息。
如果安裝了ActivePerl,那么會(huì)同時(shí)安裝Perldoc。通過Perldoc可以查找相關(guān)的幫助文檔,例如在命令行上輸入Perldoc-fuse可以查看use的用法。如果在程序中選擇部分文本并單擊右鍵,并在彈出菜單中選擇Perldoc(如果沒有任何選中,那么會(huì)彈出一個(gè)輸入對(duì)話框),那么在PerldocView中會(huì)顯示查找到的幫助文檔。
在ContentAssistPreference頁中可以指定代碼提示的觸發(fā)字符,通常不需要對(duì)其進(jìn)行修改,只要取消選中InspectVariables即可關(guān)閉此功能。需要注意的是:目前ContentAssist支持使用箭頭操作符的方法調(diào)用,例如:$smtp=Net::SMTP->new();
$smtp->[contentassist]不支持間接對(duì)象的方法調(diào)用,例如:
$smtp=newNet::SMTP;$smtp->[nocontentassist]在TemplatesPreference頁中可以創(chuàng)建、編輯或者刪除模版。例如在NewTemplate對(duì)話框的Name文本框中輸入for,在Pattern中輸入for(${var}=0;${var}<${max};${var}++){}并單擊確定就新建了一個(gè)新的模版。在編寫程序時(shí),輸入for并按下Alt+/之后(可以通過Window->Preferences->General->Keys配置),之前定義的模版會(huì)被插入到代碼中。按下TAB鍵可以切換模版中的用戶自定義變量(例如${var}和${max})。
在TaskTagsPreference頁中可以指定一系列用來在注釋中作為任務(wù)標(biāo)記的關(guān)鍵字,缺省有TODO和TASK;EPIC使用PerlTidy來格式化源碼,SourceFormatterPreference頁用來指定PerlTidy的命令行參數(shù)。
3PerlProject
推薦以核心Perl發(fā)布的慣例形式來組織你的工程:
將你自己的模塊保存在工程的某個(gè)子目錄中,例如在工程根目錄下建立一個(gè)lib目錄,用來保存所有*.pm文件。并將這個(gè)子目錄添加到@INC中。
將包名映射成子目錄名,例如將Foo::Bar包中的代碼保存在lib/Foo/Bar.pm文件中,并保證lib/Foo/Bar.pm中只包含F(xiàn)oo::Bar包中的代碼。
你自己的Perl腳本保存可以保存在工程中的任何目錄里,例如工程根目錄下的bin或者cgi-bin目錄。
在裝載一個(gè)包時(shí),不要使用require,而是使用use,例如useFoo::Bar。
4RegExpPlug-in
RegExp插件是個(gè)調(diào)試正則表達(dá)式的小工具,其打開方式如下:選擇菜單Window->ShowView->Other,然后在彈出的ShowView對(duì)話框中選擇EPIC節(jié)點(diǎn)下的RegExp。
如果在RegExp文本框中輸入正則表達(dá)式,在Matchtext文本框中輸入進(jìn)行匹配的文本,并單擊右側(cè)的ValidateRegExp按鈕。如果表達(dá)式和文本匹配,那么會(huì)顯示綠色圖標(biāo);否則顯示紅色圖標(biāo)。如果表達(dá)式包含小括號(hào),那么在Matchtext中與小括號(hào)部分匹配的文本會(huì)高亮顯示。
【編輯推薦】
- Eclipse平臺(tái)中Perl腳本開發(fā)
- Perl學(xué)習(xí)筆記----Perl命令行
- Perl數(shù)組和引用使用指導(dǎo)
- Perl基礎(chǔ) 解析Perl標(biāo)量和數(shù)組概念
- Perl模式匹配中的特殊字符用法指南