codecamp

IDEA 实时代码模板的介绍


实时代码模板的介绍
  • 上图 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
实时代码模板的介绍
  • 如上图标注所示,实时代码模板本质是用 XML 文件来保存的,所以传播自己的实时代码模板只要传播对应的文件即可。
  • IntelliJ IDEA 的实时代码模板保存在 ​/templates ​目录下,其他系统目录位置如下:(因为目录名在各个系统上是一致的,建议用硬盘搜索工具搜索即可)
  • Windows: ​C:\Users\youmeek\.IntelliJIdea2017.2\config
  • Linux: ​~/./config/templates
  • OS X: ​~/Library/Preferences/IdeaIC2017.2/templates
  • 调用常规的实时代码模板主要是通过两个快捷键:​Tab​ 和 ​Ctrl + J​。虽然 IntelliJ IDEA 支持修改此对应的快捷键,但是默认大家都是这样使用的,所以没有特别原因就不要去改。

    该两个快捷键的使用方法:如第一张 Gif 演示图所示,在输入 ​sys ​后按 ​Tab​ 键,即立即生成预设语句。如果按 ​Ctrl + J ​则会先提示与之匹配的实时代码模板介绍,然后还需按​ Enter​ 才可完成预设语句的生成。


    IDEA Git Flow 的介绍
    IDEA 自带变量参数介绍
    温馨提示
    下载编程狮App,免费阅读超1000+编程语言教程
    取消
    确定
    目录

    IDEA 简单Java 项目创建和项目配置文件

    IDEA 前端代码模板:Emmet

    IDEA 特殊代码模板:Postfix Completion

    IntelliJ IDEA 配合 Maven 的一些要点

    IntelliJ IDEA 推荐设置

    IDEA 的 Java 热部署插件 JRebel 安装及使用

    关闭

    MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }