Ya puedo asignar una combinación de teclas en modo de inserción:
:inoremap abc <do stuff>
Sin embargo, esto tiene algunos inconvenientes:
Al escribir una versión parcial de la secuencia, por ejemplo
ab
, los caracteres no se muestran realmente durante un corto período de tiempo, ya que está "esperando" para ver si va a escribir el comando completo. Esto es indeseable; Quiero mapear una cadena de letras sin pausa si se ingresa una subcadena parcial de la cadena.Si escribo
ab
, pause (y espere hasta que los caracteres realmente aparezcan como se menciona en el punto anterior), luego escribac
, el comando no se ejecuta. Quiero que el comando se ejecute sin importar cuánto tiempo espere.
Usaría un iab
, pero eso no funciona porque:
- Requiere ingresar un espacio después de la cadena
- No puedo ejecutar comandos arbitrarios con él, solo inserto una cadena de texto.
¿Hay alguna forma de ejecutar un comando o una pulsación de tecla si se ingresa una determinada cadena en modo de inserción, sin usar un mapa (que se detendrá molestamente cada vez que escribo a
y no funciona si espero demasiado)?
fuente
:cnoremap abc <do stuff>
...ab<any key>
.Respuestas:
Aquí hay una manera de hacer eso:
fuente