如何使用 VSCode api 打开自定义编辑器
How to open Custom Editor with VSCode api
我有一个为特定文件类型注册 CustomEditorProvider 的扩展,我需要创建一个命令来使用我的编辑器打开给定文件。
如果我从工作区资源管理器中单击文件,我的编辑器会正确打开,但如果我使用 showTextDocument api,内置文本编辑器将打开。
private openModule(file:vscode.Uri) {
vscode.workspace.openTextDocument(file).then((doc: vscode.TextDocument) => {
vscode.window.showTextDocument(doc);
});
}
在 UI 中打开的编辑器上,我可以“使用...重新打开编辑器”,提示我使用编辑器的 selection。如果我 select 我的自定义编辑器,它将使用正确的编辑器重新打开。
如何强制 TextEditor 使用自定义的而不是内置的?
感谢任何帮助
我遇到了同样的问题,在这里找到了我的答案:
https://github.com/microsoft/vscode/issues/98473#issuecomment-634306217
commands.executeCommand("vscode.openWith", uri, MyCustomEditor.viewType);
我有一个为特定文件类型注册 CustomEditorProvider 的扩展,我需要创建一个命令来使用我的编辑器打开给定文件。
如果我从工作区资源管理器中单击文件,我的编辑器会正确打开,但如果我使用 showTextDocument api,内置文本编辑器将打开。
private openModule(file:vscode.Uri) {
vscode.workspace.openTextDocument(file).then((doc: vscode.TextDocument) => {
vscode.window.showTextDocument(doc);
});
}
在 UI 中打开的编辑器上,我可以“使用...重新打开编辑器”,提示我使用编辑器的 selection。如果我 select 我的自定义编辑器,它将使用正确的编辑器重新打开。
如何强制 TextEditor 使用自定义的而不是内置的?
感谢任何帮助
我遇到了同样的问题,在这里找到了我的答案:
https://github.com/microsoft/vscode/issues/98473#issuecomment-634306217
commands.executeCommand("vscode.openWith", uri, MyCustomEditor.viewType);