¿Existe un movimiento similar a un "que nunca incluye espacios en blanco iniciales?


10

Estoy usando el a"movimiento con bastante frecuencia en vim; por ejemplo, ca"al refactorizar un fragmento de código para reemplazar un argumento codificado con un nombre de variable. El problema con este enfoque es que a" incluye espacios en blanco iniciales si no hay espacios en blanco finales :

Se incluye cualquier espacio en blanco final, a menos que no haya ninguno, se incluye el espacio en blanco inicial.

Por lo tanto, cuando edito una llamada de función como esta:

aFunction(arg1, "toBeReplaced", arg3) #original
aFunction(arg1, replacedArg, arg3)    #refactored

Tengo que volver a insertar manualmente el espacio antes, replacedArgya que lo ca"elimina.

¿Existe algún movimiento similar que no incluya este espacio en blanco, o hay algo más que pueda usar en lugar de ca"eso que me ahorra tener que escribir un espacio adicional?

Notas:

  • cf"hace lo que quiero siempre y cuando la cadena no contenga comillas escapadas, pero requiere que tenga el cursor al comienzo de la cadena. Me gustaría algo que pueda usar desde cualquier lugar dentro de la cadena, y ?"<Enter>cf"es bastante incómodo de escribir.
  • Se trata menos de la <Space>pulsación de una tecla y más del hecho de que a menudo me olvido inicialmente de incluir el espacio, lo que me cuesta al menos cuatro pulsaciones de teclas adicionales ( bi<Space><Esc>) y romper mi enfoque. Por lo tanto, la longitud del comando de reemplazo no es tan importante, siempre que elimine solo el texto entre los caracteres dados y luego entre en modo de inserción.

1
En lugar de usar ?"<Enter>para buscar una cotización hacia atrás en una línea, puede usar F". Fes lo mismo que fpero busca a la izquierda. Las respuestas a continuación se ven mejor para su pregunta, pero Fes un comando útil por sí solo.
Lithis

Respuestas:



10

Hay, en el plugin objetivo.vim de Wellle . Para citar la parte relevante (dentro de la sección " Una cita "):

a' a" a

  • Selecciona una cotización.

  • Esto anula el objeto de texto predeterminado de Vim para admitir la búsqueda.

  • A diferencia de los objetos de texto de citas de Vim, esto no incluye espacios en blanco circundantes .


¿Parece que este complemento anula a"y se usa A"para el comportamiento original?
Martin Tournoij

... mientras, creo, que también permite buscar "a la izquierda"
VanLaser

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.