Possible Duplicate:
07000
我和wordpress很多工作,有时候我暂时改变了wordpress的核心文件,以便了解发生了什么,尤其是在调试时。今天我有一点惊喜当我准备好将我的更改提交到我的git存储库时,我注意到,git状态正在将wordpress文件中的一个标记为不分段提交。我记得在关闭之前已经将所做的所有修改还原到该文件,所以我决定使用diff来查看发生了什么变化。我将我的项目文件与我在我的下载目录中保存的wordpress副本上的文件进行了比较。最终文件不一样。 diff表示原始文件末尾缺少一个换行符:
1724c1724 < } \ No newline at end of file --- > }
我从来没有触摸过这条线。我在一个大文件中间的某处改变了。这导致我认为vim在文件末尾添加了一个换行符。为什么会发生这种情况?
我在这里看到的所有答案都解决了“如何防止Vim在文件末尾添加换行符”,而问题是“为什么Vim会在文件末尾添加新行? ”。我的浏览器的搜索引擎把我带到这里,我没有找到这个问题的答案。
它与POSIX标准如何定义一条线有关(见Why should files end with a newline?)。所以,基本上一行是:
因此,他们都需要以换行符结尾。这就是为什么Vim默认添加换行符(因为根据POSIX,它应该永远在那里)。
这不是唯一的编辑。 Gedit,GNOME中的默认文本编辑器也是一样的。
编辑
许多其他工具也期望换行符。参见例如:
> How wc
expects it.
> GCC warns about it。
而且,您可能会感兴趣:Vim show newline at the end of file。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。