Winmerge 将哪些空白符号用于行尾(EOF 和 EOL)?

What whitespace symbols does Winmerge use for line endings (EOF and EOL)?

如果我 select 从 WinMerge 的视图菜单中查看空白,则会显示行结束符号。有一个文件改了,但是我找不到任何关于什么符号代表什么字符的文档。

不知道这对符号是什么意思,这是行尾转换为CR/LF之前的文件:

这个符号似乎代表 CR/LF 对,因为我将文件转换为具有这些行结尾:

为了添加更多上下文,Visual Studio 检测到该文件具有混合行结尾,并将其转换为 CR/LF。然后我查看了与存储在 git 中的原始文件的差异。因此,git 的行结束转换可能与它转换原始文件的方式有一些相互作用。我的行尾是自动更改为 windows 行尾。

WinMerge 2.14.0.0 Unicode(可能还有其他版本)在菜单下有一个设置://edit/options/Editor "preserve original EOL characters".

  • 选中 "preserve original EOL characters" 时,WinMerge 显示某些文件 §¶,其他文件显示 1.
  • 取消选中 "preserve original EOL characters" 时,WinMerge 显示 ¤
    注意:未选中 "preserve original EOL characters" 会导致 WinMerge 将两个看起来相同的文件标记为每一行都有差异。

使用十六进制编辑器表明:

  • 0x0d a.k.a。 <cr>显示为§;和
  • 0x0a a.k.a。 <lf> 显示为 .

1 我的存储库中行结尾的疑似问题导致我 ;因此我有 §¶.