He definido asignaciones en mi vimrcpara ingresar automáticamente paréntesis y llaves cerca cuando ingreso las iniciales con inoremap ( ()<esc>i.
Me gustaría hacer lo mismo para "y ', pero solo cuando el cursor actualmente no está dentro de una cadena, ya que dentro de una cadena 'es probablemente un apóstrofe en lugar de un delimitador de cadena. ¿Cómo puedo hacer esto?

Qtx?Como se ha dicho, deberá verificar el contexto de sintaxis. La antigua API lh-brackets proporciona funciones para ese fin:
Map*Context()funciones . Desde entonces, se han encapsulado las definiciones de corchetes en las:Bracketque se tendrá en cuenta el contexto (cadenas o comentarios).Por defecto, las asignaciones de contexto se definen para todos los pares de paréntesis habituales como este:
fuente