VSCode在不同操作系统下的换行符差异

P粉328763957

P粉328763957

2026-06-27

847人浏览

原创

windows默认换行符为crlf(\r\n),macos和linux默认为lf(\n);vscode默认跟随系统,但跨平台协作需统一设为lf,通过用户级settings.json配置"files.eol": "\n"并重载窗口生效,且易被工作区设置、.editorconfig或git配置覆盖。

vscode在不同操作系统下的换行符差异

Windows/macOS/Linux 默认换行符分别是啥

VSCode 不是自己决定换行符,而是默认跟随操作系统:Windows 用 CRLF\r\n),macOS 和 Linux 用 LF\n)。这本身没问题,但一旦跨平台协作或 Git 提交,就容易出问题——比如你在 Windows 上新建一个 .js 文件,它默认就是 CRLF;别人在 macOS 上拉下来,Prettier 可能立刻报错 Expected linebreaks to be 'LF' but found 'CRLF'

为什么改了 files.eol 还是 CRLF

因为 VSCode 的换行符设置有明确优先级:工作区设置 > 用户设置 > 默认值。常见干扰源包括:

  • 项目根目录存在 .vscode/settings.json,里面写了 "files.eol": "\r\n"
  • 你打开了多根工作区(.code-workspace),其配置里显式设了 files.eol
  • 装了 EditorConfig 插件,且项目有 .editorconfig,其中 end_of_line = crlf 会直接接管

验证方法:按 Ctrl+Shift+P 输入 Preferences: Open Settings (JSON),确认看到的是你编辑的那个 JSON;再看右下角状态栏——如果新建文件仍是 CRLF,说明上面某一层生效了。

Android 操作系统的介绍 中文WORD版
Android 操作系统的介绍 中文WORD版

本文档主要讲述的是Android 操作系统的介绍;Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看

下载

怎么让新建文件一打开就是 LF

核心是设 "files.eol": "\n",但仅此不够:

  • 打开设置(Ctrl+,),搜 files.eol → 点“Edit in settings.json”
  • 添加或修改这一行:"files.eol": "\n"(注意:是带英文双引号的字符串 "\n",不是文字 “LF”)
  • 保存后必须执行 Ctrl+Shift+P → 输入 Developer: Reload Window 重载窗口,否则新建文件仍沿用旧行为
  • 该设置只影响“未指定换行符”的新文件(如新建空 .py.ts),已有文件不会被自动转换

Git 和 VSCode 必须配合才真正稳

只改 VSCode 设置,解决不了协作场景的根本问题。Git 会在提交/检出时偷偷改换行符,导致本地文件和暂存区不一致。真正靠谱的做法是:

  • 在项目根目录加 .gitattributes,内容写:* text=auto eol=lf
  • VSCode 设置里把 files.preferredLineEnding 设为 lf(不是 "\n",是字符串 lf)——这个值会优先读取 .gitattributes
  • 已有文件批量转:运行 git add --renormalize .,再 git commit,Git 会按规则重写索引中的换行符

最易被忽略的一点:即使所有配置都对了,如果你没关掉 EditorConfig 插件或没删掉旧的 .editorconfig,它仍可能强行覆盖 end_of_line 规则——得手动检查并清理。

相关专题

更多
视频服务器配置参数有哪些
视频服务器配置参数有哪些

视频服务器配置参数有处理器、内存、存储、视频编解码器、网络接口、视频输入输出接口、操作系统、安全性、环境适应性和成本。在搭建视频服务器时,需要根据实际需求和预算,合理选择这些参数,以实现高性能、高稳定性和低成本的目标。

2023.10.17

1891

11

linux的操作系统介绍
linux的操作系统介绍

Linux是一个灵活、稳定、安全的操作系统,适用于各种不同的应用场景,从个人电脑到服务器和嵌入式系统。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.20

1703

12

Linux操作系统的主要用途
Linux操作系统的主要用途

Linux操作系统用途广泛,包括:服务器运营,软件开发,科学研究和教育,嵌入式系统,以及个人电脑和笔记本电脑。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.21

2326

8

linux操作系统的作用
linux操作系统的作用

linux操作系统在以下领域发挥着关键作用:服务器和云计算;嵌入式系统;个人电脑和笔记本电脑;超级计算;其他领域等等。想了解更多linux操作系统的相关内容,可以阅读本专题下面的文章。

2024.04.12

1140

5

有哪些常见的网络操作系统
有哪些常见的网络操作系统

常见的网络操作系统有windows server、linux、unix、macos server、freebsd、cisco ios、juniper junos和hp-ux等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.12

1614

6

32位操作系统怎么改成62位的
32位操作系统怎么改成62位的

要将 32 位操作系统升级到 64 位,需要遵循以下步骤:1. 检查硬件和软件兼容性;2. 备份数据;3. 获取 64 位操作系统;4. 创建可启动安装媒体;5. 从安装媒体启动计算机;6. 选择“升级”选项;7. 完成安装。

2025.04.02

2393

9

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

745

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

1178

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

982

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程