【问题标题】:VS Code: End of file new line not persistingVS Code:文件末尾新行不持久
【发布时间】:2018-10-14 05:37:43
【问题描述】:

我面临一个恼人的问题,即没有为 HTML 和 JavaScript 保存新行,尽管明确设置它们应该完成。有人可以指导我做错了什么吗?

GitHub Project

Visual Studio Code 版本详情:

Version 1.23.0
Commit 7c7da59c2333a1306c41e6e7b68d7f0caa7b3d45
Date 2018-05-03T15:23:19.356Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64

VS 代码设置:

【问题讨论】:

  • 您已显示用户设置。我们可以假设您的工作区设置中没有任何内容或没有任何冲突吗?覆盖用户设置。
  • 设置看起来正确。您可以尝试在没有扩展 code --disable-extensions 的情况下运行 VS Code,以确保这不是扩展之一的操作。您还可以在 VS Code Insiders (code.visualstudio.com/insiders) 中检查这些设置是否有效。
  • @Mark 是的,我的工作区设置完全为空
  • @VictorS。当我开始禁用扩展时,文件新行的末尾确实按预期工作。如何调试和识别导致它的确切扩展?
  • @VictorS。 NVM,我实际上开始卸载未使用的扩展并删除特定的扩展,实际上通过卸载this plugin 解决了这个问题。再次感谢您。

标签: visual-studio-code newline vscode-settings


【解决方案1】:

转到 vs code 中的扩展并删除名为 save on typing 的扩展并将其删除,一切都会好起来的

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
【解决方案2】:

这是因为?CODE中的默认设置

  // When enabled, insert a final new line at the end of the file when saving it.
  "files.insertFinalNewline": false,

将其设置为 true,您将能够坚持新行。我还建议您在最后打开多个新行的修剪器。

  • 第 1 步:按 + ,(Windows/Linux 上为 CTRL)打开设置。
  • 第 2 步:添加以下两个设置。

    "files.insertFinalNewline": true, “files.trimFinalNewlines”:是的,

⚡这是一个 GIF 演示 - 保存文件以添加一行或修剪多余的行

【讨论】:

  • 如果您通读问题中的 cmets 和接受的答案(我代表 VictorS 回答,他应该得到 IMO 的赏金,但我不能对评论给予奖励);我的设置是正确的,但是一个插件会导致它被覆盖(这可能是该插件本身的一个错误)。
  • 很高兴你发现它很有用:)
  • 如何禁用 vscode 自动为 js 文件添加换行符?我使用更漂亮的 eslint
【解决方案3】:

问题不在于设置,而在于扩展。正如 VictorS. 在问题中的评论中指出的那样,在 code --disable-extensions 中运行编辑器我验证了没有扩展它确实有效。然后我开始卸载扩展,直到它正常工作,最后归零到this plugin,然后卸载它使事情按我的预期工作。

【讨论】:

    【解决方案4】:

    您已将 files.eol 设置为 \r\n。我不是专家,但由于您使用的是 Linux,您可能想尝试使用 Linux 特定的 EOL 标记 \nSource

    【讨论】:

    • 实际上,如果您注意到默认值是 LF,但由于这不起作用,我也尝试用 CRLF 覆盖它,但没有任何运气
    【解决方案5】:

    这是错误的设置。

    正确的设置是

    "files.insertFinalNewline": false,
    

    将此设置为true 将允许在保存文件时添加新行。 还有一个更明确的设置"html.format.endWithNewline": false,,但我从未使用过它,所以我不确定它是如何工作的。

    【讨论】:

    • 无法从应用程序内更新默认设置。当我试图覆盖它时,它会在用户空间(右侧)上设置新值
    • @imyousuf 这就是 VS Code 设置的工作方式。当您覆盖它时,它将位于用户设置中。您不能覆盖默认默认设置。
    猜你喜欢
    • 2017-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多