intellij-idea - 添加自定义代码生成器

标签 intellij-idea webstorm intellij-plugin

当我处理某些类型的文件时,例如:Java 文件、HTML 文件或 Jasmine 测试文件,我可以使用 Code > Generate 生成一些有用的代码片段。选项,例如:

  • 如果我正在处理 Java 文件 Code > Generate允许我插入 getter、setter、构造函数等
  • 如果我正在处理 HTML 文件 Code > Generate允许我插入一个 XML 标签
  • 如果我使用 Jasmine 文本文件 Code > Generate允许我插入测试服或单个测试用例的脚手架

  • 我想知道是否(以及如何)我可以添加我自己的“生成器”。我知道我可以使用实时模板,但我喜欢 Code > Generate给我一个所有可用生成器的快速列表。

    最佳答案

    是的,您可以通过编写 IntelliJ 插件并扩展此类来实现:

    com.intellij.openapi.actionSystem.Action
    

    如果您创建了一个 intelliJ 插件项目(只需 google intellij plugin development 了解如何开始使用),在您的项目源代码树中的某处点击 alt-enter 并选择 Action ,您将看到一个对话框,您可以在其中配置操作的显示位置。

    您想将它与另一个已经存在的操作相关联,例如在它的正下方。在您的情况下 - 查看名为 GenerateGroup (Generate) 的菜单组.

    在 plugin.xml 中以这种方式定义您的操作后,在沙箱中构建并运行您的插件。

    现在,当您的操作被触发时,AnActionEvent将被触发,其中包含对您需要的所有必要信息的引用(当前项目、文件、文件中光标的位置、psi 树等)。

    到目前为止,请尝试使其正常工作,然后再提出任何具体问题。

    祝你好运!

    关于intellij-idea - 添加自定义代码生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18609637/

    相关文章:

    webstorm - 无法加载在 '@typescript-eslint' : Unexpected token '.eslintrc.cjs' 中声明的插件 '.'

    java - Intellij idea插件设置面板在idea 2016上停止工作

    python - 如何在 intellij 中调试 python 容器?

    javascript - 如何使用 WebStorm 中的内置 Web 服务器打开/调试当前文件?

    intellij-idea - 如何为 Intellij IDEA 配置 antlr4 插件

    web-services - java.lang.NoClassDefFoundError : javax/activation/DataSource on wsimport Intellij java 9

    debugging - 如何调试已部署的 Grails 应用程序

    Intellij 中的 JavaFX 和 Maven : JAVA_HOME set but "Unrecognized option --module-path" error persisting

    css - 如何向 IntelliJ 添加 Stylus "@import"支持

    typescript - 如何为 WebStorm 和 VSCode 设置相同的代码格式样式?