用于文件资源管理器的vscode API

rit*_*tel 3 typescript visual-studio-code vscode-extensions

我正在编写VSCode扩展,需要根据用户选择的文件夹/子文件夹创建文件/删除文件。

有没有办法通过Visual Studio代码api从资源管理器树中找到选定的文件夹?可以通过活动文本编辑器或跟踪打开的文件onDidOpenTextDocument()。我对查找用户是否已选择文件夹以及是否已选择文件夹的路径感兴趣。

例如:workspace.rootPath提供打开的项目的根。同样,我如何确定用户选择了哪个子文件夹(如果有)。

小智 8

我终于想通了,我已经寻找了一段时间,发现文档指出:

注意:从(上下文)菜单调用命令时,VS Code会尝试推断当前选择的资源,并在调用命令时将其作为参数传递。例如,资源管理器中的菜单项将传递所选资源的URI,而编辑器中的菜单项将传递文档的URI。 vscode扩展贡献点

这让我想到了github 上的这个问题/错误获取选定的文件夹,这反过来又使我进入了stef-levesque / vscode-hexdump的github 仓库,从中我得到了以下内容:

let disposable = Commands.registerCommand('extension.superExtension', async (fileUri) => {
    console.log(fileUri);
})
Run Code Online (Sandbox Code Playgroud)

注意:在编辑器中使用上下文菜单时,该菜单为空。