软件开发
APP开发公司
手机软件
苹果IOS开发
android安卓开发
会员系统
三级分销
网站建设
商城网站
小程序开发
微信公众号开发
联系电话:18842388900

在IDEA中添加自定义语言或文件类型

IntellliJ IDEA File Type
IntelliJ IDEA支持很多语言,如果该语言没有被IDEA支持,你还可以自行添加,虽然不能完全实现该语言的功能(如变量声明,导航等),
但是一些语言的基本特性都是有的,如高亮,关键字,括弧匹配,注释等。再配合一些模板功能,会更好提升效率。下面我们会详细说明。

添加自定义File Type
打开IDEA设置,选择File Types,然后新OA系统建一个File Type,接下来就是设置一些通用特性,如行注释,区块注释,括弧匹配等,根据
时间需要打开即可。

File Type的Keywords设置
File Type提供4个标签来定义4类keywords,这四类keywords在文件中的颜色各不相同,分别为蓝色、紫色、藏青色、橘红色。
如何理解这四种颜色在计算机语言中分别表示的意思,个人整理了一下,如下:
* 蓝色: 用于条件判断和语法关键字,如if、while、return、for、in等,语法关键字如public、int、boolean等
* 紫色:全局变量和保留变量,如$0, $1, $ARGV
* 藏青色:严谨的职业感,如空军的制服。这里我们将系统提供的函数统一标示为藏青色,不难理解,这些系统级别函数都是非常职业的。
* 橘红色:有利于导航,用于交通警示标志,如错误,异常,记录日志等。如果log.error、break、continue、exit等
当File Type还支持特定两种颜色,如下:
* 绿色:表示字符串,如”Hello World!”
* 灰色:注释
根据语言的特性,你将关关键字进行归类,就可以获取不一样的效果。顺便说一句,这些关键字都可以编辑器中实现代码提示。

File Template
File Template是创建文件的模板,依据该模板,可以创建各种文件,当然也包括特定语言的文件。你可以创建File Type特定类型的文件模板,
这样就会出现在“New”的子菜单下,创建也非常快捷。

live template
Live Template就是一小段snippet,然后定义一个简短名称来标示这段代码,接下来我们就可以简短的名称来引用这段代码。
假设语言类型现在为AWK,我定义下面这些live template:awk.fun, awk.rule, awk.if分别代表AWK中的自定义函数,AWK Rule和条件判断。
接下来在编辑器中输入 awk.rule 然后按下tab,就会被替换为AWK的真实rule 代码,这非常高效。同时live template支持代码提示,
如果你记不清这些live template,输入awk.,然后按下Ctrl+J就会进行提示,你选择即可。

当前File Type欠缺的功能
目前File Type还不支持语言通用的正则表达式、模糊匹配的关键字、文件类型图标等,如果这些特性加上,那将更便捷。

Language插件
当然如果我们能开发特定文件类型(语言)的插件,那么功能就更强大,如代码提示、导航、文件结构、inspection等。当然开发这些插件有一定的难度,
但是也并不是不可能。IDEA提供了很多小语言的plugin,而且功能不错,代码开源,我们参考一下,做相应的修改,可能就会满足我们的功能。
文档参考: http://confluence.jetbrains.net/display/IDEADEV/Developing+Custom+Language+Plugins+for+IntelliJ+IDEA

下图是我做的一个AWK File Type,截屏如下:

AWK in IntelliJ IDEA

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。