我懂了
替代文本 http://files.getdropbox.com/u/175564/bug-enc.png
所有内容都在一行上。
看来这是编码错误的原因。我可以看到字符^M
。
如何在 Vim 中正确获取编码?
答案1
尝试:
:set fileformats=unix,dos,mac
然后使用 重新读取您的文件:e
。
答案2
这些是“换行符”,或换行符。
从您的屏幕截图来看,该文件使用了 Mac 风格的换行符,即一个回车符(0x0D
,在屏幕截图中显示为^M
)。
Windows(以及大多数 Internet 协议)同时使用回车符和换行符(0x0D 0x0A
),而 Unix 使用单个换行符(0x0A
)来分隔行。Mac 过去只使用回车符(现在 Unix 风格在 MacOS X 上也很常见)。
在 vi/vim 中,尝试此命令使其识别该文件:
:设置 ff=mac
您可以尝试使用此命令将文件转换为 Windows 风格的换行符:
sed "s/\x0D/\x0D\x0A/g" yourfile.html > yourfile.new.html