web-dev-qa-db-fra.com

Ignorer un dossier dans les résultats de recherche

Je cherche une chaîne et cherche des correspondances dans un dossier source, ainsi qu'un dossier de construction (le fichier dans la source est copié pour être construit lors de la construction).

Je n'ai pas besoin du résultat du dossier de construction.

Vim a wildignore qui aide à filtrer les résultats.

Y a-t-il quelque chose de similaire dans intelij?

114
Eric Francis

Marquez votre dossier de construction comme exclu:

File > Project Structure > Modules > Sources > Mark as Excluded (red icon)

Vous pouvez également cliquer avec le bouton droit de la souris sur votre dossier et sélectionner Mark Directory As > Excluded.

Les dossiers exclus (indiqués par rootExcluded) sont ceux qu'IntelliJ IDEA "ignore en partie". Une assistance de codage très limitée est fournie pour les fichiers des dossiers exclus. Les classes contenues dans les dossiers exclus n'apparaissent pas dans l'achèvement du code. Les listes de suggestions et les références à de telles classes apparaissent dans l’éditeur comme non résolues. Lors de la recherche, IntelliJ IDEA ne recherche pas dans les dossiers exclus, etc.

Source

Remarque: Voir la réponse de Nader Hadji Ghanbari pour une autre approche utilisant Scopes.

182
Darek Kay

Réponse courte

En définissant Scope lors de la recherche, vous pouvez inclure/exclure des fichiers/dossiers arbitraires de cette étendue.

Réponse détaillée

Un moyen d'atteindre votre objectif (à l'exclusion des fichiers et des dossiers d'une recherche) consiste à définir une étendue personnalisée. Ceci est particulièrement utile car vous souhaitez parfois exclure un dossier de votre recherche et non du projet entier.

Suivez ces étapes:

  1. Edit -> Find -> Find in path ou appuyez sur Ctrl+Shift+F.

  2. Choisissez Custom dans la section Scope puis choisissez <unknown scope>

Search scopes

  1. Cliquez maintenant sur le bouton + Pour ajouter une nouvelle portée local personnalisée.

Adding a new custom scope

  1. Donnez un nom à la portée et enregistrez-la.

Saving the local custom scope

  1. Vous pouvez maintenant inclure et exclure des répertoires de cette étendue. Vous pouvez d'abord tout ajouter en choisissant include recursively Puis en exclure un par un en choisissant exclude ou exclude recursively.

enter image description here

Notez que vous pouvez même inclure ou exclure des bibliothèques dont dépend votre projet.

  1. Lors de la recherche, vous pouvez choisir la portée effective dans la section Scope de la boîte de dialogue Find in Path.

Plus d'informations

Vous pouvez consulter le docs JetBrains sur les étendues pour plus d'informations. Les étendues peuvent être utilisées non seulement lors de la recherche, mais également dans de nombreux autres cas d'utilisation d'IntelliJ IDEA.

Les motifs

Vous pouvez utiliser Patterns pour définir une portée qui les rend encore plus puissants et évolutifs.

l'utilisation de modèles est un autre moyen d'exclure des fichiers et des dossiers. Par exemple, file:src/main/Java//*&&!file:src/main/Java/my//* Exclura tous les fichiers du dossier my.

enter image description here

73
Nader Ghanbari

Dans Intellij 15, pour exclure un dossier, procédez comme suit:

dans la fenêtre Projet, sélectionnez le dossier, puis cliquez avec le bouton droit de la souris et choisissez "Marquer le répertoire comme"> "Exclus".

19
allkenang

Cliquez avec le bouton droit sur le répertoire -> Marquer le répertoire comme -> Exclus.

9
Pishtewan Agha