gpt4 book ai didi

perl - 为什么 perldoc 将 'Münster' 评估为 'Muenster'

转载 作者:行者123 更新时间:2023-12-04 01:09:20 25 4
gpt4 key购买 nike

我有一个简单的 POD 文本文件:

$ cat test.pod 
=encoding UTF-8

Münster

根据文件的文字十六进制转储,它以 UTF-8 编码:
00000000  3d 65 6e 63 6f 64 69 6e  67 20 55 54 46 2d 38 0a  |=encoding UTF-8.|
00000010 0a 4d c3 bc 6e 73 74 65 72 0a |.M..nster.|
0000001a

“ü”被编码为两个字节 C3 和 BC。

但是当我运行 perldoc在文件上,它将我可爱的格式化 UTF-8 字符转换为 ASCII。

更重要的是,它正确地处理了将“ü”表示为“ue”的德语惯例。
$ perldoc test.pod | cat
TEST(1) User Contributed Perl Documentation TEST(1)

Muenster

perl v5.16.3 2014-06-10 TEST(1)

为什么要这样做?

是否有额外的声明可以放入我的文件中以阻止它发生?

经过与 App::perlbrew 的额外调查我发现不同之处在于拥有特定版本的 Pod::Perldoc。
perl-5.10.1    3.14_04    Muenster
perl-5.12.5 3.15_02 Muenster
perl-5.14.4 3.15_04 Muenster
perl-5.16.2 3.17 Münster
perl-5.16.3 3.19 Muenster
perl-5.16.3 3.17 Münster
perl-5.17.3 3.17 Münster
perl-5.18.0 3.19 Muenster
perl-5.18.1 3.23 Münster

但是,如果可能的话,我仍然希望有一种方法可以使 Pod::Perldoc 3.14、3.15 和 3.19 的行为“正确”。

最佳答案

找到这张 RT 票 http://rt.cpan.org/Public/Bug/Display.html?id=39000

这个“错误”似乎是在 Perl 5.10 中引入的,也许这在以后的版本中得到了解决。

另见:How can I use Unicode characters in Perl POD-derived man pages?incorrect behaviour of perldoc with UTF-8 texts .

您应该添加 Pod::Perldoc 的最新可用版本作为依赖。

关于perl - 为什么 perldoc 将 'Münster' 评估为 'Muenster',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24137172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com