IntelliJ IDEA中实现自定义注解中的语法高亮
· 2 min read
这篇文章是基于clojure
表达式实现更加灵活的数据验证的后续优化的文章.
主要目的是为了实现在IntelliJ IDEA
中实现自定义注解中clojure
表达式的语法高亮问题.
通过语法高亮, 可以更加直观的看到表达式的结构, 以及表达式中的错误. 从而更加便捷地实现表达式的编写.
要求
IntelliJ IDEA
中需要安装以下插件
cursive
(此插件是clojure
语言的支持插件, 并且支持clojure
表达式的语法高亮.)IntelliLang
(Make sure that the IntelliLang plugin is enabled before you start working with language injections.
)
解决方案
代码中增加@Language
注解, 如下所示
ClojureExpressionConstraint.kt
annotation class ClojureExpressionConstraint(
val message: String,
val groups: Array<KClass<*>> = [],
val payload: Array<KClass<out Payload>> = [],
@Language("clojure") // to enable syntax highlighting
val value: String,
)
效果展示
实现后的效果如下图所示
可以看到, 当鼠标悬浮到表达式引用的地方时, 会有相应的提示信息.