Escolha pastas a serem ignoradas durante a pesquisa no código VS

364

No momento, quando uso + Opara procurar arquivos, a correspondência difusa parece operar sobre todos os arquivos do projeto atual. Infelizmente, isso inclui vários arquivos dos diretórios de compilação e de fornecedores. Então, por exemplo, se eu quiser pesquisar todos os arquivos JavaScript e fazer + Oe digitar .js, os resultados do arquivo e do símbolo incluem cerca de 1500 ocorrências e todas, exceto as duas, são um ruído completo.

Existe uma maneira de especificar certos diretórios a serem ignorados para fins de pesquisa?

J. Abrahamson
fonte
11
Hmm, espere um minuto, em 2019 ⌘O significa "Abrir arquivo ...", e duvido que o VS Code tenha muito controle sobre quaisquer recursos de pesquisa (específicos do SO) que você possa ver lá. Ele pode ser capaz de filtrar os arquivos para apenas certas extensões?
SamB 30/05/19

Respostas:

689

Essas preferências parecem ter mudado desde a resposta de @ alex-dima.

Alterar configurações

No menu, escolha: Arquivo -> Preferências -> Configurações -> Configurações do usuário / área de trabalho. Filtre as configurações padrão para search.

Você pode modificar a search.excludeconfiguração (copiar da configuração padrão para as configurações do usuário ou da área de trabalho). Isso se aplicará apenas a pesquisas. Observe que as configurações de files.excludeserão aplicadas automaticamente.

