现在,当我使用⌘+O搜索文件时,模糊匹配似乎对当前项目中的所有文件进行操作。不幸的是,这包括许多来自构建和供应商目录的文件。因此,例如,如果我想搜索所有JavaScript文件并执行⌘+O并输入.js,文件和符号结果包括大约1500个命中值,除了两个之外,其他所有结果都是完全噪音。
是否有一种方法可以指定某些目录以忽略搜索的目的?
现在,当我使用⌘+O搜索文件时,模糊匹配似乎对当前项目中的所有文件进行操作。不幸的是,这包括许多来自构建和供应商目录的文件。因此,例如,如果我想搜索所有JavaScript文件并执行⌘+O并输入.js,文件和符号结果包括大约1500个命中值,除了两个之外,其他所有结果都是完全噪音。
是否有一种方法可以指定某些目录以忽略搜索的目的?
当前回答
简单的回答是在“要排除的文件”中用逗号分隔你想忽略的文件夹。
开始工作区范围搜索:CTRL+SHIFT+f 使用三点按钮展开全局搜索 输入搜索词 作为一个例子,在文件排除输入字段写babel,concat排除文件夹“babel”和文件夹“concat”在搜索(确保排除按钮启用)。 按enter键获取结果。
其他回答
如果这些是你想在某个工作空间中忽略的文件夹,你可以转到:
AppMenu > Preferences > Workspace Settings
否则,如果你想在所有工作区中忽略这些文件夹,请转到:
AppMenu >首选项>用户设置
并将以下内容添加到配置中:
//-------- Search configuration --------
// The folders to exclude when doing a full text search in the workspace.
"search.excludeFolders": [
".git",
"node_modules",
"bower_components",
"path/to/other/folder/to/exclude"
],
工作空间和用户设置之间的区别在设置文档中有解释
临时除外
在搜索功能中,单击省略号显示要包含的文件和要排除的文件文本框。输入要排除的任何文件和文件夹(用逗号分隔)。
持续的除外
从菜单选择文件➡️首选项➡️设置➡️用户/工作区设置和过滤默认设置进行搜索。
用户设置将应用于所有工作区 工作空间设置将仅应用于此工作空间
您可以修改搜索。排除设置(从默认设置复制到用户或工作区设置)。这只适用于搜索。注意文件中的设置。Exclude将自动应用。
切换搜索排除
当使用文件中的齿轮图标搜索排除文本框时,您可以(有时偶然地)切换是否启用或禁用这些排除。单击省略号,然后单击齿轮图标进行切换。
关于在Visual Studio Code中配置设置的附加文档
如果设置不起作用
您可能还需要清除编辑器历史记录(参见:https://github.com/Microsoft/vscode/issues/6502)。
例子
我正在开发一个EmberJS应用程序,它在tmp目录下保存了数千个文件。
如果选择搜索字段右侧的“工作区设置”,则搜索排除将仅应用于此特定项目。相应的.vscode文件夹将被添加到包含settings.json的根文件夹中。
这是我的示例设置:
{
// ...
"search.exclude": {
"**/.git": true,
"**/node_modules": true,
"**/bower_components": true,
"**/tmp": true
},
// ...
}
注意:在任何排除搜索的开头包含一个**,以覆盖任何文件夹和子文件夹上的搜索词。
更新设置前搜索图片:
在更新设置之前,搜索结果是一团糟。
更新设置后的搜索图片:
更新设置后,搜索结果正是我想要的。
在vscode项目中创建这个文件
.vscode/settings.json
{
"search.exclude": {
"**/Pods": true,
"**/node_modules": true,
"**/*.code-search": true
}
}
扩展投票最多的答案,现在有一个扩展来实现这里描述的以GUI方式快速切换。它叫做Explorer Exclude。你可以用下面的命令来安装:
ext install PeterSchmalfeldt.explorer-exclude
演示:
2018年4月更新
您可以在vscode的搜索部分通过在您想要排除的每个文件夹或文件前添加感叹号来实现这一点。