¿Existe un comando vim para mover el cursor al corchete principal?


83

¿Existe un comando vim para mover el cursor al corchete principal?

Tengo un archivo de configuración como este y quiero ir directamente al corchete principal. ¿Existe un comando de movimiento simple para hacer esto, o hay una manera de combinar comandos para hacer lo que quiero?

PARENT{ // I want to move my cursor here

   CHILD { stuff... }
   CHILD { stuff... }
   CHILD { stuff... }

...

   CHILD { stuff... } // my cursor is on this line
   CHILD { GRANDCHILD { more stuff } }
   CHILD { stuff... }
}

Respuestas:


129

Si. Hazlo [{en modo normal para eso. Sin embargo, es posible que no funcione para todos los idiomas.

Muchos comandos de movimiento están disponibles en :help [.


7
+1 por señalar una función que ya habría estado usando durante años --- si tan solo lo hubiera sabido . ¡Y]} va a la llave de cierre! Qué montón de pulsaciones de teclas he estado desperdiciando ... `: -}
evadeflow

1
Hmm. Sin embargo, supongo que esto solo va al padre 'actual' (?), Por lo que no hace exactamente lo que deseaba el OP. ¿Hay alguna variante que se muestre hacia arriba o hacia abajo?
evadeflow

42

También puede presionar% y mostrará su corchete de apertura o cierre


5
Debe estar en la abrazadera para que el% funcione. Es más útil para la coincidencia de llaves que para la navegación.
user31986

@ user31986 Creo que estás equivocado: funciona para abrir y cerrar corchetes. En realidad, no solo funciona para los corchetes ([{}])sino también para comentarios de tipo C/*...*/
Alf

Sin embargo, @ user31986 era esencialmente correcto: la pregunta pide moverse desde el interior de alguna estructura a alguna llave principal, mientras que esta respuesta trata de pasar de un símbolo (paréntesis, corchete o llave) al correspondiente. Esto está relacionado, pero no es una respuesta a la pregunta.
Eric O Lebigot

6

Parece que [[hace lo que quieres. Y se ][mueve a la abrazadera más baja. (Muchas gracias a @Benoit por darme una pista de que esto podría ser posible ...)


3
'[[' & '] [' funcionan solo cuando la llave de apertura es el primer carácter de la línea, no cuando es como en la pregunta. "PARENT {"
user31986
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.