Scegli le cartelle da ignorare durante la ricerca in VS Code


364

In questo momento quando uso + Oper cercare i file, la corrispondenza fuzzy sembra funzionare su tutti i file nel progetto corrente. Sfortunatamente, questo include un numero di file dalle directory build e vendor. Quindi, per esempio, se voglio cercare tutti i file JavaScript e fare + Oe digitare .js, i risultati di file e simboli includono circa 1500 hit e tutti loro tranne i due sono rumore completo.

Esiste un modo per specificare alcune directory da ignorare ai fini della ricerca?


1
Hmm, aspetta un minuto, nel 2019 ⌘O significa "Apri file ...", e dubito che VS Code abbia molto controllo su qualsiasi funzione di ricerca (specifica del sistema operativo) che potresti vedere lì. Si potrebbe essere in grado di filtrare i file da solo determinate estensioni?
SamB,

Risposte:


689

Queste preferenze sembrano essere cambiate dalla risposta di @ alex-dima.

Modifica delle impostazioni

Dal menu scegliere: File -> Preferenze -> Impostazioni -> Impostazioni utente / area di lavoro. Filtra le impostazioni predefinite su search.

È possibile modificare l' search.excludeimpostazione (copia dall'impostazione predefinita alle impostazioni dell'utente o dell'area di lavoro). Questo si applica solo alle ricerche. Si noti che le impostazioni da files.excludeverranno applicate automaticamente.

Se le impostazioni non funzionano :

  1. Assicurati di non disattivare l'esclusione della ricerca. Nell'area di ricerca, espandi la casella di input "file da escludere" e assicurati che l'icona a forma di ingranaggio sia selezionata.

  2. Potrebbe anche essere necessario cancellare la cronologia dell'editor (vedere: https://github.com/Microsoft/vscode/issues/6502 ).

Impostazioni di esempio

Ad esempio, sto sviluppando un'applicazione EmberJS che salva migliaia di file nella directory tmp .

Se si seleziona WORKSPACE SETTINGSsul lato destro del campo di ricerca, l'esclusione della ricerca verrà applicata solo a questo particolare progetto. E una .vscodecartella corrispondente verrà aggiunta alla cartella principale contenente settings.json.

Queste sono le mie impostazioni di esempio:

{
    // ...
    "search.exclude": {
        "**/.git": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/tmp": true
    },
    // ...
}

Nota : includere un ** all'inizio di qualsiasi esclusione di ricerca per coprire il termine di ricerca su qualsiasi cartella e sottocartella.

Immagine della ricerca prima di aggiornare le impostazioni :

Prima di aggiornare le impostazioni i risultati della ricerca sono un disastro.

Immagine della ricerca prima di aggiornare le impostazioni

Immagine della ricerca dopo l'aggiornamento delle impostazioni:

Dopo aver aggiornato le impostazioni, i risultati della ricerca sono esattamente ciò che voglio.

Immagine della ricerca dopo l'aggiornamento delle impostazioni.


16
questo ha smesso di funzionare per me nella versione recente ... hai idea del perché?
NSjonas,

3
C'è un modo per applicare questo alla funzione "Apertura rapida"? Ctrl + P su PC e Cmd + P su Mac. Quando cerco file utilizzando questa funzione, vengono comunque visualizzati.
glandrum101,

7
Assicurati di cancellare la cronologia dell'editor affinché funzioni. github.com/Microsoft/vscode/issues/6502
Jaydeep Solanki

