您当前的位置: 首页 >  ide

IntelliJ IDEA for Mac 类和方法注释模板设置

发布时间:2021-03-31 13:41:44 ,浏览量:6

文章目录
  • 类注释模板设置
    • 使用 File and Code Templates
      • 方法 1:直接在编辑区编写模板代码
      • 方法 2:使用 parse 指令来引用注释模板
    • 使用 Live Templates
  • 方法注释模板设置
    • 注意事项
    • 解决注释模板无法获取参数名和返回值类型的问题
类注释模板设置 使用 File and Code Templates

File and Code Templates用来配置文件和代码模板,即文件在创建的时候自动会按文件模板生成代码注释。

按快捷键command + ,或者 点击 IntelliJ IDEA --> Preferences 打开偏好设置,如下图所示: 在这里插入图片描述 然后选择 Editor --> File and Code Templates --> Files --> Class,如下图所示: 在这里插入图片描述

方法 1:直接在编辑区编写模板代码

在这里插入图片描述 类注释模板代码如下(可以直接复制使用):

/**
 * @ClassNAME ${NAME}
 * @Description TODO
 * @Author ${USER}
 * @Date ${DATE} ${TIME}
 * @Version 1.0
 */ 

关于注释模板中的变量,你可以参考 Description 的相关说明: 在这里插入图片描述 设置好之后,每次创建类就会自动添加类注释啦!

注意:如果直接使用编辑区中的模板代码,那么 #parse 指令所引用的模板需要清空

方法 2:使用 parse 指令来引用注释模板

Using the #parse directive, you can include templates from the Includes tab, by specifying the full name of the desired template as a parameter in quotation marks. For example: #parse(“File Header.java”)

翻译:对想要使用的模板指定一个全名,将这个名称作为一个参数放在指令parse的双引号内,这样可以引用Includes tab中定义的模板

步骤 1:新建模板

在Includes tab中新建模板,根据需要对模板命名,如下图所示: 在这里插入图片描述 步骤 2:编写模板代码

在右侧的编辑区内编写注释模板代码,如下图所示:

在这里插入图片描述 步骤 3:使用parse指令来引用模板

在这里插入图片描述 注:默认是引用File Header模板,所以通常是在File Header编辑注释模板即可,然后通过parse("File Header.java")引用即可

使用 Live Templates

Live Templates 用来配置动态模板,可以在指定位置使用缩写字母自动生成注释。

步骤 1:创建动态模板

在这里插入图片描述 步骤 2:给模板命名,并设置扩展按键

先设置模板的扩展按键,然后采用缩写形式给模板命名,并对模板进行描述,如下图所示:

在这里插入图片描述

如上图所示的设置,输入cc + enter就可以生成注释

步骤 3:编写注释模板代码

在 Template text 编辑区编写注释模板代码

在这里插入图片描述 Live Template 的注释模板代码中的变量比较特别,需要在变量名称的首尾加上美元符号$,如下所示:

/**
 * @className $name$
 * @description TODO
 * @author $user$
 * @date $time$ $date$
 * @version 1.0
 */ 

步骤 4:对使用到的变量设置表达式

注释模板中引用了变量,但是变量的值如何获取,需要另外配置表达式才行。点击右侧Edit variables,打开设置窗口,如下图所示:

在这里插入图片描述

在这里插入图片描述 注:右边的Skip if defined建议全部打勾,这样有内容的注解就不会默认处于编辑状态(出现红色边框)。

在这里插入图片描述

步骤 5:设置模板的应用范围

将模板仅应用于 Java 在这里插入图片描述

在这里插入图片描述

方法注释模板设置

方法注释模板只能通过 Live Templates 来设置,设置流程同上述使用 Live Templates 设置类的注释模板一样。 在这里插入图片描述 配置模板中的自定义变量: 在这里插入图片描述

方法注释模板的代码如下:

/**
 * @description TODO
 * @methodName $name$
 * @param $param$
 * @return $return$
 * @author $user$
 * @date $time$ $date$
 */ 

或者

/**
  * 
  * @param $param$
  * @return $return$
  * @author $author$
  * @date $date$ $time$
  */ 
注意事项

正常配置的方法注释模板有问题,不能在方法外部正常使用,只能在方法内部正常使用,如下动态图所示: 在这里插入图片描述

但是 IDEA 默认的方法文档注释则可以在外部正常使用,可以获取方法参数、返回值类型、异常类型等信息;但是在方法内部则无效,如下动态图所示:

在这里插入图片描述

解决注释模板无法获取参数名和返回值类型的问题

正常配置的方法注释模板在使用时存在缺陷,在方法外部添加注释,根本无法获取到方法的参数、返回值类型等信息,只能在方法体内部使用。如果希望在方法外部使用注释,并且可以正常获取到方法的参数和返回值类型等信息,需要写 groovy 脚本代码。

注释模板必须按下面的格式写:

** * $end$
 $param$ * @return $return$ * @throws * @author $user$ * @date $date$ $time$ */ 

在这里插入图片描述 模板变量的配置如下: 在这里插入图片描述 对应的param变量的 groovy 的脚本代码如下:

// 推荐这段代码 groovyScript("def result = '';def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++){result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]}; return result == '' ? '* @param ' : result", methodParameters()) 格式化代码: groovyScript( " def result = ''; def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for (i = 0; i < params.size(); i++) { result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i] }; // 当变量result的值为空字符串时,这里有特别处理 return result == '' ? '* @param ' : result
", methodParameters() ) // 推荐这段代码 groovyScript("def result = ''; def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++){result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]}; return result", methodParameters()) 格式化: groovyScript( " def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) { result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i] }; // 变量result为空字符串时,这里并没有特别处理,具体也可以 return result
", methodParameters() ) 

对应的return变量的 groovy 的脚本代码如下:

// 返回值类型会显示类的全限定名 groovyScript("return (\"${_1}\" == 'void') || (\"${_1}\" == 'null') ? '' : \"${_1}\"", methodReturnType()) // 或者这段代码,返回值类型只显示类型的名称,例如:ArrayList groovyScript("def returnType = \"${_1}\"; def result ='';if(returnType=='null'||returnType=='void'){return '';}else{cls = returnType.split('<');for(i = 0; i < cls.size(); i++){temp = cls[i].tokenize('.');result += temp[temp.size() - 1] + ((i < cls.size() - 1) ? '<' : '');};return result + ' ';}", methodReturnType()); 

配置完成后,在方法的上面先输入/*,再按 Enter 键就会自动生成注释了。

关注
打赏
1688896170
查看更多评论

暂无认证

  • 6浏览

    0关注

    115984博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0481s