首页 > 解决方案 > 全部格式化保存 Coc-Prettier

问题描述

我是 Vim 新手,我用coc-prettier它来格式化我的文件。我可以使用该命令:Prettier来格式化我的文件,但希望对所有文件类型自动执行此操作。我找到了这个,但我需要指定文件类型:

"coc.preferences.formatOnSaveFiletypes": ["css", "markdown"],

我希望它在保存时自动格式化。我怎样才能做到这一点?谢谢!

标签: vimprettier

解决方案


看看schema.json

"formatterPriority": {
      "type": "number",
      "default": 0,
      "description": "Priority of this languageserver's fomatter."

也在 coc-prettier GitHub 中引用 -这里

prettier.formatterPriority (default: 1) - 格式化程序的优先级

如果您不希望 prettier 具有比其他语言服务器提供的格式化程序更高的优先级,请将其更改为 -1。

一般来说, coc- prettier 使用prettier,另一方面使用ESLint。因此(也针对未来的问题),我建议扩大您的搜索词以扩大结果。无论如何,不​​要忘记在配置文件中正确声明优先级 -如上面链接文档中所述


关于我和赏金授予者@DanMacák之间讨论的一点编辑:

因此,我想知道类似的事情 "coc.preferences.formatOnSaveFiletypes": '*'是否可能。我当时检查了架构,发现这个选项不可行。

在对添加的问题进行了进一步研究之后,我发现这是不可能的(至少据我所知)。coc.preferences.formatOnSaveFiletypes只需要一个数组作为输入 - 见下文:

"coc.preferences.formatOnSaveFiletypes": {
      "type": "array",
      "default": [],
      "description": "Filetypes that should run format on save.",
      "items": {
        "type": "string"
      }

除非有一种方法可以将每个元素包含到一个数组中,例如通过星号运算符,否则您可以将所述信息解析到函数中的可能性很小。或者总结一下,不幸的是,该功能没有按照您打算使用的方式提供。


推荐阅读