zoukankan      html  css  js  c++  java
  • idea live template高级知识, 进阶(给方法,类,js方法添加注释)(二)

    上一篇文章(http://www.cnblogs.com/xzjxylophone/p/6994488.html) 是在 groovyScript中直接添加的代码,这个看起来是简单,粗暴,麻烦和不美观.

    这一片文章是用groovyScript 调用文件的方式,直接上代码:

    添加一个 live template

    设置 abbreviation为:

    *

    Template text:

    **
     *$context$ 
     */

    edit variables 中设置context 为(mac系统):

    groovyScript("/Users/ceshi/Documents/goodgoodstudy/groovy/test.groovy", currentPackage(), className(), methodName(), jsMethodName(), methodParameters(), methodReturnType(), date("yyyy-MM-dd"), time("HH:mm:ss"))

    其中

    /Users/ceshi/Documents/goodgoodstudy/groovy/test.groovy

    是你脚本文件的路径.

    如果是windows的:

    需要添加是如下的:

    C:\user\username\test.groovy

    test.groovy的文件内容:

    def packageName = _1;
    def className = _2;
    def methodName = _3;
    def jsMethodName = _4;
    def methodParameters = _5;
    def methodReturnType = _6;
    def date = _7;
    def time = _8;
    
    // 固定的时间,默认的是false
    def confirmedDateTime = false;
    def confirmedDateTimeString = "2017-06-15 12:20:40";
    // 可以修改成自己的相关信息
    def author = "Rush.D.Xzj";
    def projectName = "yibasic";
    def version = "V1.0.0";
    def copyright = "2017 yizukeji Inc. All rights reserved.";
    
    
    def outputParams = "";
    for(param in methodParameters) {
        outputParams += " * @param " + param + " : 
    ";
    }
    def outputReturnType = "";
    if (methodReturnType != "void") {
        outputReturnType = " * @return : " + methodReturnType + "
    ";
    }
    
    def outputMethodName         = " * @Method : " + methodName + "
    ";
    def outputDesc                 = " * @Description : 
    ";
    def outputAuthor             = " * @author : " + author + "
    ";
    def outputDateTime            = " * @CreateDate : " + date + " " + time + "
    ";
    if (confirmedDateTime) {
        outputDateTime            = " * @CreateDate : " + confirmedDateTimeString + "
    ";
    }
    def outputProjectName        = " * @Project : " + projectName + "
    ";
    def outputPackageName        = " * @Package : " + packageName + "
    ";
    def outputClass                = " * @Class : " + className + "
    ";
    def outputVersion            = " * @version : " + version + "
    ";
    def outputClassOtherInfo    = " * @Copyright : " + copyright + "
    ";
    outputClassOtherInfo       += " * @Reviewed : " + "
    ";
    outputClassOtherInfo       += " * @UpateLog :    Name    Date    Reason/Contents
    ";
    outputClassOtherInfo       += " *             ---------------------------------------
    ";
    outputClassOtherInfo       += " *                ****    ****    **** 
    ";
    def outputJsMethodName        = " * @Method : " + jsMethodName + "
    ";
    def outputJsParams            = " * @param 
    ";
    def outputJsReturnType        = " * @return : 
    ";
    
    def result = "";
    
    result += "
    ";
    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;

    在 java文件/js文件中输入:

    /*

    后 按 tab键(tab键是默认的,可以更改成其他的)

    这样就可以了.

    剩下的问题:

    无法区分java中的 构造函数和普通函数还有类函数

    无法识别出 throws

    无法识别出 @Override

    无法识别出 js method 的参数

  • 相关阅读:
    matplotlib绘制常见统计图
    学习进度(14)
    hive的基本用法(2)
    hive的基本用法(1)
    进度日报表10
    进度日报表09
    进度日报表08
    进度日报表07
    第六周总结
    进度日报表06
  • 原文地址:https://www.cnblogs.com/xzjxylophone/p/7060035.html
Copyright © 2011-2022 走看看