Insertar automáticamente el soporte izquierdo en Vim

Insertar automáticamente el soporte izquierdo en Vim

Estoy intentando codificar algo de Objective-C en Vim y una cosa que me falta en Xcode es la capacidad de insertar automáticamente el corchete correspondiente izquierdo.

Dime si tengo el siguiente texto:

NSString *string = [NSString alloc] init

e inserto ']' al final de la fila, luego quiero que se complete para:

NSString *string = [[NSString alloc] init]

¿Algunas ideas?

Respuesta1

Esa es una buena característica.

Aparte de usarRodear, No conozco una solución exacta.

Con sonido envolvente, comenzando con el cursor en tde initen NSString *string = [NSString alloc] init:

  1. vpara entrar en modo visual
  2. F[para seleccionar todo hasta el primero[
  3. s]rodearlo de[]

vF[s]puede ser tedioso a largo plazo, en ausencia de una solución mejor/más inteligente, podría hacer un mapeo tonto como:

inoremap ]] vF[s]

Respuesta2

Este complementopuede ser lo que estás buscando. Todavía no lo he probado correctamente, pero parece funcionar.

Por ejemplo, ¿dónde |está el cursor?

"foo|" becomes "[foo |]" after ] is pressed.
"foo bar|" becomes "[foo bar]|"
"foo: bar|" becomes "foo: [bar |]"
"foo bar: baz|" becomes "[foo bar: baz]|"

Ciertas palabras clave útiles también se agrupan de forma inteligente.

información relacionada