VS Code:文件末尾新行不持久
Posted
技术标签:
【中文标题】VS Code:文件末尾新行不持久【英文标题】:VS Code: End of file new line not persisting 【发布时间】: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 解决了这个问题。再次感谢您。
【参考方案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 标记 \n
。 Source
【讨论】:
实际上,如果您注意到默认值是 LF,但由于这不起作用,我也尝试用 CRLF 覆盖它,但没有任何运气【参考方案5】:这是错误的设置。
正确的设置是
"files.insertFinalNewline": false,
将此设置为true
将允许在保存文件时添加新行。
还有一个更明确的设置"html.format.endWithNewline": false,
,但我从未使用过它,所以我不确定它是如何工作的。
【讨论】:
无法从应用程序内更新默认设置。当我试图覆盖它时,它会在用户空间(右侧)上设置新值 @imyousuf 这就是 VS Code 设置的工作方式。当您覆盖它时,它将位于用户设置中。您不能覆盖默认默认设置。以上是关于VS Code:文件末尾新行不持久的主要内容,如果未能解决你的问题,请参考以下文章