2018-08-30 学习笔记
我的csdn blog https://blog.csdn.net/liyuxin920221
继续上次学习内容 https://blog.csdn.net/liyuxin920221/article/details/82154342
发现简书这里粘贴图片更方便,所及果断选择简书了
继续
[实时代码模板的使用](http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/live-templates-introduce.html)
xvii-a-live-templates-introduce-1.gif
- 上图 Gif 演示为最好的介绍
Live Templates
。- 实时代码模板需要字符串前缀,如 Gif 演示中,在输入
sys
后生成一段输出语句,其中sys
前缀是我自己设置的。- 实时代码模板支持变量参数设置,如 Gif 演示中,在输入
temp1
的时候,后面自动也生成了一个temp1
,这是因为两者的变量名是一致的,所以我设置了一个变量值内容之后,相同变量值的内容也会跟着出现。- 实时代码模板支持最后位置的定位,如 Gif 演示中,在输入完
temp1
之后,按Enter
后自动跳转到语句末。虽然默认没有设置的时候也是在这个位置,但是我是通过设置来定位到此位置的。- 实时代码模板支持获取当前类名和当前方法名(本质是内置函数),如 Gif 演示中,在输入完
sys
生成输出语句中自动带有当前类名和方法名。- 综上效果:实时代码模板只是为了让我们更加高效的写一些固定模式的代码,以提高编码效率,同时也可以增加个性化。比如 Gif 演示中,我在开发中如果需要写输出的话,我个人习惯输出语句中前缀是自己的标记:横线和域名,以区分其他人输出,方便做全文搜索。
- 官网介绍
Live Templates
:https://www.jetbrains.com/idea/help/live-templates.html
- 实时代码模板,为了让我们更加高效的写一些固定模式的代码,以提高编码效率,同时也可以增加个性化。
使用例子
参考链接 https://blog.csdn.net/mhs624014469/article/details/76285258/
继续
调用常规的实时代码模板主要是通过两个快捷键:Tab 和 Ctrl + J。虽然 IntelliJ IDEA 支持修改此对应的快捷键,但是默认大家都是这样使用的,所以没有特别原因就不要去改。
该两个快捷键的使用方法:如第一张 Gif 演示图所示,在输入 sys 后按 Tab 键,即立即生成预设语句。如果按 Ctrl + J 则会先提示与之匹配的实时代码模板介绍,然后还需按 Enter 才可完成预设语句的生成。
自带变量参数介绍
在文章开头我们已经有提到 IntelliJ IDEA 实时代码模板是有变量参数设置的,其中 IntelliJ IDEA 自带了两个变量参数:
$END$
,表示最后都编辑完后光标所处的位置$SELECTION$
,表示设置环绕实时代码模板,环绕功能下面会模板专门进行介绍。- 除了上面两个变量参数外,其他一律都会自定义变量。
- 官网介绍:https://www.jetbrains.com/idea/help/live-template-variables.html
$END$
indicates the position of the cursor after the template is expanded.$SELECTION$
is used in surround templates and stands for the code fragment to be wrapped.
- 注意,仅此两个
实时代码模板的设置
IDEA 2018.2
如上图标注 1 所示,除了 IntelliJ IDEA 预设的模板之外,我们还可以创建新组和新实时代码模板,其中组是用来包含实时代码模板的。
如上图标注 2 所示,output 是组名,告诉开发者,这组里面实时代码模板都是用来做输出的。serr 表示实时代码模板输出 System.err 的简称,所以这个不是一个完整的单词,不需要读懂,只需要记忆。
如上图标注 3 所示,实时代码模板的内容,其中用到了预设的变量 。
如上图标注 4 所示,可设置该实时代码模板的试用范围,比如图上的 serr 这是 Java 代码,所以试用范围我们就应该只是 Java 文件上或是 JSP 这类文件上,设置在 HTML 或是 CSS 文件上就完全没有多大意义了。
如上图标注 5 所示,勾选了辅助的功能:Reformat according to style 对生成的代码进行格式化。
Shorten FQ names 表示缩写类的全称限定名。这个一般需要勾选,帮助你把模板里的全称限定名对应的类 import,然后使用的地方改成缩写。
- 单词 reformat,格式化,多次出现
变量参数和函数的介绍
- 如上图标注红圈所示,可以对编辑代码内容的变量。
- 如上图标注 1 所示,演示中变量名
$CLASS_NAME$
、$METHOD_NAME$
会自动输出当前类名和方法名是因为使用对应的函数className()
和methodName()
。- 如上图标注 2 所示,如上面介绍的,每个变量都是一次光标位置,但是演示中变量名
$CLASS_NAME$
、$METHOD_NAME$
没有进入,是因为勾选了Skip if defined
。- 如上图标注 3 所示,可以改变变量光标跳转时的顺序。
- 内置函数介绍:https://www.jetbrains.com/idea/help/live-template-variables.html
- 对于官网这些函数这里就不在赘述,官网有详细的介绍,如果你还看不懂,可以看 IntelliJ IDEA 已经预设各个实时代码模板,基本上常用的函数都有被引用过,你可以通过学习这些预设的实时代码模板来揣测其函数的用法。
- 模板编辑共分为五部分:
- Abbreviation(缩写) 也就是调用时的快捷键。
- Description(描述)。
- Template Text(模板内容):其中变量需用$$包含。
- Applicable(作用域),如图:
- Expand with(调出方式)。
环绕功能介绍
环绕功能介绍 环绕功能解释实时代码模板使用总结:
- 缩写-快捷键
- 描述,描述中用 来表示
- 别忘记使用
$END$
,勾选skip