不灭的焱

革命尚未成功,同志仍须努力 下载Java

作者:AlbertWen  添加时间:2026-02-27 16:51:10  修改时间:2026-02-28 05:20:23  分类:01.Vibe Coding (氛围编程)  编辑

想要让 Prettier 尊重你手动添加的换行符,最核心的配置就是将 proseWrap 选项设置为 "preserve"

不过,proseWrap 这个配置项主要影响的是Markdown等文本文件。对于代码文件(如JavaScript、HTML等),Prettier 通常会基于自身的规则(如 printWidth)进行格式化,目前没有一个直接的配置可以完全保留所有手动换行。

针对不同类型的文件,这里有几种方法可以帮你达到目的:

📝 对于 Markdown 等文本文件

在 Prettier 的配置文件(如 .prettierrc)中,将 proseWrap 设置为 "preserve"。

{
  "proseWrap": "preserve"
}

💻 对于 JavaScript/TypeScript 等代码文件

代码文件的格式化相对复杂,有几种变通方案:

  1. 使用 // prettier-ignore 注释
    这是最直接的方法。在希望保留自定义格式的代码块前加上这个注释,Prettier 就会跳过对该代码块的格式化。
     

    // prettier-ignore
    matrix(
      1, 0, 0,
      0, 1, 0,
      0, 0, 1
    )
  2. 【重要】利用尾随注释技巧 
    对于链式调用,可以在换行处添加一个空的注释,阻止 Prettier 将其合并为一行。
    const b = await func1() //
      .func2('some long text')

🌐 对于 HTML/JSX 文件

HTML 的换行还受到 htmlWhitespaceSensitivity 和 bracketSameLine 等配置的影响,可以根据需求调整。

{
  // 设置 HTML 的空格敏感度
  "htmlWhitespaceSensitivity": "ignore",
  // 控制 HTML 元素尾括号的换行
  "bracketSameLine": true
}