No vi, converter caracteres invisíveis em seqüências de escape?

0

Meu texto no vim parece

i am one line
i come in next line
    i come after a tab space

O texto acima pode ser convertido assim,

i am one line\ni come in next line\n\ti come after a tab space
    
por Madhavan Kumar 11.09.2015 / 06:00

1 resposta

2

Do meu entendimento da sua pergunta, você deseja converter novas linhas para a barra invertida de sequência literal seguida de n e converter as guias na barra invertida de seqüência literal seguida de t .

Para substituir o caractere de tabulação, com certeza, sem problemas, é o mesmo que a substituição de string normal. Tente isto:

:%s/\t/\t/

Nota: o reconhecimento de sequências de escape como \t nos padrões de pesquisa pode funcionar apenas no Vim. Não tenho certeza. Se isso não funcionar no seu vi , você deverá digitar um caractere de tabulação real nesse local. A guia será exibida como ^I (mas não é o mesmo que ^ seguido por I ).

:%s/^I/\t/

Para a nova linha, tente a mesma coisa:

:%s/\n/\n/

Mais uma vez, isso pode ser apenas Vim, não tenho certeza. Para substituir novas linhas, você pode estar sem sorte no vi normal porque vi é fundamentalmente um editor baseado em linhas.

    
por 11.09.2015 / 06:31