visual-studio-code - 在 VSCode 扩展中,如何用从另一个文件读取的内容填充未命名的未保存文件?
问题描述
使用 VSCode 1.61.2,我正在制作一个必须在编辑器中打开一个未保存的空文件的扩展。
第一部分,没有填写文档,如下所示,效果很好:
vscode.workspace.openTextDocument({
language: "json",
content: "toto"
})
但是,我希望内容填充位于扩展代码源中的文件的内容。该文件位于:
src/my-file.json
到目前为止,我有:
vscode.workspace.openTextDocument("src/my-file.json").then((file) => {
vscode.workspace.openTextDocument({
language: "json",
content: file.getText()
})
})
但是,这会引发:
拒绝承诺未在 1 秒内处理:错误:无法打开文件:///src/my-file.json。详细信息:无法读取文件“\src\my-file.json”(错误:无法解析不存在的文件“\src\my-file.json”)
我高度怀疑workspace
指的是用户工作区,因此该文件不存在,这解释了错误。
但是,如果我是对的,我在api中没有找到任何允许读取扩展文件的内容。
如何读取我的扩展源文件并将其写入编辑器中未保存的空文件?
解决方案
在扩展中创建路径
let srcfolder = path.join(__dirname, 'src', 'my-file.json');
或者使用ExtensionContext即activate
函数的参数,使用成员extensionUri
this 也是 web 扩展保存,用于vscode.workspace.fs
读取文件
推荐阅读
- r - 涉及2个数据表的条件匹配和提取
- google-chrome - 从 Linux 终端使用 chrome cURL
- javascript - Jest/Enzyme 使用 try/catch 中的 async/await 方法测试 React 组件
- automapper - Automapper 和可为空的类型
- linear-programming - 如何将 "g1 = b ? g : 0" 编码为 LP 约束?
- reverse-engineering - 尝试运行 MIPS 二进制文件时出现 QEMU fpu 模式错误
- python - 从列表中的嵌套元组中获取特定值
- regex - GatsbyJS:为 JSON 正文转义生成的 HTML
- r - 如何实现滑动/滞后窗口?
- python - 将值是不同长度列表的字典转换为数据框