现在,当我使用⌘+O搜索文件时,模糊匹配似乎对当前项目中的所有文件进行操作。不幸的是,这包括许多来自构建和供应商目录的文件。因此,例如,如果我想搜索所有JavaScript文件并执行⌘+O并输入.js,文件和符号结果包括大约1500个命中值,除了两个之外,其他所有结果都是完全噪音。

是否有一种方法可以指定某些目录以忽略搜索的目的?


当前回答

我想在所有文件中搜索术语“Stripe”,除了那些插件(“plugin”文件夹)或以“.bak”,“结尾的文件。Bak2 "或".log"(这是在wordpress安装的wp-contents文件夹结构中)。

我只是想快速地做一次这个搜索,所以我不想改变我的环境的搜索设置。下面是我是怎么做的(注意文件夹的两个星号):

搜索词:条纹 包含文件:{blank} 排除文件:*.bak*, *.log, **/plugins/**

这是它的样子

其他回答

如果这些是你想在某个工作空间中忽略的文件夹,你可以转到:

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"
],

工作空间和用户设置之间的区别在设置文档中有解释

在设置搜索之后。排除并归档。排除前面的答案中提到的,运行命令“清除编辑器历史记录”(使用命令面板来做- CTRL + SHIFT + P)。

只有在此之后,排除的文件将不会出现在您的快速打开菜单。

更新:您也可以运行命令“清除命令历史”。我忘了。

我相信现在必须解决这个问题,但我只是想贡献我的解决方案,这对某些人来说可能很简单,也很有用。

只需在搜索的排除字段中键入下面的行

* / node_modules / *

不需要在你的工作区/VS Code的设置文件中设置任何东西。

2018年4月更新

您可以在vscode的搜索部分通过在您想要排除的每个文件夹或文件前添加感叹号来实现这一点。

在vscode项目中创建这个文件

.vscode/settings.json

{
  "search.exclude": {
    "**/Pods": true,
    "**/node_modules": true,
    "**/*.code-search": true
  }
}