Eclipse:如何在项目资源管理器中隐藏自定义文件

发布于 2024-11-09 20:27:54 字数 159 浏览 2 评论 0原文

我在 CDT 中有一个自定义构建器,它将很多文件添加到项目目录中。我希望从 Project Explorer 中过滤掉这些文件,但无法弄清楚如何过滤掉(文件掩码是 *.ooj)。

是否可以通过文件掩码将自定义过滤器添加到自定义视图中?或者也许还有另一种方法可以在项目资源管理器中隐藏文件?

I have a custom builder in CDT, which adds alot of files into project directory. I want those files to be filtered out from Project Explorer, but cannot figure out how (the file mask is *.ooj).

Is it possible to add a custom filter by file mask into Customize View? Or maybe there is anther way to hide files in Project Explorer?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

兲鉂ぱ嘚淚 2024-11-16 20:27:55

您可以为此定义一个过滤器。打开包资源管理器中的视图菜单,然后选择“过滤器...”,您可以在此处定义隐藏文件的模式。

You can define a filter for that. Open the view menu in the Package Explorer and then choose "Filters..." Here you can define a pattern to hide files.

北城挽邺 2024-11-16 20:27:55

首先感谢@emmzett
只是想以详细的方式解释 emmzett 的答案,因为我对编辑插件文件一无所知,而且我花了 2 个小时在这上面。也许我可以用这个清晰的表达来节省你的时间。

  1. 首先进入eclipse文件然后
    plugins->org.eclipse.ui.navigator.resources_(your eclipse version).jar
  2. 右键单击​​ .jar 文件并使用 winrar 打开
  3. 找到 plugin.xml 打开使用编辑器(记事本、Notepad++ 等)
    plugin.xml 文件
  4. 找到 point="org.eclipse.ui.navigator.navigatorContent" 并粘贴下面的代码
    SpecifyAnIdForYourFileType.description”
                 activeByDefault="true">
      <过滤表达式>
          <和>
             >
             
          
       
    
  5. SpecifyAnIdForYourFileType 更改为 id 的唯一名称
    “您的特定文件”更改为您的特定文件后缀,例如*.pdfdesktop.ini等。
  6. 保存plugin.xml并退出
  7. 找到使用与3.step相同的编辑器打开的plugin.properties
    粘贴此代码

    过滤器。SpecifyAnIdForYourFileType.name=您的特定文件文件
    过滤器。SpecifyAnIdForYourFileType.description=隐藏与您的特定文件匹配的文件
  8. 保存plugin.properties并退出
  9. 重新启动eclipse 并清除缓存,而不是转到 Project Explorer at
    左侧
  10. 单击右上角的View Menu 图标
  11. 单击Filters and Customization...
  12. Filters 菜单中勾选您的新过滤器。

这就是我要再次感谢 emmzett 的全部。

问候。

Firstly thanks to @emmzett
Just wanna explain in a verbose mode of emmzett's answer because I didn't know anything editing plugin files and I spent 2 hours on this. Maybe I can save your time with this clarified expression.

  1. Firstly go in eclipse file then
    plugins->org.eclipse.ui.navigator.resources_(your eclipse version).jar
  2. Right click to .jar file and open with winrar
  3. Find the plugin.xml open with an editor(notepad,Notepad++ etc) the
    plugin.xml file
  4. Find the point="org.eclipse.ui.navigator.navigatorContent" and paste code below
    <commonFilter id="org.eclipse.ui.navigator.resources.filters.SpecifyAnIdForYourFileType" 
                 name="%filters.SpecifyAnIdForYourFileType.name" 
                 description="%filters.SpecifyAnIdForYourFileType.description"
                 activeByDefault="true">
      <filterExpression>
          <and>
             <instanceof value="org.eclipse.core.resources.IFile"/>
             <test property="org.eclipse.core.resources.name" value="your specific file"/>
          </and>
       </filterExpression>
    </commonFilter>
  5. Change SpecifyAnIdForYourFileType with a unique name for id
    Change "your specific file" with your specific file suffix like *.pdf or desktop.ini etc.
  6. Save the plugin.xml and exit
  7. Find the plugin.properties open with an editor same as 3.step
    Paste this code

    filters.SpecifyAnIdForYourFileType.name=your specific file files
    filters.SpecifyAnIdForYourFileType.description=Hides files that match your specific file

  8. Save plugin.properties and exit
  9. Restart the eclipse and clear cache than go to Project Explorer at
    the left side
  10. Click the View Menu icon at the top right corner
  11. Click the Filters and Customization...
  12. Tick your new filter in the Filters menu.

That's all I want to thanks again to emmzett.

Regards.

蓝海似她心 2024-11-16 20:27:54

以下是在 Eclipse Indigo/Luna/Neon 上执行此操作的方法(截至 2018 年 5 月 22 日):

  • 打开“项目属性”
    • 下拉菜单 -->项目-->属性
    • 将会出现一个名为“属性”的新对话框窗口
  • 创建“资源过滤器”
    • 选择资源 -->资源过滤器 ->添加过滤器...
    • 将出现一个名为“为项目添加资源过滤器”的新对话框窗口
    • 在新对话框中选择以下内容
      • 过滤器类型:全部排除
      • 适用于:文件
      • 请务必点击“所有儿童(回避)”复选框
      • 文件和文件夹属性
        • 选择:姓名
        • 选择:匹配
        • 填写:*.ooj
      • 点击“确定”
      • 对话框关闭
  • 应用新过滤器
    • 点击“应用”
    • 您应该会在“导航器”视图中看到变化
  • 关闭“项目属性”
    • 点击“确定”
  • 完成

