我将Pod::Weaver与Dist::Zilla一起使用。它对我有好处。它自动添加POD部分VERSION,AUTHOR,LICENSE,在我的源代码中我可以使用简单的POD语法,我可以编写“= method new”,它将被转换为正确的POD。
现在我想在POD中添加图片。要做到这一点,我需要添加一些HTML。所以我写的是source code:
=begin HTML
<p>
<a href="http://upload.bessarabov.ru/bessarabov/031VBX4pHw_ALPcxRTVjflnAWuc.png">
<img src="http://upload.bessarabov.ru/bessarabov/VdagpUXEQdMslOqUyOAzwa-DOaU.png" width="500" height="125" alt="Status board graph sample" />
</a>
</p>
=end HTML
然后我写dzil release
并在CPAN上发布module。上传到CPAN后,我发现我的HTML POD已被Pod :: Weaver更改,现在它看起来像:
=for HTML <p>
<p>
<a href="http://upload.bessarabov.ru/bessarabov/031VBX4pHw_ALPcxRTVjflnAWuc.png">
<img src="http://upload.bessarabov.ru/bessarabov/VdagpUXEQdMslOqUyOAzwa-DOaU.png" width="500" height="125" alt="Status board graph sample" />
</a>
</p>
此HTML部分已在POD中移动。我希望它只是在SYNOPSIS之后,但不是在最后一个方法之后。
我仍然想使用Pod :: Weaver,因为它做了很多好事,但我希望将HTML放在POD的确切位置而不是转换。
我该怎么做?
答案 0 :(得分:0)
经过大量阅读perldoc perlpod
并进行测试后,以下事项显而易见:
=begin html
段可以安全地转换为=for html
段。foo\nbar
可以翻译,但foo\n\nbar
不能翻译。=begin
到=for
的{{3}},当在其正文中看到双\n
时,拒绝发出=for
,而是恢复发送=begin
。给出数字3这是什么,如果你想强制它发出=begin html
,只需用一些额外的\n
来加强它就可以了。
然而,问题仍然存在,无论出于何种原因,给出的有效POD格式似乎都没有按预期呈现。
无论
=for
(在这种情况下,强制\n
可能会有一些额外的=begin
帮助。如果问题是 B ,那么你就不会因为棘手而解决这个问题。
虽然我向你保证,显示图片 IS 可行,module that is doing the transformation