首页 > 解决方案 > VS Code + Prettier 不使用 printWidth 设置?

问题描述

我试图让 Prettier 用printWidth80 个字符(我理解为默认值)格式化我的文件。但是,即使配置了我的用户设置:

"prettier.printWidth": 80

.prettierrc并在项目中使用配置:

{
  "tabWidth": 2,
  "useTabs": false,
  "printWidth": 80
}

...保存文件时没有任何变化(实施了其他设置,这让我认为某处存在冲突)。

甚至 VS Code 中的 Prettier 输出也显示它正在引入配置:

["INFO" - 8:27:53 PM] Using config file at '/Users/username/Documents/whatever/.prettierrc'
["INFO" - 8:27:53 PM] Prettier Options:
{
  "filepath": "/Users/username/Documents/whatever/project/file.mdx",
  "parser": "mdx",
  "tabWidth": 2,
  "useTabs": false,
  "printWidth": 80
}
["INFO" - 8:27:53 PM] Formatting completed in 93.855083ms.

标签: visual-studio-codevscode-settingsprettierprettier-vscode

解决方案


您正在格式化 MDX,它是 Markdown 的变体。默认情况下,在 Markdown 中打破文本以尊重打印宽度被认为是不安全的,因为这会影响一些对换行敏感的渲染器。这就是 Prettier 的选项proseWrap( docs ) 默认为preserve. 将其设置always为 Prettier 以开始环绕文本。


推荐阅读