如何在Eclipse中搜索所有打开的文件?

67

简单的问题:如何搜索Eclipse中当前打开的所有文件? 注意:我不想搜索工作区中的所有文件,只想搜索在选项卡中打开的文件。是否有简单的方法可以做到这一点?

7个回答

47

最简单的方法是在导航器或包资源管理器视图中选择几个资源,然后按Ctrl+H并选择“选定的资源”单选按钮。这样可以仅将搜索限制为所选文件。


7
假设有20个文件需要打开,用户需要手动按住Ctrl和Shift键来选择所有这些文件!! - Chandrayya G K
Notepad++有这个功能。它甚至让您一次性打开搜索结果中的所有文件。 - Knu8

7

在Windows或Linux上使用CTRL+E,在OSX上使用Command+E。


8
那是在搜索文件的名称,但我想要搜索文件的内容。不过还是很方便,谢谢。 - daveslab

4

目前还没有办法做到那一点。

最简单的解决方案是手动选择您的文件(按住CTRL +单击文件),并将“所选资源”指定为您的搜索范围。


2

Spring提供了一个独立的 Eclipse 插件(不依赖于 Spring),称为 Quick Search。

http://marketplace.eclipse.org/content/quick-search-eclipse

为了提高效率,它首先搜索已打开的文件。因此,虽然它并不能完全限制在打开的文件中,但您仍可以通过单击首次出现的结果来实现类似的效果。


3
如果他们加入了一个选项让你可以这样做,那就太完美了。 叹气 - daveslab

2
这可能对原帖发布者来说有点晚了,但以防其他人需要找到答案,我遇到了同样的问题,并通过安装一个名为 Instasearch 的插件找到了解决方法。你可以通过进入 Help/Eclipse Marketplace 并搜索 Instasearch 来获取它。
你可以在以下地址找到更多关于这个插件的信息。

http://marketplace.eclipse.org/content/instasearch


1
那个插件真的可以让你只搜索打开的文件吗?我在你提供的页面上没有看到这方面的说明。 - Tom Anderson
@Tom,很遗憾它不行,抱歉我的错误。我是Eclipse的新手,从一开始就一直缺少在所有打开的文件中搜索的功能。我做了一个愚蠢的假设,认为没有人注意到这样的插件,应该在回答之前仔细检查问题,我一开始没有注意到它可以在同一包中的所有文件中搜索,无论是打开还是关闭的。 - Ramon Royo
@Ramon Royo +1 我认为这并没有回答问题。但我一直在寻找这个。 - Ajeeb.K.P
看起来这个插件项目在2018年就已经停止维护了,不兼容当前的Eclipse。:( - MGM

1

在Eclipse中,当前打开的文件并不被视为特殊文件 - 您有更高级的方法来组织您的文件:项目和工作集。

工作集允许您定义一组文件,可以用作许多操作的约束条件。您必须明确地定义它们,但是它们不会因为您关闭了一个文件而改变。


8
谢谢,迈克尔。我听到你关于Eclipse中可用的令人难以置信的功能的观点,但这是其中之一,使用简单应该胜过功能。我同意Eclipse内置的高级功能比我要求的更多,但这正是我的观点。实现“在打开的文件中查找”比实现工作集概念要简单得多。我想暂时只能这样了。再次感谢。 - daveslab
但是实现的简单性不应成为包含的标准。我认为查找打开文件的用例过于薄弱,不值得包含,尽管 UI 影响会相当小。 - JesperE
5
对我来说,当前打开的文件经常是限制搜索/替换的重要标准。也许不同类型的开发需要不同的工作习惯?我在PHP中开发网站,并发现这是其他IDE的宝贵功能之一。这是那种一旦开始使用就无法想象没有的功能! - Owen

0

Eclipse中没有“在打开的文件中查找”命令。

我认为Eclipse没有实现“在打开的文件中查找”的主要原因可能是对许多用户而言,打开的文件集合相当微不足道。(事实上,我不知道(或者不关心)我打开了哪些文件。(我甚至将Eclipse设置为在编辑器/文件过多时自动关闭它们)。如果我想要导航到一个文件,我会打开它。将搜索限制在我当前打开的文件中对我来说完全没有意义。)


这只是一个习惯问题。(你不能告诉任何人“你的习惯毫无意义”;))如果你在一个大项目上工作,打开了30-90个文件,那么“哦,我20分钟前写在哪里了?”这是一个合理的问题。正如你从之前的评论中看到的,Notepad++已经实现了这个功能,所以肯定有很多人真的需要它。 - MGM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接