Pregunta

Estoy seguro de que solía ser un plugin para esto un poco, pero ahora que lo necesito, me parece que no puede encontrarlo (naturalmente), por lo que sólo pido agradable y simple.

¿Cuál es la manera más fácil para seleccionar entre paréntesis o las cotizaciones, o generalmente una lista de resultados con los personajes?

   write ( *, '(a)' ) 'Computed solution coefficients:'

Por ejemplo, aquí me gustaría para seleccionar (a), o Computed solution coefficients:.

No estoy interesado en varias líneas, sólo los casos que se producen en una línea.

¿Fue útil?

Solución

Utilice la tecla que desea obtener dentro de los paréntesis de navegación, a continuación, puede utilizar cualquiera yi( o yi) copiar todo dentro de los parens coincidentes. Esto también funciona con corchetes (por ejemplo yi]), y llaves. Además de y, también puede eliminar o cambiar el texto (por ejemplo ci), di]).

He intentado esto con dobles y comillas simples y parece que trabajar allí también. Para sus datos, lo hago:

write (*, '(a)') 'Computed solution coefficients:'

mover el cursor a la C, a continuación, escriba yi'. Mover el cursor a una línea en blanco, golpeó p, y obtener

Computed solution coefficients:

Como se ha señalado CMS , esto funciona para la selección del modo visual, así -. sólo tiene que utilizar vi), vi}, vi', etc.

Otros consejos

Para seleccionar entre las comillas simples que suele hacer un vi' ( "seleccione comillas simples internas").

Dentro de un bloque de paréntesis, utilizo vib ( "seleccionar bloque interior")

Dentro de un bloque de llaves puede utilizar viB ( "B mayúscula")

Para hacer las selecciones "inclusivo" (seleccionar también las comillas, paréntesis o llaves) se puede utilizar en lugar de a i.

Puede leer más sobre el objeto texto selecciones en el manual de o :help text-objects dentro de vim.

Este método de selección es incorporado y bien cubierto en la ayuda de Vim. Cubre las etiquetas XML y mucho más.

Consulte :help text-objects.

Para seleccionar entre comillas simples utilizar vi'.

Para seleccionar dentro de paréntesis uso vi(.

Utilice las flechas o hjkl para llegar a una de las expresiones de horquillado, entonces v para seleccionar el modo visual (es decir, la selección), entonces % para saltar a otro soporte.

Escribir una función Vim en .vimrc utilizando el searchpair función incorporada:

searchpair({start}, {middle}, {end} [, {flags} [, {skip}
            [, {stopline} [, {timeout}]]]])
    Search for the match of a nested start-end pair.  This can be
    used to find the "endif" that matches an "if", while other
    if/endif pairs in between are ignored.
    [...]

( http://vimdoc.sourceforge.net/htmldoc/eval.html)

Me gustaría añadir un detalle a la respuesta más votada:

Si está utilizando gvim y quiere copiar al portapapeles, utilice

"+<command>

Para copiar todo el contenido entre paréntesis (o parens o llaves)

Por ejemplo:. "+yi} copiará en el portapapeles todo el contenido entre las llaves el cursor se encuentra

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

Proporciona objetos de texto para los pares más cercanos de las cotizaciones de cualquier tipo. Usando sólo iq o aq que le permite operar en el contenido de simple ( '), dobles ( "), o hacia atrás (`) citas que actualmente rodean el cursor, están delante del cursor, o detrás ( en ese orden de preferencia). en otras palabras, salta hacia adelante o hacia atrás cuando sea necesario para llegar a las cotizaciones.

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

  1. Antes: foo '1, |2, 3' bar; después de pulsar diq: foo '|' bar
  2. Antes: foo| '1, 2, 3' bar; después de pulsar foo '1, 2, 3' |bar: daq
  3. Antes: foo | bar; después de pulsar ciq: yiq
  4. Antes: viq; después de pulsar <=>: <=>
  5. Antes: <=>; después de pulsar <=>: <=>
  6. Antes: <=>; después de pulsar <=>: <=>

Los ejemplos anteriores se dan por comillas simples, el plugin funciona exactamente de la misma manera para ( `) entre comillas dobles (") y la espalda.

También se puede utilizar cualquier otro operador:. <=>, <=>, <=>, <=>, etc.

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

Un mapa de teclas simple en vim resolvería este problema.     Mapa CIV F”LVF” hh Esto sobre mapas comando Viq a las teclas para buscar entre comillas. Reemplazar "con cualquier personaje y crear sus mapas de teclas. Pegar esto en vimrc durante el inicio y usted debería ser capaz de usarlo cada vez.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top