【问题标题】:Create and save file with a custom custom content and name using VS Code API使用 VS Code API 创建和保存具有自定义内容和名称的文件
【发布时间】:2021-03-04 13:02:52
【问题描述】:

我们正在开发一个新的 VS Code 扩展,我们希望:

  1. 使用提供的 VS Code 编辑器创建并打开一个新文件 内容。
  2. 使用自定义名称保存该文件,而不提示用户使用已知路径

目前我们正在通过VSCode API 执行此操作,但它并没有完全达到目的,因为它向用户显示“保存”对话框:

workspace.openTextDocument({ content: yamlContent, language: "yaml" }).then(doc => {
    window.showTextDocument(doc);
    doc.save()
})

另外,还有一个需要确认的附带问题:有没有办法通过VSCode API 获取工作区外文件的相对文件路径? (我们现在使用Node JS Path

【问题讨论】:

  • 为什么不在 Node 中进行文件处理(创建/写入),无需打开编辑器
  • @rioV8 将此视为默认配置文件,需要在编辑器中打开以供用户查看,并允许用户在执行之前进行任何编辑。

标签: visual-studio-code vscode-extensions


【解决方案1】:

这是我实现此功能以实现所需行为的方式:

await workspace.fs.writeFile(fileUri, new TextEncoder().encode(yamlContent));
window.showTextDocument(fileUri, { preview: false });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 1970-01-01
    相关资源
    最近更新 更多