Estoy trabajando en una extensión ( vscode-color-blocks ) que usa índices de coincidencia RegExp (nuevo en ES2022). Esto significa que estoy usando una cadena de expresiones regulares con el indicador d para obtener índices (posiciones relacionales) de cada grupo de captura en mi expresión regular ( fuente ):
export const colorBlockRegex = new RegExp(regexString, 'd'); Esto significa que un objeto de coincidencia de expresiones regulares exitoso tendrá un atributo .indices que luego puedo usar ( fuente ):
const match = colorBlockRegex.exec(comment.content); if (!match) continue; console.log(match.indices);Todo esto funciona bien cuando uso la extensión sola e incluso junto con otras extensiones. Pero VSCode se comporta como si esta nueva función de expresiones regulares no estuviera disponible una vez que instalo una extensión llamada Todo Tree . En ese momento, mi extensión falla y aparece el siguiente error:
stack trace: SyntaxError: Invalid flags: d at _ (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:74341) at Array.<anonymous> (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:3580) at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:71938) at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:1:12529) at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:415) at i (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:52:165) at Array.get [as indices] (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:52:2895) at DecorationRangeHandler.addNewDecorationRanges (...\vscode-color-blocks\dist\extension.js:1735:95) El seguimiento de la pila es un poco confuso, ya que pasa de gruntfuggly.todo-tree-0.0.215 a mi extensión vscode-color-blocks .
De lo contrario, debe haber algún problema con la forma en que estas dos extensiones se ejecutan en diferentes versiones de Javascript.