我正在搜索字符串并在源文件夹中获取匹配项,并且构建文件夹(源文件在构建期间被复制到构建中)。
我不需要构建文件夹结果。
Vim wildignore
有助于过滤掉结果。
intelij中有类似的内容吗?
答案 0 :(得分:169)
将您的构建文件夹标记为已排除:
File > Project Structure > Modules > Sources > Mark as Excluded (red icon)
您也可以右键单击您的文件夹,然后选择Mark Directory As > Excluded
。
排除的文件夹(显示为rootExcluded)是IntelliJ IDEA“部分忽略”的文件夹。为排除文件夹中的文件提供了非常有限的编码帮助。排除文件夹中包含的类不会出现在代码完成建议列表中,对这些类的引用在编辑器中显示为未解析。 搜索时,IntelliJ IDEA不会查找已排除的文件夹等
注意:请参阅Nader Hadji Ghanbari的答案,了解使用Scopes的另一种方法。
答案 1 :(得分:70)
通过在搜索时定义Scope,您可以在该范围内包含/排除任意文件/文件夹。
实现您的要求(从搜索中排除文件和文件夹)的一种方法是定义自定义范围。这特别有用,因为有时您只想从搜索中排除文件夹,而不是从整个项目中排除。
请按照以下步骤操作:
Edit
- > Find
- > Find in path
或按 Ctrl + Shift + F 。
在Custom
部分选择Scope
,然后选择<unknown scope>
+
按钮添加新的local
自定义范围
include recursively
添加所有内容,然后选择exclude
或exclude recursively
逐个排除。
请注意,您甚至可以包含或排除项目所依赖的库。
Scope
对话框的Find in Path
部分中选择有效范围。您可以查看JetBrains docs on Scopes了解详情。范围不仅可以在搜索时使用,还可以在IntelliJ IDEA中的许多其他用例中使用。
您可以使用Patterns来定义一个范围,使其更加强大和面向未来。
使用模式是排除文件和文件夹的另一种方法。例如
file:src/main/java//*&&!file:src/main/java/my//*
将排除my
文件夹中的所有文件。
答案 2 :(得分:17)
在Intellij 15中,要排除文件夹,请执行以下操作:
在项目窗口中选择文件夹,然后右键单击并选择&#34;将目录标记为&#34; &GT; &#34;不含&#34;答案 3 :(得分:9)
右键单击目录 - &gt;将目录标记为 - &gt;排除。
答案 4 :(得分:0)
如果要搜索用法,请打开“查找用法设置...”,默认情况下为 Ctrl + Alt + Shift + F7 ,可以将范围从“所有文件”缩小到“项目文件”。
答案 5 :(得分:0)
Article last modified: 08 June 2020
按名称模式排除文件和文件夹
Ctrl+Alt+S
中,单击目录。*.min.js
或lib
。使用分号作为分隔符。
来源:https://www.jetbrains.com/help/phpstorm/excluding-files-from-project.html
答案 6 :(得分:0)
对于IntelliJ的较早版本,很多答案都很好,但是在2020.2和其他最新版本中,我一直在搜索结果中看到排除的文件夹。就我而言:node_modules
。
不过,我发现了一些可行的方法。至少对于javascript项目。可能其他语言也有类似的内容。
希望这行得通,但如果没有,并且您正在使用Javascript,请继续:
这是否是一个好主意还有待观察; IntelliJ不仅将它们从搜索中排除,还从其所有代码解析中排除,这意味着它也可能无法识别该目录中的导入。对我来说,目前看来效果很好,但我不做任何保证。尝试一下,但要记住如何还原它。
这是一个丑陋的工作。 IntelliJ显然需要一种更好的方法来从搜索中排除目录。