vscode.window.activeTextEditor 获取不到 png 图片路径问题
vscode 的 extensions 插件开发时用 vscode.window.activeTextEditor?.document.uri 获取不到编辑器打开的图片路径,文档路径可以获取到。
个人猜测因为图片不能编辑,所以没有 activeTextEditor 属性吧。
解决办法:巧用右键获取路径和相对的路径的 command
let fileUri = vscode.window.activeTextEditor?.document.uriif (!fileUri) {await vscode.commands.executeCommand('copyFilePath');const copyFilePath = await vscode.env.clipboard.readText()if (!copyFilePath) returnfileUri = vscode.Uri.file(copyFilePath)}const fileName = fileUri.fsPath
vscode.commands.executeCommand('copyFilePath')
相当于 vscode 右键文件复制路径
vscode.commands.executeCommand('copyRelativeFilePath')
相当于 vscode 右键文件复制相对路径
调用后会将路径复制到粘贴板中,然后
await vscode.env.clipboard.readText()
获取粘贴板数据即可获得图片的路径了。