【问题标题】:Eclipse plugin: how to show .* resources by default in perspectiveEclipse 插件:如何在透视图中默认显示 .* 资源
【发布时间】:2013-05-21 06:22:41
【问题描述】:

如何在插件/RCP 中配置透视图以显示 .* 资源。

目前,应该由每个用户通过选择Customize View...手动完成。

在Eclipse插件开发中如何默认以新的视角显示.*文件?

相关 How to customize eclipse perspective programmatically?

【问题讨论】:

标签: java perspective eclipse-plugin plugin.xml


【解决方案1】:

我假设您想在包资源管理器中显示*.resources。我不认为有任何插件可以做到这一点,但你仍然有一些可能性。

一个简单的方法是去Customize View。您可以在视图菜单中选择Filters...(修改后会显示.* resources的快捷方式):

当然,您仍然需要为每个用户都这样做。如果这仍然太麻烦,您需要使用定义它们的扩展。您可能很幸运地创建了自己的插件,该插件试图覆盖定义过滤器的扩展点。简而言之,您必须将此添加到您的 plugin.xml

   <extension point="org.eclipse.jdt.ui.javaElementFilters">
    <filter
          targetId="org.eclipse.jdt.ui.PackageExplorer"
          name=".* resources (new)"
          enabled="false"
          description="Hides resources with names that start with a '.'"
          pattern=".*">
    </filter>
  </extension>

但是有一个 hack 并且不能保证这会起作用。如果您查看org.eclipse.jdt.ui.actions.CustomFiltersActionGroup.CustomFiltersActionGroup(String, StructuredViewer),您会发现它取决于加载过滤器扩展的顺序。根据this question,这是相当随意的。

另一种需要更多工作但不那么麻烦并且(据我所知)肯定会奏效的方法是修改原始扩展点。这是在org.eclipse.jdt.ui 中定义的,所以你必须替换这个插件。为此,您需要:

  1. 导入插件:打开Plug-ins视图,右键 org.eclipse.jdt.ui 并选择导入为源
  2. 在plugin.xml 中找到扩展名(搜索name="%HideSystemFiles.label")并将enabled="true" 更改为enabled="false"
  3. 用你的插件创建一个“功能补丁”。将其导出并安装到您的 Eclipse 中。 (参见下面的资源)

这种方法的一个缺点是,每次更新 org.eclipse.jdt.ui 时,您都必须维护它,基本上要重新执行所有步骤。

有关功能补丁的更多信息,请参阅:

【讨论】:

  • 很棒的帖子。我应该说有问题的观点与 JDT 无关。它被定义为新的github.com/Nodeclipse/nodeclipse-1/blob/master/…(看起来像这样~~从资源角度继承~~与资源角度共享相同的设置)然后是PerspectiveFactory github.com/Nodeclipse/nodeclipse-1/blob/master/…但是当我输入工厂时我没有看到需要的方法. (点并查看内容帮助)。
  • IPerspectiveFactory 没有给出答案...help.eclipse.org/indigo/… 需要知道属性的确切名称,例如扩展点="org.eclipse.jdt.ui.javaElementFilters"
  • 哦,这很接近help.eclipse.org/juno/…
  • 好的。确定:1.是Project Explorer视图中的过滤器你想改变吗?
  • 我认为 org.eclipse.ui.ide.resourceFilters 与来自org.eclipse.ui.ide 的(已贬低的)Navigator 视图有关。据我所见,Project Explorer 及其过滤器在超大扩展点org.eclipse.ui.navigator.navigatorContent 中的org.eclipse.ui.navigator.resources 中定义 - 只需在plugin.xml 中搜索.* ..... 让我知道是否可以诀窍:)
猜你喜欢
  • 1970-01-01
  • 2021-11-24
  • 2015-08-10
  • 1970-01-01
  • 1970-01-01
  • 2014-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多