Me gustaría escribir una función en vimscript que encuentre el último paréntesis abierto o paréntesis en una línea. Esto no es necesariamente un problema fácil, ya que tiene que ser capaz de manejar todo lo siguiente:Vimscript: find last parenthese or bracket
function(abc
function(abc, [def
function(abc, [def], "string("
function(abc, [def], "string(", ghi(
Como se puede ver, entre paréntesis anidados, diferentes símbolos, y la cadena de tokens todos necesitan ser manejados de forma inteligente. ¿Esto es posible? ¿Hay herramientas con expresiones regulares de vimscript para realizar búsquedas basadas en el contexto que conozcan la diferencia entre paréntesis no cerrados y paréntesis en cadenas?
Dado que puede sintaxis resaltar corchetes desequilibrados, debería ser posible encontrar el último paréntesis/corchete no cerrado en una línea. ¿Cómo puede hacerse esto?
La mitad de un par de paréntesis se llama paréntesis. –
Si la intención es ayudar con el resaltado, anote la pregunta y la respuesta aquí: http://superuser.com/questions/545278/how-to-have-vim-show-unclosed-parenthesis. El complemento 'vim-matchopen' resalta el último paréntesis, corchete y corchete relativo al cursor (ya sea cerrado o no cerrado). –