Texto sublime 2 - encontre e substitua globalmente (todos os arquivos e em todos os diretórios)

121

Existe alguma maneira de find and replace text string automatically in all folder's files?

sou eu
fonte

Respostas:

234

Sim, há vários arquivos de pesquisa e substituição .

Pressione ctrlshiftF( cmdshiftFno MacOS):

insira a descrição da imagem aqui

No Wherecampo, você também pode adicionar filtros para pesquisar apenas pastas e arquivos necessários. Se nada estiver definido, a pesquisa será feita em todos os arquivos listados na barra lateral.

Se você clicar duas vezes em uma linha do resultado da pesquisa, o Sublime irá pular para essa linha.

Observe estes ícones na barra de pesquisa:

insira a descrição da imagem aqui

O primeiro ( mostrar contexto ) alterna o contexto no formato do resultado (se ativado, algumas linhas de texto são mostradas antes e depois da linha correspondente). O segundo permite mostrar o resultado em um novo buffer ou em um console.

Riccardo Marotti
fonte
2
Existe uma maneira de controlar quais dos casos encontrados em "Localizar nos arquivos" foram substituídos? O botão Substituir substitui_Todos.
George Shaw
Eu acho que a única maneira é usar a pesquisa de vários arquivos para obter os arquivos que você precisa modificar e, em seguida, usar a pesquisa normal e substituir (cmd + alt + F), arquivo por arquivo.
Riccardo Marotti 08/01
Não pretendo saber mais do que o próprio criador do ST, mas você pode simplesmente fechar os arquivos (clique com o botão do meio do mouse ou ctrl + w) onde não precisa das alterações e clicar em substituir. Depois, você pode usar Ctrl + Shift + t para reabrir os arquivos fechados. Você também pode "adicionar um filtro de exclusão" clicando no botão no meio (as reticências) e anotar os arquivos nos quais não deseja substituições.
Ivan Castellanos
6
Se você colocar <project>no campo "Onde", ele pesquisará recursivamente todas as pastas e arquivos do projeto aberto no momento. Você também pode digitar um caminho relativo (por exemplo, search/for/things/here/e isso só vai pesquisar essa pasta, de forma recursiva, em relação à raiz do seu projeto muito útil..
jeffbyrnes
2
Por esta onde o campo para chegar por padrão com busca e substituição (ctrl + H) I adicionado este aos meus atalhos de teclado do usuário: { "keys": ["ctrl+h"], "command": "show_panel", "args": {"panel": "find_in_files"} }
reflexiv
8

Pressione ctrlshiftF( cmdshiftFno  Mac OS X :) e depois coloque *.*no where:campo

Isso abrirá a pesquisa para todos os arquivos do projeto, em vez de apenas abrir arquivos ou pastas.

Você também pode usar isso para pesquisar apenas arquivos de um determinado tipo ou com um determinado nome, independentemente do tipo. São apenas curingas para o nome do arquivo e a extensão.

Mike Lyons
fonte