[IDEA插件]刷新项目视图中的文件树注释信息

发布时间 2023-04-21 15:48:05作者: za-ill-ds

开始只知道扩展点

projectViewNodeDecorator

  这个是在文件内容发生变更时触发,

但是有一些时候,只是想单纯刷新下,于是找到了show comment这个插件,

而且是开源的,里面提供了一个按钮如下:

<action
                id="xxx.ReLoadExtDocAction"
                class="com.tcnp.tcnpplugin.sprint.action.ReloadExtDocAction"
                text="? // reload data">
            <add-to-group group-id="ToolsMenu"/>
        </action>

  这个正是我想要的,然后看到里面有如下类:

/**
 * call ConfCache.loadAll
 */
public class ReloadExtDocAction extends AnAction {

    @Override
    public void update(@NotNull AnActionEvent e) {
        super.update(e);
        e.getPresentation().setText(ShowBundle.message("reload.ext.doc"));
    }

    @Override
    public void actionPerformed(@NotNull AnActionEvent e) {
        @Nullable Project project = e.getProject();
        if (project == null) {
            return;
        }
        ConfCache.loadAll(project);
        ApplicationManager.getApplication().invokeLater(() ->
                ProjectView.getInstance(project).refresh());
    }
}

  这里面只有3个左右另外自定义的小类,直接拿过来就行了,非常轻量和方便,

这个解决问题的过程就是,在百度上搜索,偶然间看到bilibili有类似插件的推荐:文件树内容增强,show comments

当然这个插件要是开源的就去github下载源码,参考下。

在官方文档中找扩展点,然后找使用扩展点的插件,虽然有时也可行,但是对英语理解得足够好才行。