Я пишу расширение, которое находит шаблон в тексте, разбирает его на несколько строк данных, а затем вставляет эти проанализированные данные в первую строку после того, где совпадение было найдено.
В настоящее время я нахожусьне знаю, как работает TextEditorEdit, но, по крайней мере, я ожидаю увидеть мои результаты (хотя, возможно, перекрывающиеся или не в правильном положении).Проблема в том, что фактически видна только первая вставка текста, а не любые последующие вставки.Я заметил, что для onable второй вставки onResolve не удалось установить значение true.Но почему?
Вот код:
matchlistItems.forEach(item => {
let parsedMatch = parser.toString(item.text);
let newText = newLine + parsedMatch + newLine;
editor.edit(editBuilder => {
let pos = new Position(pos1.line + item.line + 1, 0);
editBuilder.insert(pos, newText);
console.log(newText);
}).then(success => {
if (success) {
editor.selection = new Selection(pos1, pos1);
}
}).then(undefined, err => {
console.error(err);
});
})
консоль записывает оба значения newText
, но на самом деле в документ вставляется только первое.