2009-04-08 15 views
13

Si tengo algo seleccionado en VIM en modo visual ... ¿cómo puedo duplicar esa selección y colocarla debajo o encima de la selección.Vim duplicate selection

+0

¿desea seleccionar las mismas líneas pero arriba? o quieres duplicar la selección? –

+0

Quiero duplicar la selección –

Respuesta

27

Sólo hit 'y' para dar un tirón lo que tienes seleccionado visualmente , la "p" para pegar debajo del cursor o "P" para pegar arriba.

Y ya que lo preguntas acerca pegar debajo del bloque de selección, voy a copiar lo michael dijo a continuación: Después de y dar un tirón, que '> se mueva a la selección después del bloque, y luego p a pegar.

0

¿Desea copiar/pegar toda la línea? Si es así, salir de modo visual, utilizar

yy

a y ANK toda la línea, a continuación,

p

a p aste.

+0

a) él no dijo que era una sola línea, yb) ¿por qué salir del modo visual si ya lo seleccionó? –

1

uso y de tirón (copiar) la selección en un búfer

la p para pegar la selección en la que desea que sea

+0

utilizando p para pegar rompe el formateo porque no toma todas las líneas –

0

tiene dos opciones

  • yy que copia la línea actual, entonces p para pegar
  • la selección (con v por ejemplo), luego copia con y y pegar con p
+0

usando p para pegar rompe el formateo porque no toma todas las líneas –

3

I Además del combo V ... yp, es posible que desee conocer algunos saltos '< y'> para acceder al último carácter del texto del modo visual anterior. Específicamente, si desea pegar debajo, iría V ... y '> p si es una línea múltiple larga, puede ser útil.

Es uno de esos saltos pueden serle útil si estás haciendo esto mucho

+0

que no parecen funcionar, presionas 'y luego MAYÚS +. para obtener>? –

+0

Funciona para mí. –

+0

Actualmente estoy usando un complemento VIM para Netbeans así que este podría ser el problema –

6

Desde que hago esto mucho (seleccionar un bloque, tirón, vaya al final de la última selección visual, pegar) He creado un atajo bloque visual bajo Ctrl-p (antes de esto, ctrl-p parece ser el mismo que j en un bloque visual)

vmap <C-p> y'>p 

ahora es sólo hacer una selección visual y presionando Ctrl-p.