無論是稱做Live Templates(IntelliJ-IDEA)或Abbreviations(NetBeans,jEdit),達成的結果都是相同的:輸入一個較短的關鍵字,再按特定按鍵(一般是Tab或空白鍵)後即擴展成較多的一連串文字。例如輸入sop再按Tab則擴展成System.out.println("");。原本以為IntelliJ-IDEA的作法已經很有彈性了,沒想到SuperAbbrevs更是方便。
要使用SuperAbbrevs當然是先由Plugin Manager安裝此插件,再把jEdit提供相同功能的Abbreviations的Space bar expands abbrevs給關閉,以免互有干擾。
使用縮寫擴展
預設的擴展按鍵是Tab鍵,例如輸入class再按Tab,編輯區會出現原本建立好的樣板文字,並且游標會移到定義好的位置讓使用者輸入,輸入完畢後再按Tab移到第二個定位處,繼續輸入再按Tab…重覆此步驟直到定位處皆擴展完畢;而要退回上一個欄位是按Shift+Tab。
請使用幾個縮寫關鍵字多試幾次就會清楚其操作方式了。另外,不同的檔案格式(jEdit稱為編輯模式)使用不同的縮寫設定,另外也可設定一組所有模式共用的Global縮寫。可惜不能讓幾個Mode共用同一組設定,例如JSP與Java無法共用而必須分別設定。
建立縮寫的方法
用Plugin Options再進入SuperAbbrevs新增縮寫是標準作法,但步驟多了點,其實我們可以用下列步驟以快速建立縮寫關鍵字及其內容:
- 先在編輯區裡輸入你要使用的縮寫關鍵字,例如:
class - 輸入好後按Shift+Tab,編修縮寫的對話窗就會出現供你編輯樣板內容
在樣板裡可以用$1、$2等來指定按Tab時的定位點,$1是第一個定位點,$3是第三個定位點,以此類推。這些定位定義能夠重覆多次,當相同的定義輸入後,別的同名的定義會自動更新成輸入的內容。例如我們設定一個縮寫itar (Iterate Array):
for (int $1=0; i < $2.length; $1++) {
$3 $4 = $2[i];
out.println("$2[" + $1 + "] = '" + $4 + "';");
$end
}
解釋上面的使用意義:
- 共定義了4個定位變數$1、$2、$3、$4
- $1 供使用者輸入計數變數名,我們可以將$1加上額外屬性,讓游標進入$1位置時顯示此額外文字:${1:i} 或 ${1:counter} 或 ${1:計數器變數},提示文字依需求自行指定
- $2 是陣列變數名稱
- $3 是變數$4的型別
- $4 是存放陣列一個元素的變數
- $end是最後游標停留的位置
加入提示文字後的內容如下:
for (int ${1:計數器}=0; i < ${2:陣列}.length; $1++) {
${3:型別} ${4:元素變數} = $2[i];
out.println("$2[" + $1 + "] = '" + $4 + "';");
$end
}
另外,還可以用${1=函數}的方法把輸入的文字做格式變化,例如下列產生get/set程式片段,其中的firstUp( )就是把輸入文字的第一個字元轉成大寫:
/**
* Getter function for the field $1
*/
public ${2:Type} get${1=firstUp(s)}() {
return ${1:field};
}
/**
* Setter function for the field $1
*/
public void set${1=firstUp(s)}($2 $1){
this.$1 = $1;
}
轉換用函數主要是放在C:Documents and Settings使用者.jeditSuperAbbrevsnabbrev_functions.bsh裡。
##
您可能也會有興趣的類似文章
- [jEdit] 方便的主控台插件Console (0則留言, 2007/10/28)
- [jEdit] 使用BeanShell巨集自行擴充功能 (0則留言, 2007/11/17)
- [jEdit] 系統畫面組成之說明 (0則留言, 2007/10/26)
- [jEdit] jEdit編輯器的初始設定與必裝插件 (3則留言, 2007/10/25)
- 文字編輯器印象與jEdit (6則留言, 2007/10/24)
- [jEdit] 指定啟動參數以提升運行效率 (2則留言, 2007/10/25)
- Java I18N國際化工具:JRC-Editor (0則留言, 2008/03/01)
- 新版iReport PDF顯示中文的設定 (0則留言, 2011/05/14)
- [iReport] Text Field中引用的欄位、變數與參數 (0則留言, 2005/04/16)
- [iReport] 兩個文字元件:Static Text與Text Field (0則留言, 2005/04/15)
- 直接使用TextArea編輯Blog與Wiki時必備的FireFox擴充 (1則留言, 2007/09/05)
- [DB] 給開發人員使用的Oracle SQL Developer (2則留言, 2007/07/28)
- [iReport] 奇偶列變換底色 (0則留言, 2005/11/29)
- [PSPad] PSPad的Scripting功能初探 (0則留言, 2006/06/09)
- [iReport] 元件顏色與快速鍵 (修正) (0則留言, 2005/04/06)















我也用 jedit , 主要寫 php, 這個功能不錯, 感謝您介紹.