idea原始的方法註釋模版太簡單了,維護不方便,加個模版可以提高一些效率,減少溝通成本,想配置的可以看下,非常簡單
1、Edit > Editor > Live Templates
2、點+號,新增一個Template Group,名字隨意
4、點+號,新增一個Live Template,Abbreviation填*,Description隨意填,Abbreviation標識用什麼字符纔可以觸發模版,*號比較符合寫註釋的習慣
5、Template text:直接把下面模版粘貼上,基本夠用了
*
*
* @author zhangsan
* @date $date$ $time$
* $VAR1$
* @return $return$
*/
6、點右邊的Edit variables設置變量,取的是$$裏的參數,VAR1和return,原封不動的粘貼就行了,網上的大多都不支持多參數動態獲取,自己把代碼升級了下,支持多參數動態生成,不喜歡的可以自己改改,就和改js一樣
VAR1:groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();if(params.size()<2){if(params.size()<1){result=''}else{result='@param ' + params[0]}}else{for(i = 0; i < params.size(); i++) {if(i==0){result+='@param '+params[i] + '\\n'}else if(i==(params.size()-1)){result+=' * @param '+params[i]}else{result+=' * @param '+params[i]+'\\n'}}};return result;", methodParameters());
return:groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split('<').toList(); for(i = 0; i < params.size(); i++) {if(i!=0){result+='<';}; def p1=params[i].split(',').toList(); for(i2 = 0; i2 < p1.size(); i2++) { def p2=p1[i2].split('\\\\.').toList(); result+=p2[p2.size()-1]; if(i2!=p1.size()-1){result+=','} } ; }; return result", methodReturnType())
7、修改右下角的Options,Expand with選擇Enter,選其他的也行,看習慣,這個就是觸發的時候用什麼按鍵,有人喜歡用Tab,我用的回車
8、觸發方式,方法上面一行輸入/**+Enter就行了,要是Abbreviation填其他的,比如abc,那就用/*abc+Enter,如果Options選的Tab,那就是/*abc+Tab
9、完事收工,這個功能超級超級強大,可以自己定義其他的東西,不僅僅是註釋,什麼模版都行,比如常用的sout,psvm,fori 。。。。。都是用這個寫的,有時間可以自己看看上面系統的模版,非常有意思的。
10、成品圖: