Right now when I use ⌘+O to search for files, the fuzzy matching appears to operate over all files in the current project. Unfortunately, this includes a number of files from build and vendor directories. So, for instance, if I want to search for all JavaScript files and do ⌘+O and type .js
in, the file and symbol results include around 1500 hits and all of them except the two ones are complete noise.
Is there a way to specify certain directories to be ignored for purpose of search?
Press Alt+Enter. From the pop-up menu, select Ignore All Errors in This File.
Search across files. VS Code allows you to quickly search over all files in the currently opened folder. Press Ctrl+Shift+F and enter your search term. Search results are grouped into files containing the search term, with an indication of the hits in each file and its location.
Temporary Exclusions
From the search function, click the ellipsis to show the files to include
and files to exclude
text boxes. Enter any files and folder to exclude (separated by commas).
Persistent Exclusions
From menu choose File ➡️ Preferences ➡️ Settings ➡️ User/Workspace Settings
and filter default settings to search
.
User
settings will apply to all workspacesWorkspace
settings will apply only to this workspaceYou can modify the search.exclude
setting (copy from default setting to your user or workspace settings). That will apply only to searches. Note that settings from files.exclude
will be automatically applied.
Toggling search exclusions
You can (sometimes accidentally) toggle if these exclusions are enabled or disabled when searching using the gear icon in the files to exclude
text box. Click the ellipsis, then the gear icon to toggle.
Additional documentation on configuring settings in Visual Studio Code
If the settings don't work
You might also need to Clear Editor History (See: https://github.com/Microsoft/vscode/issues/6502).
Example
I am developing an EmberJS application which saves thousands of files under the tmp
directory.
If you select WORKSPACE SETTINGS
on the right side of the search field, the search exclusion will only be applied to this particular project. And a corresponding .vscode
folder will be added to the root folder containing settings.json
.
This is my example settings:
{ // ... "search.exclude": { "**/.git": true, "**/node_modules": true, "**/bower_components": true, "**/tmp": true }, // ... }
Note: Include a ** at the beginning of any search exclusion to cover the search term over any folders and sub-folders.
Picture of search before updating settings:
Before updating the settings the search results are a mess.
Picture of search after updating settings:
After updating the settings the search results are exactly what I want.
Make sure the 'Use Exclude Settings and Ignore Files' cog is selected
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With