跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

VSCode如何修复Prettier中Delete ␍导致的全局波浪线报错

VSCode中满屏Delete ␍报错是因换行符不一致导致Pretterr校验失败,根本原因是Windows默认CRLF而Prettier默认只认LF;解决方案是配置.prettierrc中endOfLine: "auto"并设置git config --global core.autocrlf false。 为什么VSCode里满屏都是Delete `␍`报错 这不是代码写错了,是换行符不一致触发的格式校验失败。Prettier 默认只认
LF
(
\n
),而 Windows 编辑器默认保存为
CRLF
(
\r\n
)。那个
␍
就是回车符
\r
,Prettier 认为它是多余字符,所以每行末尾都报
Delete `␍`
。 常见诱因包括: 刚从 Git 拉下来的项目(Linux/macOS 提交的 LF 文件)在 Windows 上用 VSCode 打开,但没配置换行符自动转换
.prettierrc
里没设
endOfLine
,或设成了
"crlf"
Git 的
core.autocrlf
是
true
(Windows 默认),导致检出时悄悄加了
\r
VSCode 底部状态栏显示的是
CRLF
,但 Prettier 配置要求
LF
改 .prettierrc 是最稳的项目级解法 直接让 Prettier 接受当前环境的换行习惯,而不是硬要它删
\r
。编辑项目根目录的
.prettierrc
(或
.prettierrc.js
),加上这行:
"endOfLine": "auto"
注意:
"auto"
不是偷懒,它会让 Prettier 根据文件已有换行符类型自动适配——检出是
LF
就保持
LF
,本地新建文件是
CRLF
就用
CRLF
,不再强行统一并报错。 如果必须强制统一为
LF
(比如团队规范或 CI 要求),则写:
"endOfLine": "lf"
但此时务必同步处理 Git 和编辑器配置,否则会反复冲突。 必须同步调整 Git 的 core.autocrlf 只改 Prettier 配置,不调 Git,下次
git pull
还会把
CRLF
带进来。执行这条命令: VSCode 1.118 微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。 下载
git config --global core.autocrlf false
它告诉 Git:别碰换行符,原样检出。配合
"endOfLine": "auto"
,就能让本地开发和远程仓库达成事实一致。 如果你已拉过代码且满屏报错,建议: 先执行
git add --renormalize .
(重归一化所有文件换行) 再
git commit -m "normalize line endings"
最后重启 VSCode —— 波浪线通常就消失了 VSCode 设置里别信“Auto”状态栏 右下角状态栏显示
CRLF
或
LF
,只是当前文件的**物理存储格式**,不代表 Prettier 会按它来。即使你手动点它改成
LF
,只要
.prettierrc
没配或 Git 下次拉取又带
CRLF
,问题照旧。 真正起作用的是三个地方是否对齐:
.prettierrc
中的
endOfLine
值
git config core.autocrlf
的值(推荐
false
)
.editorconfig
里是否写了
end_of_line = lf
(如有,需和 Prettier 一致) 三者不一致时,VSCode 会反复“纠正”又“被纠正”,波浪线就一直闪。最省事的做法是:删掉
.editorconfig
里的
end_of_line
行,只靠
.prettierrc
+ Git 配置双保险。

相关文章