我怎样才能让mojibake通过?这可能是贡献者插件中的一个错误。该字符在perldoc中无法正确呈现,但在我的vim和提取的git日志中都可以呈现。
# Failed test 'Mojibake test for blib/lib/Pod/Spell.pm'
# at /home/xenoterracide/perl5/perlbrew/perls/perl-5.18.1/lib/site_perl/5.18.1/Test/Mojibake.pm line 168.
# Non-UTF-8 unexpected in blib/lib/Pod/Spell.pm, line 431 (POD)
这是the source的一个片段,由于复制粘贴可能无法解决编码问题,因此应该直接查看。
=item *
Olivier Mengué <dolmen@cpan.org>
=back
更多vim探索显示:set filencoding
被更改为latin1
在vim中编辑文件似乎解决了这个问题,但是由于文件正在生成,我怎样才能使用正确的编码?
答案 0 :(得分:4)
简短的回答是,Dist :: Zilla还没有utf-8干净(在这里阅读更多内容 - https://github.com/rjbs/Dist-Zilla/issues/212)。答案很长,取决于你正在使用什么插件,以及在什么配置中,因为通常可能让你的dist出来正确,即使核心做错了。
我建议暂时将您的pod编码更改为ISO-8859-1,因为这可能是字符在输出文件中的形式。
也就是说,在weaver.ini
:
[-Encoding]
encoding = ISO-8859-1
如果失败(很可能你的.pm文件中出现了两个 utf8和latin1字符),你现在必须删除[Test :: Mojibake]。
RJBS says this should be fixed in Dist::Zilla version 5
如果您有非默认weaver.ini
,则在升级到Dist :: Zilla 5和Pod :: Weaver 4之后,您需要将以下内容添加到weaver.ini
以{{1添加了
=encoding utf8