Choisissez les dossiers à ignorer lors de la recherche dans VS Code

364

À l'heure actuelle, lorsque j'utilise + Opour rechercher des fichiers, la correspondance floue semble fonctionner sur tous les fichiers du projet en cours. Malheureusement, cela inclut un certain nombre de fichiers provenant des répertoires de génération et du fournisseur. Ainsi, par exemple, si je veux rechercher tous les fichiers JavaScript et faire + Oet taper .js, les résultats du fichier et du symbole incluent environ 1500 hits et tous sauf les deux sont du bruit complet.

Existe-t-il un moyen de spécifier certains répertoires à ignorer à des fins de recherche?

J. Abrahamson
la source
1
Hmm, attendez une minute, en 2019 ⌘O signifie "Ouvrir un fichier ...", et je doute que VS Code ait beaucoup de contrôle sur les fonctionnalités de recherche (spécifiques au système d'exploitation) que vous pourriez y voir. Il pourrait être en mesure de filtrer les fichiers sur certaines extensions uniquement?
SamB

Réponses:

689

Ces préférences semblent avoir changé depuis la réponse de @ alex-dima.

Modification des paramètres

Dans le menu, choisissez: Fichier -> Préférences -> Paramètres -> Paramètres utilisateur / espace de travail. Filtrez les paramètres par défaut sur search.

Vous pouvez modifier le search.excludeparamètre (copier du paramètre par défaut vers vos paramètres d'utilisateur ou d'espace de travail). Cela ne s'appliquera qu'aux recherches. Notez que les paramètres de files.excludeseront automatiquement appliqués.

Si les paramètres ne fonctionnent pas :

  1. Assurez-vous de ne pas désactiver l'exclusion de recherche. Dans la zone de recherche, développez la zone de saisie "fichiers à exclure" et assurez-vous que l'icône d'engrenage est sélectionnée.

  2. Vous devrez peut-être également effacer l'historique de l'éditeur (voir: https://github.com/Microsoft/vscode/issues/6502 ).

Exemples de paramètres

Par exemple, je développe une application EmberJS qui enregistre des milliers de fichiers sous le répertoire tmp .

Si vous sélectionnez WORKSPACE SETTINGSsur le côté droit du champ de recherche, l'exclusion de recherche ne sera appliquée qu'à ce projet particulier. Et un .vscodedossier correspondant sera ajouté au dossier racine contenant settings.json.

Voici mes exemples de paramètres:

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

Remarque : Ajoutez un ** au début de toute exclusion de recherche pour couvrir le terme de recherche sur tous les dossiers et sous-dossiers.

Image de la recherche avant de mettre à jour les paramètres :

Avant de mettre à jour les paramètres, les résultats de la recherche sont un désordre.

Image de la recherche avant de mettre à jour les paramètres

Image de la recherche après la mise à jour des paramètres:

Après avoir mis à jour les paramètres, les résultats de la recherche sont exactement ce que je veux.

Image de recherche après la mise à jour des paramètres.

Shotty
la source
16
cela a cessé de fonctionner pour moi dans la version récente ... une idée pourquoi?
NSjonas
3
Existe-t-il un moyen de faire en sorte que cela s'applique à la fonction "Ouverture rapide"? Ctrl + P sur PC et Cmd + P sur Mac. Lorsque je recherche des fichiers à l'aide de cette fonctionnalité, ils apparaissent toujours.
glandrum101
7
Assurez-vous d'effacer l'historique de votre éditeur pour que cela fonctionne. github.com/Microsoft/vscode/issues/6502
Jaydeep Solanki
5
J'ai dû exécuter la commande "effacer l'historique de l'éditeur" (voir ici: github.com/Microsoft/vscode/issues/6502#issuecomment-273697138 ) et redémarrer VS Code pour que cela fonctionne pour moi.
Isaac Gregson
19
Notez qu'il est possible de désactiver l'exclusion de recherche lors de la recherche de fichiers. Dans la zone de recherche, développez la zone de saisie "fichiers à exclure" et assurez-vous que l'icône d'engrenage est sélectionnée. Cela garantira que vos paramètres d'exclusion de recherche sont respectés.
Robert Waddell
167

Assurez-vous que le rouage `` Utiliser les paramètres d'exclusion et ignorer les fichiers '' est sélectionné entrez la description de l'image ici

atreeon
la source
5
Comment exclurait-on plusieurs dossiers?
Wouter Vanherck
23
@WouterVanherck, vous devez simplement ajouter une virgule pour séparer chaque fichier ou dossier que vous souhaitez exclure. Exemple:./src/public/,src/components/
Sgnl
44

Mise à jour avril 2018

Vous pouvez le faire dans la section de recherche de vscode en pré-fixant un point d'exclamation à chaque dossier ou fichier que vous souhaitez exclure.

entrez la description de l'image ici

Christopher Grigg
la source
Exactement! parfait
Taffarel Xavier
25

Cette réponse est dépassée

S'il s'agit de dossiers que vous souhaitez ignorer dans un certain espace de travail, vous pouvez accéder à:

AppMenu > Preferences > Workspace Settings

Sinon, si vous souhaitez que ces dossiers soient ignorés dans tous vos espaces de travail, accédez à:

AppMenu > Preferences > User Settings

et ajoutez ce qui suit à votre configuration:

//-------- 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 différence entre l'espace de travail et les paramètres utilisateur est expliquée dans les documents de personnalisation

Alex Dima
la source
9
S'il est obsolète, veuillez le mettre à jour ou le supprimer pour éviter toute confusion et d'éventuels downvotes!
user3413723
1
sérieusement, faites un montage. la réponse acceptée ci-dessus fonctionne dans le dernier code VS sur macOS. abandonnez donc votre BS pour les votes positifs et apportez une contribution utile à la réponse réelle.
heisian
18

Si je comprends bien, vous souhaitez exclure des fichiers du viseur flou vscode. Si tel est le cas, je suppose que les réponses ci-dessus concernent les anciennes versions de vscode. Ce qui a fonctionné pour moi, c'est d'ajouter:

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

à mon settings.json. Ce fichier peut être ouvert par File> Preferences>Settings

Nahush Farkande
la source
15

Je suis un idiot, il m'a donc fallu un certain temps pour le réaliser, mais assurez-vous que l' icône Gear est cliquée sur la recherche globale afin que vos paramètres puissent être appliqués.

Icône de Visual Studio Code Gear sur la recherche cliquée

Un pantalon
la source
1
vous n'êtes pas un idiot parce que c'est la réponse qui l'a corrigé pour moi, je dois avoir accidentellement cliqué sur cette icône dans le passé, il n'est donc pas évident que cette petite icône le contrôle et elle est à peine perceptible lorsqu'elle est activée ou désactivée
vesperknight
Vous n'êtes certainement pas idiot d'avoir raté ce merveilleux morceau d'UX, mais pouvez-vous me dire en quoi la vôtre est différente de cette réponse précédente , si elle l'est - eh bien, au-delà de cette réponse étant en mode sombre? ; ^ D
ruffin
3

Je voulais exclure complètement 1 des dossiers Workspace, mais j'ai trouvé cela difficile, car indépendamment des modèles d'exclusion, il exécute toujours la recherche sur chacun des dossiers Workspace.

En fin de compte, la solution a été d'ajouter **aux modèles d'exclusion de recherche des paramètres de dossier .

entrez la description de l'image ici

LStarky
la source
2

Après avoir configuré les fichiers search.exclude et file.exclude mentionnés dans les réponses précédentes, exécutez la commande "Clear Editor History" (utilisez la palette de commandes pour le faire - CTRL + MAJ + P).

Ce n'est qu'après cela que les fichiers exclus n'apparaîtront pas dans votre menu d'ouverture rapide.

Mise à jour: vous pouvez également exécuter la commande "Effacer l'historique des commandes". J'ai oublié cela.

Bruno Gimenes
la source
1

Oubliez ci-dessus pour vscode exclure le modèle de recherche, essayez ci-dessous le modèle qui fonctionne pour n'importe quel dossier dans vscode dernière version!

! ../../../ locales / *

par exemple, j'ai cherché comme ci-dessous l' exemple de paramètres vscode clude

fichiers à inclure: * .js

fichiers à exclure: ** / node_modules,! ../../../ locales / ,! ../../../ theme / ,! ../../ admin / client / *

Hamit YILDIRIM
la source
1

Si vous avez plusieurs dossiers dans votre espace de travail, configurez le search.excludesur chaque dossier. Il y a une liste déroulante à côté WORKSPACE SETTINGS.

Onglet Paramètres du dossier

Michael David Gieson
la source
0

La réponse courte est de séparer par virgule les dossiers que vous souhaitez ignorer dans "fichiers à exclure".

  1. Lancer la recherche à l'échelle de l'espace de travail: CTRL + MAJ + f
  2. Développez la recherche globale avec le bouton à trois points
  3. Entrez votre terme de recherche
  4. Par exemple, dans les fichiers à exclure -écrire dans le champ d'entrée babel,concatpour exclure le dossier "babel" et le dossier "concat" dans la recherche (assurez-vous que le bouton d'exclusion est activé).
  5. Appuyez sur entrée pour obtenir les résultats.
domih
la source
0

Exclure tous les sous-dossiers fonctionne comme ceci (version 2019)

comprendre

./db

exclure

./db/*
Walter A. Jablonowski
la source
-1

Créez un fichier avec .gitignore et mettez le dossier ou le nom de fichier que vous voulez ignorer.

ignorer tout ce qui se trouve sous le dossier node_modules

echo node_modules/ > .gitignore 
reza.cse08
la source
3
la question ne concerne pas git
Saman Shafigh
-1

Je voulais rechercher le terme "Stripe" dans tous les fichiers sauf ceux dans un plugin (dossier "plugin") ou dans les fichiers se terminant par ".bak", ".bak2" ou ".log" (c'est dans le wp -contenu structure du dossier d'une installation wordpress).

Je voulais juste faire cette recherche une fois et très rapidement, donc je ne voulais pas modifier les paramètres de recherche de mon environnement. Voici comment je l'ai fait (notez les doubles astérisques pour le dossier):

  • Terme de recherche: Stripe
  • Inclure les fichiers: {vide}
  • Exclure des fichiers: * .bak *, * .log, ** / plugins / **

Voici à quoi ça ressemblait

Adam
la source