格式化文档 format on save

VSCode的自动格式调整如何关闭,每次按Ctrl+S保存的时候,自动格式调整。

明白了,你用的是 Visual Studio Code,那这个问题就很常见了 👍
👉 Ctrl + S 自动格式化 = “保存时格式化(Format On Save)” 被开启

我给你直接说最有效的关闭方法:


✅ 一步关闭(最关键)

🔧 方式一:设置里关闭

  1. 按:Ctrl + , 打开设置

  2. 搜索:

    format on save
    
  3. 把这个选项关闭:

    • Editor: Format On Save

⚠️ 如果还在自动格式(重点看这里)

很多人关了上面这个还是会自动格式化,是因为插件在搞事情👇


🔧 方式二:关闭 Prettier / ESLint 自动格式

👉 如果你装了 Prettier

搜索:

prettier format on save

关闭:

  • ❌ Prettier: Format On Save

👉 如果你装了 ESLint

搜索:

eslint format

关闭:

  • ❌ ESLint: Format Enable

或者:

"editor.codeActionsOnSave": {
  "source.fixAll": false,
  "source.fixAll.eslint": false
}

🔧 方式三:直接改 settings.json(最彻底)

Ctrl + Shift + P → 输入:

Preferences: Open Settings (JSON)

然后改成这样👇

{
  "editor.formatOnSave": false,
  "editor.codeActionsOnSave": {}
}

💡 额外检查(如果还不行)

1️⃣ 工作区配置(很多人忽略)

有些项目会强制开启:

📁 .vscode/settings.json

里面可能有:

"editor.formatOnSave": true

👉 把它改成 false 或删掉


2️⃣ 默认格式化器

有时 VS Code 会自动调用格式化器:

"editor.defaultFormatter": "esbenp.prettier-vscode"

👉 可以删掉或改成你想要的


✅ 最终结论(最重要三点)

只要你做这三件事,一定能关掉:

  1. 关闭 editor.formatOnSave
  2. 关闭 Prettier / ESLint 自动格式
  3. 检查 .vscode/settings.json

如果你还关不掉,可以把你的 settings.json 发我,我帮你一眼找出是哪一行在触发 😄

format on save (修改于 python -> 远程)是什么意思

你看到的这个:

Format On Save(修改于 Python → 远程)

其实是在说明:这个设置不是全局改的,而是在某个特定“环境/作用域”里被修改了。我们拆开讲👇


🧠 这句话什么意思?

Visual Studio Code 里,设置是分层的:

📌 Python

👉 表示:这个设置只对 Python 文件 生效
(比如 .py 文件)


📌 远程(Remote)

👉 表示:你当前是在远程环境里改的,比如:

  • SSH 远程开发
  • Docker / Dev Container
  • WSL(Windows Linux 子系统)

🧩 合起来就是:

👉 你在远程环境中,把 Python 文件的“保存时自动格式化”改了

也就是:

只对 Python + 远程环境 生效

📍 举个实际例子

你可能有这些不同状态:

场景 是否会自动格式
本地 JS 文件 ❌ 不会
本地 Python 文件 ❌ 不会
远程 Python 文件 ✅ 会(因为你改的是这里)

🔍 为什么会这样?

VS Code 设置优先级是这样的(很重要):

默认设置
  ↓
用户设置(全局)
  ↓
远程设置(Remote)
  ↓
工作区设置(.vscode/settings.json)
  ↓
语言专属设置(如 Python)

👉 越往下优先级越高

所以你看到这个提示,说明:

✔ 有一个更“具体”的地方开启了 Format On Save
(即使你全局关了,它也能生效)


🛠️ 怎么彻底关掉?

你可以这样做👇


✅ 方法一:点“重置”按钮

在设置界面:

👉 找到 Format On Save
👉 点右边的:

Reset (在 Python / Remote)

✅ 方法二:直接改 JSON(推荐)

打开:

Preferences: Open Settings (JSON)

查找有没有这种👇

"[python]": {
  "editor.formatOnSave": true
}

或者:

"editor.formatOnSave": true

👉 改成:

"[python]": {
  "editor.formatOnSave": false
}

💡 一句话总结

👉 “修改于 Python → 远程” = 这个设置只在远程环境的 Python 文件里生效,而且优先级很高


如果你不确定是哪一层在生效,可以把你的 settings.json 发我,我帮你精准定位是哪一条在控制 👍

这个对应的settings.json如何打开

Visual Studio Code 里,不同“作用域”的 settings.json 打开方式不一样(你看到的是 Python → 远程,所以要打开对应那一层)。

我给你按情况讲👇


✅ ⭐ 最直接的方法(推荐)

🔧 打开对应 settings.json

  1. 按:
Ctrl + Shift + P
  1. 输入:
Preferences: Open Settings (JSON)
  1. 回车

👉 这会打开当前生效的 settings.json(很可能就是远程的)


🔍 如果你要精准打开“远程”的

因为你看到的是 远程(Remote),可以这样👇

方法:

  1. 左下角看有没有绿色的远程标识(比如 SSH / WSL)
  2. 按:
Ctrl + Shift + P
  1. 输入:
Preferences: Open Remote Settings (JSON)

👉 这个就是你刚刚那个 “修改于 远程” 对应的文件


🐍 打开 Python 专属配置(重点)

如果是 Python → 远程,那其实是“语言级设置”,会长这样:

"[python]": {
  "editor.formatOnSave": true
}

👉 它一般就在你打开的 settings.json 里面(不用单独文件)


📁 其他可能的位置(进阶)

如果你还是关不掉,很可能在这里👇


📌 工作区设置(优先级更高)

打开项目里的:

.vscode/settings.json

👉 方法:

  1. 左侧文件栏
  2. .vscode 文件夹
  3. 打开 settings.json

🧠 一张图帮你理解

settings.json 可能在这些地方:

① 用户(全局)
② 远程(Remote) ✅ 你现在这个
③ 工作区(.vscode)⚠️ 很常见
④ 语言级([python])👉 写在上面文件里

✅ 推荐你这样做(最快解决)

  1. 打开:
Open Remote Settings (JSON)
  1. 搜:
formatOnSave
  1. 改成:
{
  "editor.formatOnSave": false,
  "[python]": {
    "editor.formatOnSave": false
  }
}

👍 如果你不确定

你可以直接把:

  • 你的 settings.json
  • .vscode/settings.json

发我,我可以帮你一眼找出是哪一层在控制 😄

posted @ 2026-03-26 11:56  X1OO  阅读(23)  评论(0)    收藏  举报