Comando Vim para transformar linhas com quebra automática em linhas visualmente quebradas com formatação preservada

1

Dadas as seguintes strings, cada uma em uma linha separada (que eu indico por prefixo de números de linha) com indução específica de sintaxe:

1 Standard string with only text or code from some programming language.
2          Standard string with only text or code from some programming language.
3          Standard string with only text or code from some programming language.
4          Standard string with only text or code from some programming language.
5 Standard string with only text or code from some programming language.

Estas são, claro, linhas com quebra automática. Mas, às vezes, * eu teria parágrafos como o do exemplo exibido como uma linha, preservando, por ex. Indicação específica de sintaxe Eu tenho usando o operador = do Vim. Por isso, gostaria que o parágrafo fosse envolvido visualmente com a mesma estrutura que o originalmente empacotado:

Standard string with only text or code from some programming language.
         Standard string with only text or code from some programming language.
         Standard string with only text or code from some programming language.
         Standard string with only text or code from some programming language.
Standard string with only text or code from some programming language.

Existe uma maneira de fazer isso no Vim. Eu preferiria um comando simples parecido com {visual}gq .

* O motivo é principalmente que eu uso o Vim para enviar linhas ou parágrafos de código para uma sessão de replicação ( Python , R o que você tem).

    
por lord.garbage 19.10.2014 / 16:52

1 resposta

1

Em compilações recentes do Vim 7.4, você pode

:set wrap breakindent

e ter as linhas macias quebradas recuadas (controladas pela opção 'breakindentopt' ). No entanto, esse é um recuo simples e fixo; você não pode influenciar dinamicamente isso (como seria necessário para manter a sintaxe).

Como alternativa, você pode reformatar (ou seja, quebra automática) com gq e, em seguida, :join ou :undo antes de enviá-lo para o REPL.

    
por 19.10.2014 / 20:16

Tags