当我使用某些类型的文件时,例如:Java文件,HTML文件或Jasmine Test文件,我可以使用Code > Generate
选项生成一些有用的代码片段,例如:
Code > Generate
允许我插入getter,setter,constructor等Code > Generate
允许我插入XML标记Code > Generate
允许我插入测试套装或单个测试用例的脚手架我想知道是否(以及如何)我可以添加自己的'发电机'。我知道我可以使用实时模板,但我喜欢Code > Generate
为我提供所有可用生成器的快速列表这一事实。
答案 0 :(得分:9)
是的,您可以通过编写IntelliJ插件并扩展此类来实现:
com.intellij.openapi.actionSystem.Action
如果您创建了一个intelliJ插件项目(只需谷歌intellij plugin development
以获取有关如何入门的信息),请点击alt-enter项目源代码树中的某个位置并选择Action
,您将获得一个对话框它允许您配置您的操作应该出现的位置。
您希望将其与已存在的其他操作相关联,例如在其下方。在您的情况下 - 查看名为GenerateGroup (Generate)
的菜单组。
在plugin.xml中以这种方式定义操作后,在沙箱中构建并运行插件。
现在,当您的操作被触发时,AnActionEvent
将被触发,其中包含对您需要的所有必要信息的引用(当前项目,文件,文件中的光标位置,psi树等)。
尝试将此工作推向目前为止,并回答任何具体问题。
祝你好运!