【问题标题】:Adding custom code generator添加自定义代码生成器
【发布时间】:2013-09-04 09:06:45
【问题描述】:

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

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

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

【问题讨论】:

    标签: intellij-idea webstorm intellij-plugin


    【解决方案1】:

    是的,你可以通过编写一个 IntelliJ 插件并扩展这个类来做到这一点:

    com.intellij.openapi.actionSystem.Action
    

    如果您创建一个 intelliJ 插件项目(只需 google intellij plugin development获取有关如何开始的信息),在项目源代码树中的某处按 alt-enter 并选择 Action,您将看到一个对话框,允许您配置您的操作应该出现的位置。

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

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

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

    到目前为止,请尝试让这项工作正常进行,并提出任何具体问题。

    祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-21
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 2016-10-03
      • 2015-11-24
      • 1970-01-01
      • 2011-08-29
      相关资源
      最近更新 更多