我尝试为vscode编写扩展,扩展需要从./vscode/settings.json文件中读取pasteImage.parth变量
{
"pasteImage.path": "${workspaceRoot}/assets/images"
}
我尝试使用vscode.workspace.getConfiguration()函数来获取这样的变量:
let folderPathFromConfig = vscode.workspace.getConfiguration('pasteImage')['path'];
但它得到了" $ {workspaceRoot} / assets / images",我希望$ {workspaceRoot}扩展到工作区root的真实路径,我该怎么办?
感谢任何提示!
答案 0 :(得分:0)
根据vscode extensibility documentation你可以使用
let workspaceRoot = vscode.workspace.workspaceFolders[0];
获取根WorkspaceFolder
。您可以使用WorkspaceFolder
:
Uri
的绝对路径
let workspaceRootPath = workspaceRoot.uri.path;
然后,您只需替换"${workspaceRoot}"
的{{1}}子字符串
总结:
folderPathFromConfig
答案 1 :(得分:0)
似乎没有服务,您必须像扩展the debug host一样扩展AbstractVariableResolverService
来实现。
很遗憾,您无法从扩展程序中导入这些内容。
The actual implementation非常简单,但是我确实想知道他们决定反对时的想法。
IProcessEnvironment
仅是内置process.env
道具的a stupid interface。