¿Es posible editar más de una palabra simultáneamente, que están en la misma línea?
Por ejemplo, digamos que tengo esto:
Spam and Eggs is all you need for a healthy breakfast
y me gustaría cambiar la línea a:
organic_Spam and organic_Eggs is all you need for a healthy breakfast
Me gustaría resaltar "Spam" y "Eggs" y anteponer "organic_" simultáneamente a "Spam" y "Eggs". Un poco como usar el bloque visual para escribir simultáneamente en diferentes líneas, pero aquí escribe cosas en la misma línea. Vi a un colega haciendo esto con Sublime Text e intenté buscar en Google, pero fue en vano.
cursor-movement
insert-mode
brodrigues
fuente
fuente
Respuestas:
Estoy de acuerdo con Alexander aquí. En la edición diaria, probablemente también usaría el .comando, pero si desea ejecutar solo un comando, usaría el comando sustituto:
mientras que el
&
es el patrón coincidente de/S\|E/
.fuente
En Vim no hay múltiples cursores como en Sublime Text (pero recuerdo algunos complementos). Pero parece que no es algo tan importante para VIM porque hay otra forma de lograrlo. Por ejemplo tienes esta línea
Haría algo como esto: coloque el cursor en modo normal en la primera letra del
Spam
e ingrese iorganic_
Esc, luego dos veces wpara saltarEggs
y presione .(punto) para repetir la última acción. Entonces, para mí, esto es mucho más productivo que en Sumlime Text, pero tal vez no sea tan elegante e intuitivo.De todos modos, hay algo de preprocesamiento para esta acción en ambos editores, en Sublime Text hay una selección de lugares para la nueva posición del cursor múltiple con algunas teclas de acceso rápido, y después de todo esto puede editar palabras simultáneamente. En Vim, este tipo de "preprocesamiento" ocurre en el momento de la edición de la línea, quiero decir todo esto ww..
fuente
Si realmente desea compatibilidad con múltiples cursores como Sublime, puede usar este complemento: https://github.com/terryma/vim-multiple-cursors
No es la forma vim , pero lo uso a menudo y funciona bien
fuente