unicode - 如何使用GNU diff差异utf-16文件?

标签 unicode diff gnu

GNU diff似乎不够聪明,无法检测和处理UTF-16文件,这让我感到惊讶。我是否缺少明显的命令行选项?有没有好的选择?

最佳答案

从GNU diff文档中:


处理多字节和可变宽度
性格

diff,diff3和sdiff处理每行
输入为单字节字符串
字符。这可能会处理不当
在某些情况下为多字节字符。
例如,当要求忽略时
空格,差异未正确忽略
多字节空格字符。

此外,diff目前假设每个
字节是一列宽,这个
某些假设是不正确的
语言环境,例如使用UTF-8的语言环境
编码。这会导致问题
-y或--side-by-side选项
差异

这些问题需要解决
不会过度影响
公用事业的表现
单字节环境。

IBM GNU / Linux技术中心
国际化团队已经提出
一些补丁支持
国际化差异
http://oss.software.ibm.com/developer/opensource/linux/patches/i18n/diffutils-2.7.2-i18n-0.1.patch.gz
不幸的是,这些补丁是
不完整,且版本较旧
diff,所以需要做更多的工作
在这方面。


我从来没有意识到自己。

如果非自由,非命令行工具可以完成任务,但仍在寻找免费的命令行工具,看来Guiffy可以胜任这项工作:

http://www.guiffy.com/Diff-Tool.html

关于unicode - 如何使用GNU diff差异utf-16文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/778291/

相关文章:

vb6 - (VB6) 属性 VB_Expose 的用途是什么?如何修改它?

python - 如何在 Windows 上安装 gnu gettext (>0.15)?所以我可以在 Django 中生成 .po/.mo 文件

git - 如何查看git中第一次和第三次提交的区别?

unix - 差异文件存在于两个不同的目录中

c++ - 相当于 gnu 中 windows stdint.h 的 u_int16_t?

linux - http ://ftp. gnu.org/gnu/gdb/gdb-7.9.tar.gz 中缺少 gdbserver 7.9

delphi - 如何在按键时识别 unicode 键?

c++ - 库的字符串编码应该符合 Unicode 还是灵活的?

java - Android Studio 波斯语字符串

unicode - 何时使用 Unicode(除了非 unicode!)