Mac OS X上的uconv在任何地方?


3

uconv实用程序(从工具ICU提供Unicode范式)适用于Mac OS X?

我在自制软件中找不到它,并且在网络上搜索解决方案并没有发现对我有用的东西。

Answers:


3

我为您提供的解决方案:

brew install icu4c

在安装后阅读该消息(目前尚无直接可用的信息……):

==>警告,此公式仅适用于小桶,这意味着它未符号链接到/ usr / local。

brew list icu4c | grep uconv

/usr/local/Cellar/icu4c/55.1/bin/uconv

/usr/local/Cellar/icu4c/55.1/share/man/man1/uconv.1

毕竟,这是我使用此工具进行标准化(NFC)utf8文本的示例:

/usr/local/Cellar/icu4c/55.1/bin/uconv -f utf-8 -t utf-8 -x NFC ~/Desktop/ue.txt | od -t x1


1

不知道它是否适合您的需求,但请查看iconvosx附带的内容。尝试iconv --list列出支持的编码。


1
看起来iconv仅在字符集之间转换。Uconv将文本(仅Unicode)从一种形式转换为另一种等效形式。
ph

你想做什么?man iconv指出“ iconv程序将文本从一种编码转换为另一种编码。” man uconv表示“ uconv将一种编码转换为另一种编码”
madmax1

1
您可以使用iconv -f <from_encoding> -t UTF-8-MAC <input>。请注意,该utf-8-mac字符集代表unicode的NFD
madmax1

1
是的,它可以。使用UTF-8对Unicode的NFC。我发现使用google导致了这一问题。不知道在哪里记录。
madmax1

1
utf-8-mac不是NFD,而是HFS +使用的 NFD的变体,其中某些字符范围未分解。printf \\uf900|/usr/local/opt/icu4c/bin/uconv -f utf-8 -t utf-8 -x NFD|xxd -p打印e8b188(已分解)但printf \\uf900|iconv -f utf-8 -t utf-8-mac|xxd -p打印efa480(未分解)。
nisetama
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.