Cole a seleção de blocos visuais em suas próprias linhas

12

Não tenho muita certeza de como descrever o que gostaria de fazer. Basicamente, eu gostaria de usar o modo de bloco visual para selecionar uma região de texto e colá-la "como uma coleção de linhas" e não como um retângulo.

a b
c d
e f
g h

depois de pressionar gg0<c-v>Gyo retângulo a/c/e/gestá no registro yank padrão (eu esqueci o que é chamado).

Se colar o retângulo p, obtenho o seguinte:

aa b
cc d
ee f
gg h

Gostaria de saber se é possível colar uma seleção de retângulo / bloco visual em um grupo de linhas por si só, como se fosse uma seleção visual comum.

a
c
e
g
a b
c d
e f
g h
Gregory Nisbet
fonte
Você pode definir o tipo de registro para a linha antes de colar. Algo parecido com isto: :call setreg('+', @+, 'V'). Dependendo do seu sistema operacional e da sua configuração clipboard, talvez você precise fazer isso para registradores *ou, em "vez disso. É mais longo para digitar do que a resposta abaixo, mas ainda pode ser útil em contextos mais complicados.
Lcd047

Respostas:

15

Tente o seguinte:

:put! "
  • :put: insira o conteúdo do registro especificado
  • !: insira antes da linha atual (o padrão é depois)
  • ": o registro sem nome (verifique os :help registersdetalhes)

Você também pode fazer isso no modo de inserção: Ctrl- r+"

mMontu
fonte