Funcionalidade parecida com o Grep para o Notepad ++?

49

Eu gostaria de ter algumas funcionalidades semelhantes ao grep no Notepad ++.

Na versão mais simples, gostaria de poder copiar todas as linhas do buffer atual que contêm a palavra foo para um novo buffer. Eu posso usar o plugin TextFX para esconder todas as linhas sem foo , mas isso não faz tudo o que eu quero (é perdido em Alt - Tab , eu posso ' t copiar apenas as linhas correspondentes, etc.).

    
por Frank Meulenaar 11.04.2012 / 09:38

4 respostas

72

Ctrl + F - > vá para a guia Mark - > alternar Linha de marcadores - > Clique em Marcar tudo .

Selecione o menu Pesquisar - > Bookmark - > Copiar linhas marcadas como favoritos .

    
por 12.04.2012 / 14:51
12

Eu estava apenas olhando para essa mesma pergunta. Não tenho certeza se você está ciente; na caixa de diálogo Localizar, você pode Localizar todos no documento atual , que abrirá uma janela na parte inferior, mostrando as linhas correspondentes. Então você pode copiar isso em um novo documento.

Infelizmente, inclui algumas informações irrelevantes nos resultados (número da linha, etc.), mas você pode filtrar isso usando o modo de coluna.

    
por 12.04.2012 / 14:38
2

Outra ótima solução é usar o plugin NppExec para adicionar um comando grep para o Notepad ++.

A principal vantagem sobre a solução "Bookmarks" é que ela roda muito mais rápido, especialmente para arquivos grandes, e você não precisa modificar o arquivo original. Observe que você precisa criar um script pequeno uma vez para disponibilizar esse recurso em seu Notepad ++.

O exemplo da minha solução é para Windows e eu uso o findstr , que é como um grep ferramenta de comando disponível em todas as máquinas Windows. Mas é claro que você também pode usar qualquer outro clone do grep de sua escolha .

Etapa 1: instalar o plugin NppExec

Vá para Plugins / Plugin Manager / Show Plugin Manager , role para baixo até NppExec, selecione este plugin e clique em Instalar. Você pode ter que reiniciar o Notepad ++ para concluir o processo de instalação.

Etapa 2: crie um script pequeno para o NppExec

Vá para Plugins / NppExec / Execute , digite o seguinte script e salve-o como "grep":

SET local OUTFILE = "c:\temp\$(FILE_NAME).temp"
INPUTBOX "Input filter string"
cmd /c findstr $(INPUT) "$(FULL_CURRENT_PATH)" >$(OUTFILE)
NPP_OPEN $(OUTFILE)

(por favor, verifique se o caminho para o OUTFILE funciona para o seu ambiente)

Passo 3: Adicione um item de menu para o seu script (Opcional)

Vá para Plugins / NppExec / Advanced Options , escolha o script "grep" em Associated script e clique em OK para salvar. Reinicie o bloco de notas conforme solicitado pelo NppExec para concluir a adição do novo item de menu.

Passo 4: Adicione um atalho para o seu script (Opcional)

Vá para Settings / Shortcut Mapper / Plugin commands , role a tela para baixo até encontrar seu comando de script "grep" e defina um atalho para ele. por exemplo. ALT-G

    
por 12.01.2017 / 10:47
-1

Etapa 5: crie um script para salvamento rápido e documento grep

Vá para Plugins / NppExec / Execute, digite o seguinte script e salve-o como "grep":

SET local AUTOSAVEFILE = "%tmp%\NpPPautosave.tmp"
SET local OUTFILE = "%tmp%\NpPPautosaveToGrep.temp"
NPP_SAVEAS "%tmp%\NpPPfile.tmp"
INPUTBOX "Input string for GREP"
cmd /c findstr $(INPUT) $(AUTOSAVEFILE) > $(OUTFILE)
NPP_OPEN $(OUTFILE)

    
por 13.01.2018 / 14:00