![Emacs 自动将 BOM 添加到 XML 文件](https://linux22.com/image/4748/Emacs%20%E8%87%AA%E5%8A%A8%E5%B0%86%20BOM%20%E6%B7%BB%E5%8A%A0%E5%88%B0%20XML%20%E6%96%87%E4%BB%B6.png)
这似乎与这次讨论但我有完全相反的用例。我不想插入 BOM,但emacs
似乎正在以 XML 模式插入 BOM(甚至不处于 状态hexl-mode
)。我正在使用 GNU Emacs 23.3.1。
我有以下 XML 文件:
$ cat a.xml
<?xml encoding="UTF-16"?><a/>
$ xxd a.xml
0000000: 3c3f 786d 6c20 656e 636f 6469 6e67 3d22 <?xml encoding="
0000010: 5554 462d 3136 223f 3e3c 612f 3e0a UTF-16"?><a/>.
该文件确实不是可以看到,包含 BOM。当我尝试打开它时,emacs a.xml
我看到的是:
当我切换到时,hexl-mode
似乎已插入 BOM:
即使我使用 启动 Emacs,也会发生这种情况emacs -Q
。
答案1
解决方案是使用 find-file-literally 加载文件。
答案2
使用此标签,emacs 会将 xml 文件保存为带有 bom 的 utf-16 big endian。
<?xml encoding="UTF-16"?>
Ascii 标签(来自 IANA 字符集):
<?xml encoding="US-ASCII">