Wybierz foldery, które mają być ignorowane podczas wyszukiwania w kodzie VS

364

W tej chwili, gdy używam + Odo wyszukiwania plików, dopasowanie rozmyte wydaje się działać na wszystkich plikach w bieżącym projekcie. Niestety obejmuje to wiele plików z katalogów kompilacji i dostawców. Na przykład, jeśli chcę wyszukać wszystkie pliki JavaScript i zrobić + Oi wpisać .js, wyniki dla plików i symboli zawierają około 1500 trafień, a wszystkie z wyjątkiem dwóch są kompletnym szumem.

Czy istnieje sposób na określenie niektórych katalogów, które mają być ignorowane w celu wyszukiwania?

J. Abrahamson
źródło
1
Hmm, poczekaj chwilę, w 2019 r. ⌘O oznacza „Otwórz plik ...” i wątpię, aby VS Code miał dużą kontrolę nad wszystkimi funkcjami wyszukiwania (specyficznymi dla systemu operacyjnego), które tam możesz zobaczyć. To może być w stanie filtrować pliki tylko do określonych rozszerzeniach?
SamB

Odpowiedzi:

689

Wygląda na to, że preferencje te uległy zmianie od czasu odpowiedzi @ alex-dima.

Zmiana ustawień

Z menu wybierz: Plik -> Preferencje -> Ustawienia -> Ustawienia użytkownika / obszaru roboczego. Filtruj ustawienia domyślne do search.

Możesz zmodyfikować to search.excludeustawienie (skopiuj z ustawień domyślnych do ustawień użytkownika lub obszaru roboczego). Dotyczy to tylko wyszukiwań. Pamiętaj, że ustawienia z files.excludezostaną zastosowane automatycznie.

