首页 > 解决方案 > 开发 VSCode 扩展时获取当前活动文件的目录

问题描述

我正在开发一个 VSCode 扩展来生成模板。

但是,我无法弄清楚如何获取我当前正在编辑的 VSCode 文件的位置。

当我搜索这个问题时,大多数答案都说要做类似的事情vscode.window.activeTextEditor.document.uri.fsPath- 但是 - 这会为您提供目标 VS 代码窗口(扩展开发主机窗口)的目录 - 这不是我想要的

我想获取我正在编辑的VS代码扩展文件的目录(比如extension.ts文件)。

非常感谢任何帮助。

标签: javascripttypescriptvscode-extensions

解决方案


如果您指的是扩展程序的路径:

context.extensionPath

extension.ts尝试类似:

context.asAbsolutePath("extension.ts") // 如果在顶层

如果您不知道您感兴趣的文件的目录结构,例如src/otherDirectory/otherSubDirectory,我认为您必须使用fsextensionPath. 例如,请参阅https://dustinpfister.github.io/2018/07/20/nodejs-ways-to-walk-a-file-system/


推荐阅读