Vim / Cygwin: Sem quebras de linha:! saída

3

Estou usando o Vim via MinTTY no Cygwin. Quando eu emito um comando como

:!ls -la

a saída exibida não mostra as linhas novas corretamente. Em vez disso, ele simplesmente salta para a coluna virtual da próxima linha, onde a saída anterior terminou, assim:

This is line 1
              This is line 2
                            This line wraps
around
      Line 4 starts here

Alguém tem uma ideia, o que causa esse comportamento? Algumas configurações:

:set sh?
sh=/bin/bash

:set shellpipe?
shellpipe=2>&1| tee

eles nunca foram tocados por mim. O Vim é iniciado com '-X -T xterm-256color', mas isso não parece ter um papel.

    
por Boldewyn 20.08.2010 / 13:28

2 respostas

1

Parece que é por causa das diferenças de fim de linha. O Vim é padronizado para as terminações de linha CR / LF no estilo DOS. Mas quando você está executando os comandos, você está vendo apenas o LF.

Eu sei que isso não faz sentido.

Mas eu estaria interessado em ver o que acontece se você :set shellpipe?=2>&1\|unix2dos\|tee e :!ls -la

    
por 24.09.2010 / 08:33
0

Eu vi algo parecido quando o vim está tentando fazer um recuo inteligente. Tente usar o buffer de colagem :!a porque isso não faz recuo inteligente.

    
por 20.08.2010 / 16:34