Jeśli ustawienia nie działają :

  1. Upewnij się, że nie wyłączasz wykluczenia wyszukiwania. W obszarze wyszukiwania rozwiń pole wprowadzania „pliki do wykluczenia” i upewnij się, że ikona koła zębatego jest zaznaczona.

  2. Może być także konieczne wyczyszczenie historii edytora (patrz: https://github.com/Microsoft/vscode/issues/6502 ).

Przykładowe ustawienia

Na przykład rozwijam aplikację EmberJS, która zapisuje tysiące plików w katalogu tmp .

Jeśli wybierzesz WORKSPACE SETTINGSpo prawej stronie pola wyszukiwania, wykluczenie wyszukiwania zostanie zastosowane tylko do tego konkretnego projektu. Odpowiedni .vscodefolder zostanie dodany do folderu głównego zawierającego settings.json.

Oto moje przykładowe ustawienia:

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

Uwaga : dołącz ** na początku każdego wykluczenia wyszukiwania, aby zakryć wyszukiwane hasło w dowolnych folderach i podfolderach.

Obraz wyszukiwania przed aktualizacją ustawień :

Przed aktualizacją ustawień wyniki wyszukiwania są nieporządne.

Obraz wyszukiwania przed aktualizacją ustawień

Obraz wyszukiwania po aktualizacji ustawień:

Po zaktualizowaniu ustawień wyniki wyszukiwania są dokładnie tym, czego chcę.

Obraz wyszukiwania po aktualizacji ustawień.

Strzelec
źródło
16
to przestało działać dla mnie w najnowszej wersji ... jakiś pomysł dlaczego?
NSjonas,
3
Czy istnieje sposób, aby zastosować to do funkcji „Szybkie otwieranie”? Ctrl + P na PC i Cmd + P na Macu. Gdy szukam plików za pomocą tej funkcji, nadal się wyświetlają.
glandrum101
7
Aby to zadziałało, wyczyść historię edytora. github.com/Microsoft/vscode/issues/6502
Jaydeep Solanki
5
Musiałem uruchomić polecenie „wyczyść historię edytora” (patrz tutaj: github.com/Microsoft/vscode/issues/6502#issuecomment-273697138 ) i ponownie uruchomić VS Code, aby to dla mnie zadziałało.
Isaac Gregson
19
Pamiętaj, że można wyłączyć wykluczenie wyszukiwania podczas wyszukiwania plików. W obszarze wyszukiwania rozwiń pole wprowadzania „pliki do wykluczenia” i upewnij się, że ikona koła zębatego jest zaznaczona. Dzięki temu ustawienia wykluczenia wyszukiwania zostaną zachowane.
Robert Waddell,
167

Upewnij się, że zaznaczono tryb „Użyj ustawień wykluczania i ignoruj ​​pliki” wprowadź opis zdjęcia tutaj

atreeon
źródło
5
Jak wykluczyć wiele folderów?
Wouter Vanherck,
23
@ WouterVanherck wystarczy dodać przecinek, aby oddzielić każdy plik lub folder, który chcesz wykluczyć. Przykład:./src/public/,src/components/
Sgnl
44

Aktualizacja kwietnia 2018 r

Możesz to zrobić w sekcji wyszukiwania vscode, wstępnie ustalając wykrzyknik w każdym folderze lub pliku, który chcesz wykluczyć.

wprowadź opis zdjęcia tutaj

Christopher Grigg
źródło
Dokładnie! idealny
Taffarel Xavier
25

Ta odpowiedź jest nieaktualna

Jeśli są to foldery, które chcesz zignorować w określonym obszarze roboczym, możesz przejść do:

AppMenu > Preferences > Workspace Settings

W przeciwnym razie, jeśli chcesz, aby te foldery były ignorowane we wszystkich obszarach roboczych, przejdź do:

AppMenu > Preferences > User Settings

i dodaj do konfiguracji:

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

Różnica między obszarem roboczym a ustawieniami użytkownika została wyjaśniona w dokumentach dostosowywania

Alex Dima
źródło
9
Jeśli jest nieaktualny, zaktualizuj go lub usuń, aby uniknąć zamieszania i ewentualnych negatywnych opinii!
user3413723,
1
serroiusiu, zrób edycję. powyższa zaakceptowana odpowiedź DZIAŁA w najnowszym kodzie VS na macOS. więc porzuć swoje BS, aby uzyskać głosy poparcia i wnieść użyteczny wkład w rzeczywistą odpowiedź.
heisian
18

Jeśli dobrze rozumiem, chcesz wykluczyć pliki z wyszukiwarki rozmytej vscode. W takim przypadku zgaduję, że powyższe odpowiedzi dotyczą starszych wersji vscode. Dla mnie zadziałało dodanie:

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

do mojego settings.json. Ten plik można otworzyć poprzez File> Preferences>Settings

Nahush Farkande
źródło
15

Jestem idiotą, więc zajęło mi to trochę czasu, ale upewnij się, że kliknij ikonę koła zębatego w globalnym wyszukiwaniu, aby można było zastosować ustawienia.

Kliknięto ikonę narzędzia Visual Studio Code Gear w wyszukiwarce

Spodnie
źródło
1
nie jesteś idiotą, ponieważ to jest odpowiedź, która mnie naprawiła, musiałem przypadkowo kliknąć tę ikonę w przeszłości, nie jest tak oczywiste, że ta mała ikona kontroluje to i jest ledwo zauważalna, gdy jest włączona lub wyłączona
vesperknight
Z pewnością nie jesteś idiotą, który przegapił ten wspaniały UX, ale czy możesz mi powiedzieć, czym różni się on od twojej wcześniejszej odpowiedzi , jeśli jest - cóż, poza tym, że jest w trybie ciemności? ; ^ D
ruffin
3

Chciałem całkowicie wykluczyć 1 z folderów Workspace, ale stwierdziłem, że jest to trudne, ponieważ niezależnie od wzorców wykluczania zawsze uruchamia wyszukiwanie w każdym z folderów Workspace.

Ostatecznie rozwiązaniem było dodanie **do wzorców wykluczania wyszukiwania w Ustawieniach folderów .

wprowadź opis zdjęcia tutaj

LStarky
źródło
2

Po skonfigurowaniu funkcji search.exclude i file.exclude wspomnianych w poprzednich odpowiedziach uruchom polecenie „Wyczyść historię edytora” (w tym celu użyj palety poleceń - CTRL + SHIFT + P).

Dopiero potem wykluczone pliki nie pojawią się w menu szybkiego otwierania.

Aktualizacja: możesz także uruchomić polecenie „Wyczyść historię poleceń”. Zapomniałem o tym.

Bruno Gimenes
źródło
1

Zapomnij o wykluczeniu wzorca wyszukiwania vscode, spróbuj poniżej wzorca, który działa dla dowolnego folderu w ostatniej wersji vscode!

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

na przykład szukałem jak poniżej ustawienia przykładowego kodu vscode

pliki do dołączenia: * .js

pliki do wykluczenia: ** / node_modules,! ../../../ locales / ,! ../../../ theme / ,! ../../ admin / client / *

Hamit YILDIRIM
źródło
1

Jeśli masz wiele folderów w obszarze roboczym, skonfiguruj search.excludedla każdego folderu. Obok znajduje się menu rozwijane WORKSPACE SETTINGS.

Karta Ustawienia folderów

Michael David Gieson
źródło
0

Krótka odpowiedź polega na rozdzieleniu przecinków folderów, które chcesz zignorować w „plikach do wykluczenia”.

  1. Rozpocznij wyszukiwanie w całym obszarze roboczym: CTRL + SHIFT + f
  2. Rozwiń globalne wyszukiwanie za pomocą przycisku z trzema kropkami
  3. Wpisz wyszukiwane hasło
  4. Na przykład w plikach do wykluczenia -input pole zapisu, babel,concataby wykluczyć folder „babel” i folder „concat” w wyszukiwaniu (upewnij się, że przycisk wykluczenia jest włączony).
  5. Naciśnij Enter, aby uzyskać wyniki.
domih
źródło
0

Wyklucz wszystkie z podfolderów działa w ten sposób (wersja 2019)

zawierać

./db

wykluczać

./db/*
Walter A. Jabłowski
źródło
-1

Utwórz plik za pomocą .gitignore i umieść nazwę folderu lub pliku, który chcesz zignorować.

aby zignorować wszystko poniżej folderu node_modules

echo node_modules/ > .gitignore 
reza.cse08
źródło
3
pytanie nie dotyczy git
Saman Shafigh
-1

Chciałem wyszukać termin „Stripe” we wszystkich plikach oprócz tych w wtyczce (folder „plugin”) lub w plikach kończących się na „.bak”, „.bak2” lub „.log” (to jest wp -konstrukcja struktury folderów instalacji wordpress).

Chciałem tylko przeprowadzić to wyszukiwanie raz i bardzo szybko, więc nie chciałem zmieniać ustawień wyszukiwania w moim środowisku. Oto jak to zrobiłem (zwróć uwagę na podwójne gwiazdki dla folderu):

  • Szukany termin: pasek
  • Uwzględnij pliki: {puste}
  • Wyklucz pliki: * .bak *, * .log, ** / plugins / **

Oto jak to wyglądało

Adam
źródło