Pular para conteúdo

Plugin Localizar em arquivos

Pesquise em todos os arquivos de uma pasta no disco e salte direto para cada correspondência — para encontrar todos os lugares em que um termo aparece em um projeto. A busca roda em segundo plano, então o editor continua responsivo em árvores grandes.

Onde encontrá-lo

Pesquisar ▸ Localizar em arquivos… — atalho Ctrl+Shift+F.

Campo / opção Significado
Localizar O termo a pesquisar (com histórico de consultas recentes).
Pesquisar em O escopo: Pasta ou Documentos abertos (veja abaixo).
Filtros Globs de nome de arquivo a incluir, p. ex. *.cpp *.h ou *.txt. Vazio significa todos os arquivos. (Filtros recentes são lembrados.) Somente no escopo Pasta.
Diretório A pasta a pesquisar; Procurar… escolhe uma. Diretórios recentes são lembrados. Somente no escopo Pasta.
Em todas as subpastas Entra nos subdiretórios (ligado por padrão). Somente no escopo Pasta.
Diferenciar maiúsculas de minúsculas Busca sensível à caixa.
Somente palavras inteiras Corresponde apenas a palavras completas.
Modo de pesquisa Normal (literal), Estendido (decodifica \n, \t, \r, \0, \xNN) ou Expressão regular (regex ECMAScript).

Escopo da busca

Os dois escopos são deliberadamente disjuntos — um resultado sempre vem de exatamente um deles:

Escopo O que é pesquisado
Pasta Os arquivos em disco sob Diretório (respeitando Filtros e Em todas as subpastas). Abas abertas que ficam fora daquela pasta não são incluídas, e edições não salvas não são vistas — esta é uma varredura do disco.
Documentos abertos Os buffers ao vivo de todas as abas abertas, incluindo as sem título e as edições não salvas. Os filtros e o diretório são ignorados.

Pasta é o padrão enquanto uma pasta de espaço de trabalho está aberta (Arquivo ▸ Abrir pasta); Documentos abertos é o padrão caso contrário. A Pasta continua disponível sempre que um diretório é conhecido (a pasta do arquivo ativo, uma lembrada, ou uma que você escolha com Procurar…), então Localizar tudo sempre pesquisa em alguma coisa — ele nunca fica sem fazer nada em silêncio.

Resultados

As correspondências se acumulam em um painel acoplável de Resultados conforme são encontradas, agrupadas por arquivo com o número da linha e o texto correspondente. Dê um duplo clique em uma ocorrência para abrir aquele arquivo e saltar para a linha e a coluna exatas; uma ocorrência do escopo Documentos abertos ativa a aba dela (com as edições que produziram a correspondência intactas) em vez de recarregar o arquivo do disco.

O cabeçalho do painel tem um botão Parar enquanto uma busca está em andamento. Fechar a caixa de diálogo não interrompe uma busca em andamento — o painel de Resultados é o dono dela.

Como ele varre

Uma thread em segundo plano percorre o diretório escolhido (entrando nos subdiretórios, se for o caso) e lê cada arquivo que passa pelo filtro. As ocorrências chegam ao painel em lotes e o percorredor espera quando o painel fica para trás, de modo que uma árvore enorme mantém a interface responsiva. Uma busca para após 20 000 correspondências com "Resultados truncados em 20000 correspondências — restrinja o filtro" — esse é um limite de linhas correspondentes, não de arquivos varridos. O escopo Documentos abertos trabalha sobre buffers em memória e não precisa de thread.