Respuestas:
Hago lo siguiente para agregar texto a varias líneas:
<c-V>
- Ingrese al modo de bloqueo visual.j
/ k
para seleccionar las líneas.$
- Mueve el cursor al último personaje.A
- Ingrese al modo de inserción después del último carácter.<Esc>
- Salga del modo de inserción y termine de agregar el bloque.En comparación con la escritura :norm
después de la selección, hay incluso menos pulsaciones de teclas, pero la verdadera razón por la que uso esto es porque es más instintivo para mí trabajar en el modo Bloque visual para este tipo de cambios.
En la primera línea simplemente escriba:
4:norm A.
4
y :
crea un rango para ti y luego norm A.
agrega el punto a cada línea
Otra 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ínea A.
y llega al modo normal con <Esc>
para ver el cambio aplicado a cada línea .
: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.
:'<'>normal A.
Esto se ejecuta normal A.
en las líneas seleccionadas. normal A.
se ejecuta A.
como pulsaciones de teclas en modo normal. Esto A
coloca .
a al final de cada una de las líneas seleccionadas.
Si desea agregar puntos al final de todas las líneas:
:%norm A.
o puede usar buscar y reemplazar:
:%s/$/./
% es el archivo completo, $ es el final de la línea
: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):
qqA.<Esc>q
Luego puede seleccionar visualmente las líneas en las que desea operar:
Vip
Y luego reproduzca su macro en cada línea (el rango se rellenará automáticamente):
:'<,'>norm @q