Nuevo en la gramática de Nearley, no estoy seguro de qué está mal aquí. Aquí está mi gramática para obtener lo que se coloca dentro de un paréntesis de apertura y cierre.
@builtin "whitespace.ne" with_in_brackets -> "(" _ args _ ")" {% d => ({ type: 'inside_brackets', argumentstring: d[2] })%} args -> .:* {% d => d[0].join("") %}(hello, " ", world){type: "inside_brackets", argumentstring: "hello, " ", world"}{type: "inside_brackets", argumentstring: "hello, " ", world"}Aviso: el resultado real es compactar 4 espacios en blanco en 1 espacio en blanco. No estoy seguro de por qué ocurre esto.
¿Alguna idea? FYI: estoy usando Nearley Playground para probar mi gramática en el navegador Safari v15.