如何使用 vscode 中的 uri 路径在资源管理器视图中打开文件夹
How to open a folder in explorer view using a uri path in vscode
我正在开发一个扩展程序,我想在其中提示用户 select 他们文件系统中的一个文件夹,并在他们的资源管理器视图中打开该文件夹。目前我正在使用 window.showOpenDialog
打开一个文件系统对话框,其中 returns 一个解析为 uris 数组的承诺。 我想在他们的资源管理器视图中打开他们的 selected 路径(存储在 returnUriArray[0].path
下)。我该怎么做?
我探索了 commands.executeCommand("vscode.openFolder")
我不想使用它除非我可以操纵它,因为它会刷新整个 VSCode 实例并删除之前在资源管理器视图中打开的所有内容。因此,如果我的第一个问题的答案是使用 openFolder 命令(我已经在执行此任务的其他扩展的很多示例中看到过),我是否可以对其进行操作,以便它不会删除所有以前存在的资源管理器文件夹?在 executeCommand 函数中使用时,我无法轻松找到 openFolder 命令的文档。
updateWorkspaceFolders()
可能是您要找的东西?它可用于添加、删除或替换文件夹。以下将添加 folderUriToAdd
:
vscode.workspace.updateWorkspaceFolders(0, 0, {uri: folderUriToAdd});
我正在开发一个扩展程序,我想在其中提示用户 select 他们文件系统中的一个文件夹,并在他们的资源管理器视图中打开该文件夹。目前我正在使用 window.showOpenDialog
打开一个文件系统对话框,其中 returns 一个解析为 uris 数组的承诺。 我想在他们的资源管理器视图中打开他们的 selected 路径(存储在 returnUriArray[0].path
下)。我该怎么做?
我探索了 commands.executeCommand("vscode.openFolder")
我不想使用它除非我可以操纵它,因为它会刷新整个 VSCode 实例并删除之前在资源管理器视图中打开的所有内容。因此,如果我的第一个问题的答案是使用 openFolder 命令(我已经在执行此任务的其他扩展的很多示例中看到过),我是否可以对其进行操作,以便它不会删除所有以前存在的资源管理器文件夹?在 executeCommand 函数中使用时,我无法轻松找到 openFolder 命令的文档。
updateWorkspaceFolders()
可能是您要找的东西?它可用于添加、删除或替换文件夹。以下将添加 folderUriToAdd
:
vscode.workspace.updateWorkspaceFolders(0, 0, {uri: folderUriToAdd});