Here's how to do it on Eclipse Indigo/Luna/Neon (as of 2018-05-22):

  • Open the "project properties"
    • pull down menu --> Project --> Properties
    • A new dialog window named "Properties" will appear
  • Create a "Resource Filter"
    • Select Resource --> Resource Filters -> Add Filter...
    • A new dialog window named "Add Resource Filter for project" will appear
    • In the new dialog select the following
      • Filter Type: Exclude All
      • Applies to: Files
      • Make sure to click the checkbox for "All children (recusive)"
      • File and Folder Attributes
        • select: Name
        • select: Matches
        • fill in: *.ooj
      • Click OK
      • Dialog closes
  • Apply the new filter
    • Click Apply
    • You should see a change in your "Navigator" View
  • Close the "Project Properties"
    • Click OK
  • Done
月下凄凉 2024-11-16 20:27:54

如何将全局用户定义的资源过滤器添加到 Eclipse Project Explorer 视图:

在项目级别修改和切换过滤器需要大量点击,如果工作区中有很多项目,这可能会很乏味。如果您需要一次又一次地在所有项目上应用或切换相同的过滤器设置,您可能更喜欢为所有项目和所有工作区提供更快的全局解决方案。

  • 修改 plugins/org.eclipse.ui.navigator.resources_{version}.jar 中的文件 plugin.xmlplugin.properties > (提取、修改并重新添加修改后的文件)。

  • 例如,将 plugin.xml 中的仅文件过滤器添加到元素 /plugin/extension @point="org.eclipse.ui.navigator.navigatorContent"

    
       <过滤表达式>
          <和>
             >
             
          
       
    
    
  • 作为另一个示例,将 plugin.xml 中的文件和目录过滤器添加到同一元素:

    
       <过滤表达式>
          <和>
             <适应类型=“org.eclipse.core.resources.IResource”>
                
             
          
       
    
    
  • 中添加的所有过滤器提供过滤器名称和说明插件.属性。项目资源管理器视图中的筛选器显示顺序按此筛选器名称排序,无论筛选器类型如何:

    filters.{unique-id-a}.name={file-wildcard-pattern-a} 文件
    filters.{unique-id-a}.description=隐藏与“{file-wildcard-pattern-a}”匹配的文件
    
    filters.{unique-id-b}.name={file-wildcard-pattern-b} 文件和文件夹
    filters.{unique-id-b}.description=隐藏与“{file-wildcard-pattern-b}”匹配的文件和文件夹
    
  • 重新启动 Eclipse 并重置其缓存:eclipse.exe -clean

How to add global user defined resource filters to the Eclipse Project Explorer view:

Modifying and switching filters on a project level needs a lot of clicks and can be tedious if you have many projects in your workspace. If you need to apply or switch the same filter settings on all projects again and again you might prefer a quicker and global solution for all projects and all workspaces.

  • Modify the files plugin.xml and plugin.properties in plugins/org.eclipse.ui.navigator.resources_{version}.jar (extract, modify and re-add the modified files).

  • For example, add a file only filter in plugin.xml to the element /plugin/extension @point="org.eclipse.ui.navigator.navigatorContent":

    <commonFilter id="org.eclipse.ui.navigator.resources.filters.{unique-id-a}" name="%filters.{unique-id-a}.name" description="%filters.{unique-id-a}.description" activeByDefault="true|false">
       <filterExpression>
          <and>
             <instanceof value="org.eclipse.core.resources.IFile"/>
             <test property="org.eclipse.core.resources.name" value="{file-wildcard-pattern-a}"/>
          </and>
       </filterExpression>
    </commonFilter>
    
  • As another example, add a file and directory filter in plugin.xml to the same element:

    <commonFilter id="org.eclipse.ui.navigator.resources.filters.{unique-id-b}" name="%filters.{unique-id-b}.name" description="%filters.{unique-id-b}.description" activeByDefault="true|false">
       <filterExpression>
          <and>
             <adapt type="org.eclipse.core.resources.IResource">
                <test property="org.eclipse.core.resources.name" value="{file-wildcard-pattern-b}"/>
             </adapt>
          </and>
       </filterExpression>
    </commonFilter>
    
  • Provide filter names and descriptions for all added filters in plugin.properties. Filter display order in Project Explorer view is by this filter name regardless of filter type:

    filters.{unique-id-a}.name={file-wildcard-pattern-a} files
    filters.{unique-id-a}.description=Hides files that match "{file-wildcard-pattern-a}"
    
    filters.{unique-id-b}.name={file-wildcard-pattern-b} files and folders
    filters.{unique-id-b}.description=Hides files and folders that match "{file-wildcard-pattern-b}"
    
  • Restart Eclipse and reset its caches: eclipse.exe -clean

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文