编辑后如何更新选择?

时间:2019-01-11 11:41:50

标签: visual-studio-code vscode-extensions

我正在创建TextEditorCommand,并且需要在编辑后更新选择内容:

var sel = editor.selection;
let text = editor.document.getText(sel);
edit.insert(sel.active, text);
sel.anchor = sel.active;

写入anchor(或任何其他选择属性)将引发:

  

TypeError:无法设置仅具有吸气剂的#的属性锚点

如何更新编辑者的选择以及在何处可以找到文档?

1 个答案:

答案 0 :(得分:0)

我猜选择只能在编辑完成后 进行更新,所以这是正确的方法:

editor.edit(edit => {
    edit.insert(sel.active, text);
}).then(() => {
    try {
        editor.selection = new vscode.Selection(sel.active, editor.selection.active);
    } catch (err) {
        console.log(err)
    }
})