【问题标题】:VSCode - Disable ALL Auto Formatting on SaveVSCode - 在保存时禁用所有自动格式化
【发布时间】:2020-09-01 17:59:18
【问题描述】:

我正在编辑别人的代码,我只想更改 9000 行文件的 1 行。但是每次我保存时,VS Code 都会格式化整个文件并删除任何尾随空格。这是一个禁忌,因为当我提出这个问题时,审稿人将不知道该看哪一行。

我尝试禁用 prettier,将所有文件添加到 .prettierignore,进入 VS Code 设置并禁用格式化程序或空白修剪的任何建议,关闭 formatOnSave

这是我的.vscode/settings.json

{
  "prettier.disableLanguages": [
    "js",
    "json",
    "javascript"
  ],
  "javascript.format.enable": false,
  "typescript.format.enable": false,
  "json.format.enable": false,
  "html.format.enable": false,
  "emmet.showAbbreviationSuggestions": false,
  "css.validate": false,
  "editor.defaultFormatter": null,
  "editor.formatOnSave": false,
  "[javascript]": {
      "editor.formatOnSave": false,
      "editor.defaultFormatter": null
  },
  "editor.trimAutoWhitespace": false,
  "diffEditor.ignoreTrimWhitespace": false,
  "files.trimTrailingWhitespace": false,
  "files.trimFinalNewlines": false,
"eslint.format.enable": false,
"files.autoSave": "off",
}

似乎唯一可行的方法是如果我执行CTRL + SHIFT + P,然后执行SAVE WITHOUT FORMATTING。但是我可以有什么设置,所以我可以通过正常保存来做到这一点?

【问题讨论】:

  • 我在稍微不同的上下文中遇到了同样的问题(即使在将 *.md 添加到 .prettierignore.eslintignore 文件之后,也无法让 Prettier 忽略本地降价文件在本地目录中。Save Without Formatting 也是我目前找到的唯一解决方案。

标签: visual-studio-code


【解决方案1】:

也许tombonnikeplugin called Formatting Toggle 可以帮助你。

它通过切换禁用自动保存。

从它的描述来看:

一个 VS Code 扩展,让您只需单击一下即可打开和关闭格式化程序(Prettier、Beautify 等)。

【讨论】:

  • 我知道你被否决了几次,但这实际上是我想要的。只想偶尔关掉它,并且尽可能简单:)
【解决方案2】:

您是否尝试添加

"editor.formatOnSave": false

在您的用户设置中而不是在您的项目设置中?

【讨论】:

  • 可以确认默认情况下这个"editor.formatOnSave"对于VSCode用户设置是关闭的。 Prettier 可能会在此处执行其他操作,因为即使此设置关闭,它也会在保存时格式化。
【解决方案3】:

如果是 ESLint,而不是 Prettier,解决方案是:

打开Preferences: Open Settings (JSON)并配置:

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

我没有 Prettier,但解决方案可能类似。

【讨论】:

    【解决方案4】:

    我在遇到完全相同的问题时偶然发现了这个问题。我解决它的方法是将文档的语言切换为纯文本(您可以通过单击底部导航栏中的语言来实现)。如果您随后点击“保存”,则不会发生重新格式化。

    缺点:没有语法高亮显示。但是,如果您只是想修正错字或其他问题,不想弄乱设置或安装扩展程序,这可能是一个不错的解决方法。

    【讨论】:

    • 你救了我的命!这正是我修复 2 行缩进所需要的。
    【解决方案5】:

    我不久前遇到了这个问题。我在设置中禁用了formatOnSave 选项。

    转到File > Preferences > SettingsCtrl + ,。 在用户选项卡中选择Text editor 并导航

    Formatting,禁用formatOnSave 选项。

    耶!

    【讨论】:

      【解决方案6】:

      感谢吉列尔莫的回答。

      在 VScode 中转到 文件 -> 首选项 -> 设置 ->(用户选项卡)文本编辑器 - > 格式化 -> 这里取消选中 Format On Save

      【讨论】:

        【解决方案7】:

        遇到同样的问题,只需将 'cmd + s' 绑定到 保存而不格式化。 按 cmd+shift+p 然后搜索 save without formatting 然后点击配置图标,然后用 'cmd + s' 绑定它,问题就解决了:)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-02-07
          • 1970-01-01
          • 2019-09-17
          • 1970-01-01
          • 2021-02-24
          • 1970-01-01
          • 2022-08-04
          相关资源
          最近更新 更多