Я создаю расширение для VsCode
, которое добавляет некоторый текст в строку после editor.active.selection
, но я не могу понять, как получить отступ, совпадающий с предыдущей строкой, и вставить текст вновая строка.
Теперь я попробовал следующее (код ниже), но вторая функция builder.insert
, кажется, никогда не нацеливается на правильную строку, как если бы она не знала, что первый builder.insert
создалуже новая строка.
const endOfSelectedLine = editor.document.lineAt(activeSelection.line).range.end;
const indentValue = editor.document.lineAt(activeSelection.line).firstNonWhitespaceCharacterIndex;
const insertPosition = activeSelection.with(activeSelection.line + 1, indentValue);
editor.edit(builder => {
builder.insert(endOfSelectedLine, '\n');
builder.insert(insertPosition, 'hello');
});