Se as configurações não funcionarem :

  1. Não desative a exclusão de pesquisa. Na área de pesquisa, expanda a caixa de entrada "arquivos a serem excluídos" e verifique se o ícone de engrenagem está selecionado.

  2. Também pode ser necessário limpar o histórico do editor (consulte: https://github.com/Microsoft/vscode/issues/6502 ).

Configurações de exemplo

Por exemplo, estou desenvolvendo um aplicativo EmberJS que salva milhares de arquivos no diretório tmp .

Se você selecionar WORKSPACE SETTINGSno lado direito do campo de pesquisa, a exclusão de pesquisa será aplicada apenas a esse projeto em particular. E uma .vscodepasta correspondente será adicionada à pasta raiz que contém settings.json.

Este é o meu exemplo de configurações:

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

Nota : inclua um ** no início de qualquer exclusão de pesquisa para cobrir o termo de pesquisa em todas as pastas e subpastas.

Imagem da pesquisa antes de atualizar as configurações :

Antes de atualizar as configurações, os resultados da pesquisa estão uma bagunça.

Imagem da pesquisa antes de atualizar as configurações

Imagem da pesquisa após atualizar as configurações:

Depois de atualizar as configurações, os resultados da pesquisa são exatamente o que eu quero.

Imagem da pesquisa após atualizar as configurações.

Shotty
fonte
16
isso parou de funcionar para mim na versão recente ... alguma idéia por que?
NSJonas #
3
Existe uma maneira de aplicar isso ao recurso "Abertura rápida"? Ctrl + P no PC e Cmd + P no Mac. Quando pesquiso arquivos usando esse recurso, eles ainda aparecem.
glandrum101
7
Certifique-se de limpar o histórico do editor para que isso funcione. github.com/Microsoft/vscode/issues/6502
Jaydeep Solanki
5
Eu tive que executar o comando "limpar histórico do editor" (consulte aqui: github.com/Microsoft/vscode/issues/6502#issuecomment-273697138 ) e reinicie o VS Code para que isso funcione para mim.
Isaac Gregson
19
Observe que é possível desativar a exclusão de pesquisa ao pesquisar arquivos. Na área de pesquisa, expanda a caixa de entrada "arquivos a serem excluídos" e verifique se o ícone de engrenagem está selecionado. Isso garantirá que suas configurações de exclusão de pesquisa sejam respeitadas.
Robert Waddell
167

Verifique se a opção 'Usar configurações de exclusão e ignorar arquivos' está selecionada insira a descrição da imagem aqui

atreeon
fonte
5
Como alguém excluiria várias pastas?
Wouter Vanherck
23
@WouterVanherck, você apenas adicionaria uma vírgula para separar cada arquivo ou pasta que deseja excluir. Exemplo:./src/public/,src/components/
Sgnl
44

Atualização em abril de 2018

Você pode fazer isso na seção de pesquisa do vscode pré-fixando um ponto de exclamação em cada pasta ou arquivo que deseja excluir.

insira a descrição da imagem aqui

Christopher Grigg
fonte
Exatamente! perfeito
Taffarel Xavier
25

Esta resposta está desatualizada

Se estas são pastas que você deseja ignorar em um determinado espaço de trabalho, você pode acessar:

AppMenu > Preferences > Workspace Settings

Caso contrário, se você desejar que essas pastas sejam ignoradas em todos os seus espaços de trabalho, acesse:

AppMenu > Preferences > User Settings

e adicione o seguinte à sua configuração:

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

A diferença entre a área de trabalho e as configurações do usuário é explicada nos documentos de personalização

Alex Dima
fonte
9
Se estiver desatualizado, atualize-o ou exclua-o para evitar confusões e possíveis votos negativos!
user3413723
11
sério, faça uma edição. a resposta aceita acima funciona no código VS mais recente no macOS. então abandone o seu BS para votos positivos e faça uma contribuição útil para a resposta real.
heisian 13/09/17
18

Se bem entendi, você deseja excluir arquivos do localizador difuso vscode. Se for esse o caso, acho que as respostas acima são para versões mais antigas do vscode. O que funcionou para mim é adicionar:

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

para o meu settings.json. Este arquivo pode ser aberto através File> Preferences>Settings

Nahush Farkande
fonte
15

Como sou um idiota, demorei um pouco para perceber isso, mas certifique-se de clicar no ícone de engrenagem na pesquisa global para que suas configurações possam ser aplicadas.

Visual Studio Code Gear Icon on Search clicou

calça
fonte
11
você não é um idiota porque esta é a resposta que o corrigiu para mim; devo ter clicado acidentalmente nesse ícone no passado, não é óbvio que esse pequeno ícone controla isso e é quase imperceptível quando ativado ou desativado
vesperknight
Você certamente não é um idiota por perder essa maravilhosa peça de UX, mas pode me dizer como a sua é diferente da resposta anterior , se for - bem, além dessa resposta estar no modo escuro? ; ^ D
ruffin 13/04
3

Eu queria excluir completamente uma das pastas da área de trabalho, mas achei isso difícil, pois, independentemente dos padrões de exclusão, ele sempre executa a pesquisa em cada uma das pastas da área de trabalho.

No final, a solução foi adicionar **aos padrões de exclusão de pesquisa Configurações de Pasta .

insira a descrição da imagem aqui

LStarky
fonte
2

Depois de configurar o search.exclude e file.exclude mencionados nas respostas anteriores, execute o comando "Limpar o histórico do editor" (use a paleta de comandos para fazer isso - CTRL + SHIFT + P).

Somente depois disso os arquivos excluídos não aparecerão no seu menu de abertura rápida.

Atualização: Você também pode executar o comando "Limpar histórico de comandos". Eu esqueci disso.

Bruno Gimenes
fonte
1

Esqueça os itens acima para vscode excluir padrão de pesquisa, tente abaixo do padrão que está funcionando para qualquer pasta na última versão do vscode!

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

por exemplo, eu pesquisei como abaixo vscode exemplo clude settings

arquivos para incluir: * .js

arquivos a serem excluídos: ** / node_modules,! ../../../ locales / ,! ../../../ theme / ,! ../../ admin / client / *

Hamit YILDIRIM
fonte
1

Se você tiver várias pastas no seu espaço de trabalho, configure-as search.excludeem cada pasta. Há um menu suspenso ao lado de WORKSPACE SETTINGS.

Guia Configurações da pasta

Michael David Gieson
fonte
0

A resposta curta é separar por vírgula as pastas que você deseja ignorar em "arquivos a serem excluídos".

  1. Iniciar pesquisa ampla no espaço de trabalho: CTRL + SHIFT + f
  2. Expanda a pesquisa global com o botão de três pontos
  3. Digite seu termo de pesquisa
  4. Como exemplo, nos arquivos para excluir o campo -input, escreva babel,concatpara excluir a pasta "babel" e a pasta "concat" na pesquisa (verifique se o botão excluir está ativado).
  5. Pressione Enter para obter os resultados.
domih
fonte
0

Excluir tudo das subpastas funciona assim (versão 2019)

incluir

./db

excluir

./db/*
Walter A. Jablonowski
fonte
-1

Crie um arquivo com .gitignore e coloque o nome da pasta ou arquivo que você deseja ignorar.

ignorar tudo abaixo da pasta node_modules

echo node_modules/ > .gitignore 
reza.cse08
fonte
3
a questão não é sobre git
Saman Shafigh
-1

Eu queria procurar o termo "Faixa" em todos os arquivos, exceto aqueles dentro de um plug-in (pasta "plugin") ou dentro dos arquivos que terminam em ".bak", ".bak2" ou ".log" (isso está dentro do wp estrutura de pastas de conteúdo de uma instalação do wordpress).

Eu só queria fazer essa pesquisa uma vez e muito rapidamente, para não alterar as configurações de pesquisa do meu ambiente. Aqui está como eu fiz isso (observe os asteriks duplos para a pasta):

  • Termo de Pesquisa: Faixa
  • Incluir arquivos: {blank}
  • Excluir arquivos: * .bak *, * .log, ** / plugins / **

Aqui está o que parecia

Adão
fonte