vscode.window.activeTextEditor 获取不到 png 图片路径困难

vscode 的 extensions 插件开发时用 vscode.window.activeTextEditor?.document.uri 获取不到编辑器打开的图片路径,文档路径可以获取到。

个人猜测因为图片不能编辑,所以没有 activeTextEditor 属性吧。

解决办法:巧用右键获取路径和相对的路径的 command

let fileUri = vscode.window.activeTextEditor?.document.uri
if (!fileUri) {
await vscode.commands.executeCommand('copyFilePath');
const copyFilePath = await vscode.env.clipboard.readText()
if (!copyFilePath) return
fileUri = vscode.Uri.file(copyFilePath)
}
const fileName = fileUri.fsPath

vscode.commands.executeCommand('copyFilePath')

相当于 vscode 右键文件复制路径

vscode.commands.executeCommand('copyRelativeFilePath')

相当于 vscode 右键文件复制相对路径

调用后会将路径复制到粘贴板中,然后

await vscode.env.clipboard.readText()

获取粘贴板数据即可获得图片的路径了。

posted @ 2025-08-10 13:09  wzzkaifa  阅读(9)  评论(0)    收藏  举报