gpt4 book ai didi

visual-studio-code - 如何配置多个格式化程序以在 VSCode 中保存时按顺序运行?

转载 作者:行者123 更新时间:2023-12-05 03:58:53 33 4
gpt4 key购买 nike

我正在处理一个必须由两者格式化的 Haskell 项目:

  • stylish-haskell(用于导入重新排序)
  • brittany(用于一般格式)

我可以为一种语言设置单一的默认格式化程序:

"[haskell]": {
"editor.defaultFormatter": "MaxGabriel.brittany"
}

或者我可以使用 editor.action.formatDocument.multiple 从列表中选择一个(“在命令面板中使用...格式化文档”)。

但我需要在保存时一个接一个地运行它们。截至目前,我只能在保存时运行单个默认格式化程序。在这种情况下,顺序无关紧要,但在更一般的情况下可能是这样。

我已经尝试将 editor.defaultFormatter 设置为格式化程序列表(这没有像预期的那样工作)并构建了一个调用 editor.action.formatDocument.multiple 的本地扩展 带有各种参数,它只会显示一个可供选择的可用格式化程序的下拉列表。

如何在保存时依次运行两个格式化程序?

最佳答案

我不认为这真的是官方支持的用例,但您可以通过执行以下扩展来解决它:

  • 为 Haskell 禁用 "editor.formatOnSave"
  • vscode.workspace.onDidSaveTextDocument 注册回调,其中你:
    • 使用 WorkspaceConfiguration"editor.defaultFormatter" 设置为第一个格式化程序应用程序接口(interface)
    • 调用“editor.action.formatDocument”
    • "editor.defaultFormatter" 设置为第二个格式化程序
    • 再次调用"editor.action.formatDocument"

当然,这只包括formatOnSave格式,不包括formatOnPasteformatOnType

关于visual-studio-code - 如何配置多个格式化程序以在 VSCode 中保存时按顺序运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57616665/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com