texto pegar insertar editar copiar con comando buscar borrar vim macvim

pegar - insertar texto vim



¿Cómo romper una línea en vim en modo normal? (7)

No conozco un solo comando de teclado, pero muchas veces hago "r" y luego "Enter" para romper una línea.

"r" reemplaza el carácter actual debajo del cursor sin entrar en el modo de inserción. Puede que no sea lo que quieres si no quieres reemplazar un personaje ...

Me gustaría dividir una línea (en la ubicación del cursor) en dos líneas sin salir del modo normal (ingresando insertar o modo línea de comando). es posible?

Actualmente llego a la ubicación que quiero y presiono ''i'' para ingresar al modo insertar, ''enter'' para dividir la línea en dos, luego ''esc'' para volver al modo normal.

No estoy tratando de establecer una longitud de línea máxima o hacer una sintaxis o algo así. Solo quiero dividir una línea en dos líneas sin salir del modo normal. ''J'' se une a la línea en la que se encuentra el cursor a la línea debajo de ella, que es útil. Quiero lo contrario: dividir una línea en dos con un solo comando.



Por lo que sé, esto no es posible sin entrar en el modo de inserción. Sin embargo, puede macro con algo como (reemplace Z con la tecla que quiera usar)

nmap Z i<cr><esc>k$

básicamente esto mapea la tecla ''Z'' para ingresar al modo de inserción ''i'', inserte un retorno de carro '' <cr> '', deje el modo de inserción '' <esc> '', suba una línea ''k'' y finalmente vaya al final de la línea ''$''


Prueba esto:

:nnoremap <NL> i<CR><ESC>

luego simplemente presione Ctrl-J cuando quiera dividir una línea.


Puedes usar la grabación. Coloque el cursor donde desee insertar un salto de línea. Escriba qa para comenzar a registrar en registrar a (puede usar otro registro que no sea a si lo desea. Luego escriba i (cambie al modo de inserción), Return (inserte newline), escape (salga del modo de inserción), q (finalice la grabación). Ahora puede invocar esta secuencia de claves tecleando @a (donde a es el número de registro que utilizó cuando comenzó la grabación, así que simplemente siga moviendo el cursor donde desea insertar una nueva línea y escriba @a .


Similar a otras respuestas pero no reemplaza al personaje actual.

R<enter>

No se requieren reasignaciones.


poner el cursor en posición y ...

r<Enter>