我正在编写一个vscode扩展名。我使用以下代码在TextEditor区域中输入文本。
function insertText(params: string) {
var editor = vscode.window.activeTextEditor;
editor.edit(edit =>
editor.selections.forEach(selection => {
edit.delete(selection);
edit.insert(selection.start, params);
})
);
}
但是,我需要我的扩展名才能在以下区域输入文本:
workbench.action.gotoLine
命令时)的而不是要求用户输入。
tl; dr
我要问的伪代码:
openCommandPallete();
enterTextInCommandPallete("ABCDEF");
答案 0 :(得分:1)
您可以调用带有参数的quickOpen
命令来预填充文本:
vscode.commands.executeCommand("workbench.action.quickOpen", "Hello World");
您可以通过在文本前面加上>
来切换到命令面板。可以使用?
检查快速打开的可能前缀的完整列表:
如您在此处看到的,:
是“转到行”的前缀,因此可以与同一命令一起使用:
vscode.commands.executeCommand("workbench.action.quickOpen", ":5");
还有一个相关问题,涉及如何利用参数来快速打开键绑定here。