5
Ho dovuto eseguire il comando "cancella cronologia editor" (vedere qui: github.com/Microsoft/vscode/issues/6502#issuecomment-273697138 ) e riavviare VS Code affinché questo funzioni per me.
Isaac Gregson,

19
Si noti che è possibile disattivare l'esclusione della ricerca durante la ricerca di file. Nell'area di ricerca, espandi la casella di input "file da escludere" e assicurati che l'icona a forma di ingranaggio sia selezionata. Ciò garantirà il rispetto delle impostazioni di esclusione della ricerca.
Robert Waddell,

167

Assicurati che sia selezionato il dente "Usa impostazioni di esclusione e ignora file" inserisci qui la descrizione dell'immagine


5
Come si escluderebbero più cartelle?
Wouter Vanherck,

23
@WouterVanherck dovresti semplicemente aggiungere una virgola per separare ogni file o cartella che desideri escludere. Esempio:./src/public/,src/components/
Sgnl

44

Aggiornamento aprile 2018

Puoi farlo nella sezione di ricerca di vscode pre-fissando un punto esclamativo su ogni cartella o file che vuoi escludere.

inserisci qui la descrizione dell'immagine


Esattamente! perfetto
Taffarel Xavier

25

Questa risposta è obsoleta

Se si tratta di cartelle che desideri ignorare in un determinato spazio di lavoro, puoi andare a:

AppMenu > Preferences > Workspace Settings

Altrimenti, se si desidera che queste cartelle vengano ignorate in tutte le aree di lavoro, andare a:

AppMenu > Preferences > User Settings

e aggiungi quanto segue alla tua configurazione:

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

La differenza tra area di lavoro e impostazioni utente è spiegata nei documenti di personalizzazione


9
Se è obsoleto, aggiornalo o eliminalo per evitare confusione e possibili downgrade!
user3413723

1
seriamente, fai una modifica. la risposta sopra accettata FUNZIONA nell'ultimo VS Code su macOS. quindi abbandona il tuo BS per voti positivi e dai un utile contributo alla risposta effettiva.
Heisian,

18

Se ho capito bene, vuoi escludere i file dal fuzzy finder vscode. In tal caso, suppongo che le risposte sopra riportate riguardino le versioni precedenti di vscode. Ciò che ha funzionato per me è l'aggiunta di:

"files.exclude": {
    "**/directory-you-want-to-exclude": true,
    "**/.git": true,
    "**/.svn": true,
    "**/.hg": true,
    "**/CVS": true,
    "**/.DS_Store": true
}

al mio settings.json. Questo file può essere aperto tramite File> Preferences>Settings


15

Sono un idiota, quindi mi ci è voluto un po 'per rendermene conto, ma assicurati che l' icona Gear sia cliccata sulla ricerca globale in modo da poter applicare le tue impostazioni.

Fare clic sull'icona dell'ingranaggio del codice di Visual Studio su Cerca


1
non sei un idiota perché questa è la risposta che l'ha riparata per me, devo aver accidentalmente fatto clic su quell'icona in passato, non è così ovvio che questa piccola icona lo controlla ed è appena percettibile quando è abilitata o disabilitata
vesperknight

Non sei certamente un idiota per perdere quel meraviglioso pezzo di UX, ma puoi dirmi come il tuo è diverso da questa risposta precedente , se lo è - beh, oltre a questa risposta essere in modalità oscura? ; ^ D
ruffin

3

Volevo escludere completamente 1 delle cartelle di Workspace, ma ho riscontrato che ciò è difficile, poiché indipendentemente dai modelli di esclusione, esegue sempre la ricerca su ciascuna delle cartelle di Workspace.

Alla fine, la soluzione era quella di aggiungere **ai modelli di esclusione della ricerca Impostazioni cartella .

inserisci qui la descrizione dell'immagine


2

Dopo aver impostato search.exclude e file.exclude menzionati nelle risposte precedenti, eseguire il comando "Cancella cronologia editor" (utilizzare la tavolozza dei comandi per farlo - CTRL + MAIUSC + P).

Solo in seguito i file esclusi non verranno visualizzati nel menu di scelta rapida.

Aggiornamento: è possibile eseguire anche il comando "Cancella cronologia comandi". Me ne sono dimenticato.


1

Dimentica aboves per vscode escludi pattern di ricerca, prova a pattern di seguito che funziona per qualsiasi cartella nell'ultima versione di vscode!

! ../../../ locali / *

per esempio ho cercato come sotto vscode esempio impostazioni clude

file da includere: * .js

file da escludere: ** / node_modules,! ../../../ locales / ,! ../../../ theme / ,! ../../ admin / client / *



0

La risposta breve è separare in virgola le cartelle che si desidera ignorare in "file da escludere".

  1. Avvia la ricerca nell'area di lavoro: CTRL + MAIUSC + f
  2. Espandi la ricerca globale con il pulsante a tre punti
  3. Inserisci il termine di ricerca
  4. Ad esempio, nei file da escludere nel campo -input scrivere babel,concatper escludere la cartella "babel" e la cartella "concat" nella ricerca (assicurarsi che il pulsante di esclusione sia abilitato).
  5. Premi Invio per ottenere i risultati.

0

Escludere tutto dalle sottocartelle funziona in questo modo (versione 2019)

includere

./db

escludere

./db/*

-1

Crea un file con .gitignore e inserisci la cartella o il nome del file che desideri ignorare.

per ignorare tutto sotto la cartella node_modules

echo node_modules/ > .gitignore 

3
la domanda non riguarda git
Saman Shafigh,

-1

Volevo cercare il termine "Stripe" in tutti i file tranne quelli all'interno di un plug-in (cartella "plug-in") o all'interno dei file che terminano in ".bak", ".bak2" o ".log" (questo è all'interno del wp -contenta la struttura delle cartelle di un'installazione wordpress).

Volevo solo fare questa ricerca una volta e molto rapidamente, quindi non volevo modificare le impostazioni di ricerca del mio ambiente. Ecco come l'ho fatto (notare i doppi asteriks per la cartella):

  • Termine di ricerca: striscia
  • Includi file: {blank}
  • Escludi file: * .bak *, * .log, ** / plugins / **

Ecco come appariva

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.