当比较具有相同内容但具有行结尾的两个文件时,vim diff不会检测到差异.有没有办法让vimdiff显示出差异.
当文件具有不一致(dos与unix)行结尾时,Vim会将它们检测为unix,并且行将显示尾随CR(^M),也在diff中.
当一个文件始终使用dos时,您描述的内容(未检测到更改)发生,而另一个文件始终使用unix行结尾.Vim然后"抽象" :help 'fileformat'选项值中的一致行结尾.
一些用户将'fileformat'值放入'statusline',并使用它来注意差异.(我使用条件来执行此操作,只有在它与平台的默认值不同时才显示它.)
如果要在diff本身内部显示行结束差异'fileformat',可以在启动时强制执行unix:
$ vimdiff --cmd 'set fileformats=unix' file1 file2
Run Code Online (Sandbox Code Playgroud)
或者在Vim里面:
:windo e! ++ff=unix
Run Code Online (Sandbox Code Playgroud)