问题描述
我正在为自定义语言构建自定义语言插件。我想为此语言添加一些实时模板,但新语言未显示在“更改所选模板的上下文类型”菜单中的可用上下文列表中。
插件已经有一个 plugin.xml 和你常用的语言相关的扩展:
<annotator>
、<fileType>
、<lang.parserDeFinition>
、<lang.SyntaxHighlighterFactory>
等。我是否缺少相关扩展名?
簿记:这个问题was already asked 4 years ago。但是给出的答案并没有解决我的问题,我没有足够的声誉来发表评论或要求澄清。
解决方法
看起来插件需要实现一个 com.intellij.codeInsight.template.TemplateContextType
,然后将该实现注册为一个 <liveTemplateContext>
。
本文档提供了有用的详细信息:https://plugins.jetbrains.com/docs/intellij/template-support.html#implement-templatecontexttype