Digamos que tenía un bloque de texto ...
Lorem ipsum
Lorem ipsum dolor
Lorem ipsum dolor sit
Lorem ipsum dolor sit amet
... y quería insertar un .
al final de cada línea. ¿Cuál sería el mejor enfoque para lograr esto?
insert-mode
visual-block
vim.ryan
fuente
fuente
En la primera línea simplemente escriba:
4:norm A.
4
y:
crea un rango para ti y luegonorm A.
agrega el punto a cada líneaOtra solución para párrafos más largos podría ser:
Vip<C-v>$A.<Esc>
El primer paso es seleccionar el párrafo con el que
Vip
luego cambia al modo de bloque visual y mover el cursor al final de cada línea con el que$
luego agrega el.
a cada líneaA.
y llega al modo normal con<Esc>
para ver el cambio aplicado a cada línea .fuente
:A
comando? No lo encontré a través de:h :A
4:norm A.
lo que serían4:s/$/.
Primero puede seleccionarlos visualmente usando
V
y luego usar las teclas de movimiento para seleccionar todo el texto (o si el texto fuera estrictamente un párrafo que podría hacer [comenzando en la primera línea]V}
). Y luego escribe:
. Esto debería mostrar algo como:'<,'>
en la línea de comandos.Esto se ejecuta
normal A.
en las líneas seleccionadas.normal A.
se ejecutaA.
como pulsaciones de teclas en modo normal. EstoA
coloca.
a al final de cada una de las líneas seleccionadas.fuente
Si desea agregar puntos al final de todas las líneas:
o puede usar buscar y reemplazar:
% es el archivo completo, $ es el final de la línea
fuente
:1,4s/$/./
que sustituye el último carácter con un punto en las líneas uno a cuatro inclusive.Para hacerlo un poco más general, puede grabar una macro en una sola línea y luego reproducirla en cada línea en su rango visualmente seleccionado.
Grabe una macro en un registro (el registro q en este ejemplo):
Luego puede seleccionar visualmente las líneas en las que desea operar:
Y luego reproduzca su macro en cada línea (el rango se rellenará automáticamente):
fuente