加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

为什么perldoc将“明斯特”评为“明斯特”

发布时间:2020-12-15 21:33:35 所属栏目:大数据 来源:网络整理
导读:我有一个简单的POD文本文件: $cat test.pod =encoding UTF-8Mü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.|00
我有一个简单的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

这个“bug”似乎是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作为依赖.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读