tutorial texto online metrologia insertar editar con vim vi

texto - vim pdf



Cómo reemplazar texto entre comillas en vi (5)

Digamos que tengo esta línea de código:

$query = "SELECT * FROM table";

¿Hay algún comando en vi / vim que pueda eliminar instantáneamente todo entre comillas y colocar el cursor entre ellos para que pueda comenzar a escribir?


Además de la respuesta de Brian, también puede p (pegar) y y (arrastrar) el nuevo valor, de modo que si desea reemplazar el valor entre comillas con otro valor, puede hacer yi" en la selección que desea copiar, vi" para seleccionar el área que desea reemplazar y luego simplemente p para reemplazar correctamente el valor.


Desde ya dentro de las cotizaciones puedes hacer

di"

Léelo como eliminar dentro "


He hecho un plugin vim-textobj-quotes : https://github.com/beloglazov/vim-textobj-quotes

Proporciona objetos de texto para los pares más cercanos de citas de cualquier tipo y admite citas que abarcan varias líneas. Usar solo iq o aq le permite operar sobre el contenido de comillas simples (''), dobles (") o atrás (`) que actualmente rodean al cursor, están delante del cursor, o detrás (en ese orden de preferencia). En otras palabras, salta hacia delante o hacia atrás cuando es necesario para alcanzar las comillas.

Es más fácil de entender mirando ejemplos (el cursor se muestra con | ):

  1. Antes: foo ''1, |2, 3'' bar ; después de presionar diq : foo ''|'' bar foo ''|'' bar
  2. Antes: foo| ''1, 2, 3'' bar foo| ''1, 2, 3'' bar ; después de presionar diq : foo ''|'' bar foo ''|'' bar
  3. Antes: foo ''1, 2, 3'' |bar ; después de presionar diq : foo ''|'' bar foo ''|'' bar
  4. Antes: foo ''1, |2, 3'' bar ; después de presionar daq : foo | bar foo | bar
  5. Antes: foo| ''1, 2, 3'' bar foo| ''1, 2, 3'' bar ; después de presionar daq : foo | bar foo | bar
  6. Antes: foo ''1, 2, 3'' |bar ; después de presionar daq : foo | bar foo | bar

Los ejemplos anteriores se dan para comillas simples, el complemento funciona exactamente de la misma manera para las comillas dobles (") y posteriores (`).

También puede usar cualquier otro operador: ciq , diq , yiq , viq , etc.

Por favor, eche un vistazo a la página de github vinculada anteriormente para más detalles.


Puede seleccionar entre comillas y luego eliminar ( d ), cambiar ( c ) etc. usando

vi"

Del mismo modo, puede sustituir llaves, corchetes, elementos XML, etc., así:

vi( vi{ vit

o simplemente para cambiar / eliminar, haga el correspondiente di" , ci" etc. Sustituir a para abarcará los elementos circundantes (por lo tanto, marcar o cambiar los corchetes y los contenidos, por ejemplo)


Use ci" , que significa: cambie lo que está dentro de las comillas dobles.

También puede manipular otros objetos de texto de forma similar, por ejemplo:

  • ci'' - cambio dentro de las comillas simples
  • ciw - cambiar dentro de una palabra
  • ci( - cambio dentro de paréntesis
  • dit - eliminar dentro de una etiqueta HTML, etc.

Más acerca de los diferentes objetos de texto vim here .