Outros já mencionaram o método mais direto de fazer isso, o que é :4y, mas quero acrescentar duas notas sobre isso que podem ser úteis:
Primeiro, se você digitar :help range, aprenderá tudo sobre o uso de intervalos para aplicar aos comandos do estilo Ex. MUITO útil em muitos casos, e muito mais versátil do que usar números de linha. Por exemplo, se você deseja puxar a primeira linha que começa com "puxar" após o início do documento (mesmo que esteja na primeira linha), use :0/^yank/y. A parte mais poderosa dos intervalos é a capacidade de combiná-los, por exemplo, :./^Chapter/+50?Pete?dsignifica "Encontre a próxima linha para começar com a palavra Capítulo (pesquisando a partir da linha atual), depois pule 50 linhas e pesquise a palavra Pete, e exclua a primeira linha em que a encontra ". Exceto que, na verdade, ele não move o cursor, apenas faz o que você diz.
(Eu usei esse tipo de especificação de intervalo para automatizar a criação de documentação complicada, envolvendo a pesquisa do nome da função sob o cursor e, em seguida, pesquisando a próxima linha que dizia "Descrição" e puxando-a para um registro específico ... etc.)
A outra dica é que você deve saber sobre pular. Digite :help jump-motionspara aprender sobre isso completamente, mas o modo como ele se relaciona aqui é que você pode pular para a linha 4, puxá-lo e depois RETORNAR com 4Gyy''(ou usar barras de apoio em vez de apóstrofes para pular de volta à sua posição inicial exata, em vez de apenas a mesma LINHA você começou às.)
Respostas:
Se o cursor já estiver na linha 12, um simples
faz isso por mim.
fonte
x
? Quando eu tento:4x
eu entendoE140: Use ! to write partial buffer
. Obrigado!:4d
Que tal isso: o cursor está na linha 11, você está no modo "vi".
Aparentemente, você também pode fazer isso com um padrão:
Você pode usar "mo" (mover) em vez de "co" (copiar) para simplesmente mover a linha, em vez de puxar e colocar.
fonte
:4t.
Tente o seguinte:
fonte
Experimentar:
Você pode usar um argumento
0
para colar na linha1
. Isso também funcionará com intervalos:copiará linhas
m
atravésn
de linhak+1
. Além disso, não importa onde você esteja no buffer. Omove
comando,m
funciona da mesma forma.fonte
Isso deve servir:
fonte
Outros já mencionaram o método mais direto de fazer isso, o que é
:4y
, mas quero acrescentar duas notas sobre isso que podem ser úteis:Primeiro, se você digitar
:help range
, aprenderá tudo sobre o uso de intervalos para aplicar aos comandos do estilo Ex. MUITO útil em muitos casos, e muito mais versátil do que usar números de linha. Por exemplo, se você deseja puxar a primeira linha que começa com "puxar" após o início do documento (mesmo que esteja na primeira linha), use:0/^yank/y
. A parte mais poderosa dos intervalos é a capacidade de combiná-los, por exemplo,:./^Chapter/+50?Pete?d
significa "Encontre a próxima linha para começar com a palavra Capítulo (pesquisando a partir da linha atual), depois pule 50 linhas e pesquise a palavra Pete, e exclua a primeira linha em que a encontra ". Exceto que, na verdade, ele não move o cursor, apenas faz o que você diz.(Eu usei esse tipo de especificação de intervalo para automatizar a criação de documentação complicada, envolvendo a pesquisa do nome da função sob o cursor e, em seguida, pesquisando a próxima linha que dizia "Descrição" e puxando-a para um registro específico ... etc.)
A outra dica é que você deve saber sobre pular. Digite
:help jump-motions
para aprender sobre isso completamente, mas o modo como ele se relaciona aqui é que você pode pular para a linha 4, puxá-lo e depois RETORNAR com4Gyy''
(ou usar barras de apoio em vez de apóstrofes para pular de volta à sua posição inicial exata, em vez de apenas a mesma LINHA você começou às.)fonte
Mais curto:
:1t.
copia a primeira linha abaixo da atual.Com intervalos:
:1,4t.
copia as linhas de 1 a 4 (inclusive) abaixo da corrente.Também é possível com números de linha relativos:
:-1t.
copia a linha anterior abaixo da atual.No seu exemplo
:4t-1
, copie a quarta linha abaixo da linha desejada.Nota:
:t
é um sinônimo para o:co[py]
comando.fonte