是否有专门的 Mercurial 配置属性指定文件内容的编码,因此 Mercurial 客户端应该使用它来正确显示文件?
我发现web.encoding
这似乎并不完全意味着我正在寻找什么。此外,谷歌也给出了一些结果ui.encoding
,但我在参考资料中找不到任何提示。
是否有专门的 Mercurial 配置属性指定文件内容的编码,因此 Mercurial 客户端应该使用它来正确显示文件?
我发现web.encoding
这似乎并不完全意味着我正在寻找什么。此外,谷歌也给出了一些结果ui.encoding
,但我在参考资料中找不到任何提示。
Mercurial 不关心您放入存储库中的文件的编码:Mercurial 乐于存储具有任何编码(或者可能根本不是特定编码)的文件。
这意味着您可以将带有 UTF-8、Latin-1 或任何其他编码的文件添加到您的存储库中,Mercurial 将按照您添加它们时的原样检查它们。
每个文件的编码不存储在 Mercurial 中的任何位置,由客户端来识别编码(可能基于有意义的文件内容,例如,对于 XML 文件)。
对于 Mercurial 桌面客户端(根据您在下面的评论),我建议查看文件内容:
NUL
字节吗?然后停止并将其声明为“二进制”。UTF-16 和 UTF-8 编码很好,因为它们是结构化的,这使您可以检测到文件不是有效的 UTF-8 编码,比如说。上面的列表是从欧洲的角度编写的——您可能还应该咨询了解 Shift JIS 和亚洲使用的其他编码的人。
无论如何,我只希望 Mercurial 客户端尽最大努力向我展示一个编码不是 ASCII 的文件。
您的问题的一些替代解释:
如果您真的在询问如何使您的文件在查看时看起来“正确” hgweb
,那么问题在于在存储库中使用一致的编码并设置 `web.encoding。
如果您在查看Mercurial 附带的eol 扩展时,真的要问如何确保文本文件在不同平台(\n
在 Unix 上、\r\n
在 Windows 上)上获得操作系统本机行结束字符。
不。编码(字符集)是存储库中文件的属性