web-dev-qa-db-fra.com

Comment exclure un dossier de la recherche dans sublime text 3 de manière permanente?

existe-t-il un moyen de toujours ignorer un dossier ... en mode projet?.

J'ai plusieurs applications dans un référentiel et j'ai "node_modules" dans chaque application

mainapp
---microapp
-----node_modules
---microapp2
-----node_modules
---index
---config
---assets

Je veux exclure de la recherche le node_modules dossier lorsque je cherche à l’intérieur du projet dans la structure ci-dessus.

39
nolawi

Allez dans le menu Paramètres et dans le Preferences.sublime-settings fichier pour l’utilisateur et ajoute un nouveau noeud au json nommé folder_exclude_patterns. Ajoutez les dossiers que vous ne souhaitez pas afficher (au format tableau json).

Exemple:

{
    // ... other settings
    "folder_exclude_patterns": ["node_modules", "another_folder"],
}

Si vous souhaitez exclure certains répertoires ou fichiers sans les masquer dans la barre latérale, vous pouvez ignorer la solution ci-dessus et Add Exclude Filter dans la section Where de la barre de recherche. Mais vous devrez le spécifier chaque fois que vous modifierez le répertoire de recherche.

54
SUB0DH

Si vous accédez au menu Préférences, puis sélectionnez Paramètres, un fichier JSON contenant tous les paramètres et leurs valeurs par défaut sera ouvert. Ce fichier sert également à documenter la signification des paramètres. Deux d'entre eux sont pertinents ici. Voici l'extrait de code du fichier JSON.

// folder_exclude_patterns and file_exclude_patterns control which files
// are listed in folders on the side bar. These can also be set on a per-
// project basis.
"folder_exclude_patterns": [".svn", ".git", ".hg", "CVS"],
"file_exclude_patterns": ["*.pyc", "*.pyo", "*.exe", "*.dll", "*.obj","*.o", "*.a", "*.lib", "*.so", "*.dylib", "*.ncb", "*.sdf", "*.suo", "*.pdb", "*.idb", ".DS_Store", "*.class", "*.psd", "*.db", "*.sublime-workspace"],
// These files will still show up in the side bar, but won't be included in
// Goto Anything or Find in Files
"binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.Zip"],

Il est dit ici que folder_exclude_patterns le cache dans la barre latérale, tandis que binary_file_patterns le cache de la recherche. Donc, si vous voulez l'exclure des deux, vous pouvez ouvrir le fichier de paramètres de l'utilisateur (qui remplace les paramètres par défaut) et ajouter;

{
    "folder_exclude_patterns": ["node_modules"],
    "binary_file_patterns": ["*/node_modules/*"]
}

Notez que les deux sont différents car le premier est un modèle de dossier alors que le dernier est un modèle de fichier.

28
Alex Altair

J'ai ajouté "node_modules/", "coverage/", "tmp/cache/" à binary_file_patterns pour mon projet de taille moyenne Ruby sur Rails) afin d’accélérer mes recherches extrêmement lentes:

"binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", 
                         "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.Zip",  
                         "node_modules/", "coverage/", "tmp/cache/"],

Auparavant, la recherche de tous les fichiers prenait environ 7 secondes:

Searching 28526 files for "as records_with_errors"

Après, Trouver tout dans les fichiers prend moins de 1 seconde:

Searching 1658 files for "as records_with_errors" 

J'ai ajouté coverage pas pour la performance, mais pour éviter les résultats de recherche redondants et inutiles.


BTW, la plupart des solutions que j'ai trouvées à ce problème se concentrent sur folder_exclude_patterns, et néglige que binary_file_patterns peut spécifier des modèles de dossier, probablement en raison de son nom et des paramètres par défaut de Sublime.

En utilisant folder_exclude_patterns n'est PAS une solution propre pour le PO. Le fait de masquer les dossiers de la barre latérale vous incitera certainement à contester votre santé mentale lorsqu'un jour, vous rechercherez ces fichiers qui n'existent tout simplement pas.

Cette préoccupation s’applique également à la suppression des résultats de la recherche, bien entendu, qui doivent être pesés avec soin avant de bloquer trop de dossiers. N'incluez que les dossiers/modèles que vous souhaitez activement supprimer ... n'incluez pas les éléments que vous pensez ne pas avoir besoin de rechercher s'ils ne vous causent pas de problèmes.

2
David Hempy