Что можно сделать, чтобы улучшить оформление большого файла (1М строк). Я использую следующий код для украшения GUID каждого файла.
const RE_GUID = /([0-9A-F]{8}[-]?(?:[0-9A-F]{4}[-]?){3}[0-9A-F]{12})\|/gi;
const markGUID = (): void => {
if (!activeEditor) {
return;
}
const text = activeEditor.document.getText();
const guid: vscode.DecorationOptions[] = [];
let match;
RE_GUID.lastIndex = 0;
while ((match = RE_GUID.exec(text))) {
const startPos = activeEditor.document.positionAt(match.index);
const endPos = activeEditor.document.positionAt(
match.index + match[1].length
);
const decoration: vscode.DecorationOptions = {
range: new vscode.Range(startPos, endPos),
hoverMessage: 'CorrelationID',
};
guid.push(decoration);
}
activeEditor.setDecorations(defineGUIDStyle, guid);
};
Можно ли его пакетировать? (Я вижу, что мог бы этот while
цикл распространяться с setTimeout
)
Можно ли это сделать в другом потоке? Могу ли я использовать WebWorker
?