在我的某些 notepad++ 文件中,按 Enter 键可产生回车符 (CR)和换行符(LF),而在其他文件中,它只产生换行符。
我找不到任何关于某个文件如何表现的经验法则。什么决定了行为,我如何控制它?
答案1
这取决于您的文件来自哪里。
行尾为
\n
对于 Unix/Linux 文件\r\n
对于 Windows 文件\r
适用于旧的 Mac 文件
感谢 David Postill,
如果要在打开的文件中修改EOL:
Menu Edit >> EOL Conversion >>
在 Windows、Unix 或 Mac 中选择所需的版本
答案2
“默认”规则是查看现有文件并继续使用找到的任何 EOL 字符。每Toto 的回答,您可以设置 EOL 转换(从而设置将使用的 EOL 字符);“标准”EOL 字符如答案中所述 -0x0A
适用于 Unix/Linux(可能还有 FreeBSD 和当前的 Mac)、0x0D
适用于较旧的 Mac 文件以及0x0D 0x0A
适用于 Windows/MS-DOS(继承自 CP/M)。
文件的实际来源无关紧要;我通过使用十六进制编辑器在 Windows 中创建一个用作0x0A
EOL 字符的文本文件来测试这一点,当我在 Notepad++ 中打开它时,它继续用作0x0A
EOL 字符。