IDEA using live template to add groovy script method, class, js method to add a comment (reprint)

Original link: http://www.cnblogs.com/townsend/p/8488283.html

IDEA添加Live Template:

File->Setting->Editor->Live Templates

 

 

Abbreviation:

*

Template text:

**
 *$context$ 
 */

 

Set context Content:

Edit variables ->Default value

groovyScript("C:\\IDEACommentLiveTemplate.groovy", currentPackage(), className(), methodName(), jsMethodName(), methodParameters(), methodReturnType(), date("yyyy-MM-dd"), time("HH:mm:ss"))

 

 

 

IDEACommentLiveTemplate.groovy script reads:

def packageName = _1;
def className = _2;
def methodName = _3;
def jsMethodName = _4;
def methodParameters = _5;
def methodReturnType = _6;
def date = _7;
def time = _8;

// fixed time, the default is false
def confirmedDateTime = false;
def confirmedDateTimeString = "2017-06-15 12:20:40";
// can be modified to your own information
def author = "yz";
def projectName = "";
def version = "V1.0.0";
def copyright = "yz All rights reserved.";


def outputParams = "";
for(param in methodParameters) {
    outputParams += " * @param " + param + " : \n";
}
def outputReturnType = "";
if (methodReturnType != "void") {
    outputReturnType = " * @return : " + methodReturnType + "\n";
}

def outputMethodName         = " * @Method : " + methodName + "\n";
def outputDesc                 = " * @Description : \n";
def outputAuthor             = " * @author : " + author + "\n";
def outputDateTime            = " * @CreateDate : " + date + " " + time + "\n";
if (confirmedDateTime) {
    outputDateTime            = " * @CreateDate : " + confirmedDateTimeString + "\n";
}
def outputProjectName        = " * @Project : " + projectName + "\n";
def outputPackageName        = " * @Package : " + packageName + "\n";
def outputClass                = " * @Class : " + className + "\n";
def outputVersion            = " * @version : " + version + "\n";
def outputClassOtherInfo    = " * @Copyright : " + copyright + "\n";
outputClassOtherInfo       += " * @Reviewed : " + "\n";
outputClassOtherInfo       += " * @UpateLog :    Name    Date    Reason/Contents\n";
outputClassOtherInfo       += " *             ---------------------------------------\n";
outputClassOtherInfo       += " *                ****    ****    **** \n";
def outputJsMethodName        = " * @Method : " + jsMethodName + "\n";
def outputJsParams            = " * @param \n";
def outputJsReturnType        = " * @return : \n";

def result = "";

result += "\n";
if (methodName) {
    result += outputMethodName;
    result += outputDesc;
    result += outputParams;
    result += outputReturnType;
    result += outputAuthor;
    result += outputDateTime;
} else if (jsMethodName) {
    result += outputJsMethodName;
    result += outputDesc;
    result += outputJsParams;
    result += outputJsReturnType;
    result += outputAuthor;
    result += outputDateTime;
} else {
    result += outputProjectName;
    result += outputPackageName;
    result += outputClass;
    result += outputDesc;
    result += outputAuthor;
    result += outputDateTime;
    result += outputVersion;
    result += outputClassOtherInfo;
}
result += " *";
return result;

 

Settings

 

Content Reprinted from: http: //www.cnblogs.com/xzjxylophone/p/7060035.html

Reproduced in: https: //www.cnblogs.com/townsend/p/8488283.html

Guess you like

Origin blog.csdn.net/weixin_30352191/article/details/94785510