Pod::Simple::HTMLBatch - 将多个 Pod 文件转换为多个 HTML 文件
perl -MPod::Simple::HTMLBatch -e 'Pod::Simple::HTMLBatch::go' in out
此模块用于批量转换大量 HTML 文档。
此类不是 Pod::Simple::HTML 的子类(也不是旧的 Pod::Html),尽管它使用 Pod::Simple::HTML 来转换每个文档。
此类的正常使用方式如下
use Pod::Simple::HTMLBatch;
my $batchconv = Pod::Simple::HTMLBatch->new;
$batchconv->some_option( some_value );
$batchconv->some_other_option( some_other_value );
$batchconv->batch_convert( \@search_dirs, $output_dir );
请注意,此类还提供(但不导出)函数 Pod::Simple::HTMLBatch::go。这基本上只是 Pod::Simple::HTMLBatch->batch_convert(@ARGV)
的快捷方式。它旨在方便从命令行调用。
但是,此快捷方式要求您指定恰好两个命令行参数,indirs
和 outdir
。
示例
% mkdir out_html
% perl -MPod::Simple::HTMLBatch -e Pod::Simple::HTMLBatch::go @INC out_html
(to convert the pod from Perl's @INC
files under the directory ./out_html)
(请注意,命令行中包含一个字面上的 atsign-I-N-C。这是由 batch_convert 作为特殊情况处理的,以避免您在想要“只使用 @INC 中的内容”时,必须将 "" 作为第一个命令行参数输入。)
示例
% mkdir ../seekrut
% chmod og-rx ../seekrut
% perl -MPod::Simple::HTMLBatch -e Pod::Simple::HTMLBatch::go . ../seekrut
(to convert the pod under the current dir into HTML
files under the directory ./seekrut)
示例
% perl -MPod::Simple::HTMLBatch -e Pod::Simple::HTMLBatch::go happydocs .
(to convert all pod from happydocs into the current directory)
这将创建一个新的批处理转换器。该方法不接受参数。要更改转换器的属性,请使用下面的 "访问器方法"。
这将搜索 indirs 中给定的目录,并为每个目录写入 HTML 文件到 outdir 中的对应目录。目录 outdir 必须存在。
这两个 indirs 值指定了正常的 Perl @INC
这指定了输入目录是数组引用 \@dirs
中的项目。
这指定了目录 "somedir" 是输入。(这可以是绝对路径或相对路径,无关紧要。)
您可能想要的一个常用值只是 ".",表示当前目录
$batchconv->batch_convert( "." , ...);
这指定了您想要扫描目录“somedir”、“someother”和“also”,就像您传递了数组引用[qw( somedir someother also)]
一样。请注意,在 Unix 下,“:” 分隔符是正常的,但在 MSWin 下,您需要使用'somedir;someother;also'
,因为 MSWin 上的路径分隔符是“;”,而不是“:”。(而这是因为“:” 经常出现在路径中,例如"c:/perl/lib"
。)
(应该使用哪个分隔符字符,是从$Config::Config{'path_sep'}
中获取的,通过Config 模块。)
这指定了您想要将 HTML 输出放到当前目录中。
(请注意,在第一个插槽中,缺少或未定义的值与第二个插槽中的含义不同。这样,batch_convert()
没有参数(或未定义参数)就意味着“从 @INC 转到当前目录”。)
这指定了您想要将 HTML 输出放到目录 'somedir' 中。(这可以是绝对路径或相对路径,无关紧要。)
请注意,您也可以将 batch_convert
作为类方法调用,如下所示
Pod::Simple::HTMLBatch->batch_convert( ... );
这只是以下内容的简写
Pod::Simple::HTMLBatch-> new-> batch_convert(...);
也就是说,它使用默认选项运行转换,用于您指定的任何输入目录和输出目录。
以下是所有访问器方法——也就是说,它们本身不执行任何操作,而只是更改转换对象的內容,该对象包含此特定批处理转换的选项。
我们在下面显示了访问器的“put”形式(即,用于将访问器设置为特定值的语法)。但您也可以在不带参数的情况下调用每个方法来获取其当前值。例如,$self->contents_file()
返回 contents_file 属性的当前值。
这控制了在批处理转换期间的详细程度,就有关转换进度的 STDOUT(或任何被select
的内容)的说明而言。如果为 0,则不打印任何进度信息。如果为 1(默认值),则会打印一些进度信息。更高的值会打印更多信息。
这控制了每个 HTML 页面是否可能在顶部有一个小目录表(出于历史原因,我们称之为“索引”。)。默认情况下,这是真的。
如果设置,则应为要写入 HTML 索引的文件名(在输出目录中)。默认值为“index.html”。如果将其设置为假值,则不会写入任何内容文件。
这指定了在内容页开头应放置的字符串。默认情况下,字符串类似于以下内容
<html>
<head><title>Perl Documentation</title></head>
<body class='contentspage'>
<h1>Perl Documentation</h1>
这指定了在内容页末尾应放置的字符串。默认情况下,字符串类似于以下内容
<p class='contentsfooty'>Generated by
Pod::Simple::HTMLBatch v3.01 under Perl v5.008
<br >At Fri May 14 22:26:42 2004 GMT,
which is Fri May 14 14:26:42 2004 local time.</p>
待办事项
待办事项
如果为真(默认值),我们将自动在输出目录中生成一些 CSS 文件,并将我们的 HTML 文件设置为使用这些文件。待办事项:继续
如果为真(默认值),我们将自动在输出目录中生成一个 JavaScript,并将我们的 HTML 文件设置为使用它。目前,JavaScript 仅用于让浏览器记住它喜欢的样式表。待办事项:继续
待办事项
这将设置用于渲染文件的类。默认值为“Pod::Simple::HTML”。如果将其设置为其他内容,则它可能应该是 Pod::Simple::HTML 的子类,并且您应该require
或use
该类,以便在 Pod::Simple::HTMLBatch 尝试加载它之前加载它。
此选项设置用于搜索文件的类。默认值为 "Pod::Simple::Search"。如果您将其设置为其他值,它应该是一个 Pod::Simple::Search 的子类,并且您应该使用 `require` 或 `use` 加载该类,以便在 Pod::Simple::HTMLBatch 尝试加载它之前加载它。
待办事项
call add_css($someurl) to add stylesheet as alternate
call add_css($someurl,1) to add as primary stylesheet
call add_javascript
subclass Pod::Simple::HTML and set $batchconv->html_render_class to
that classname
and maybe override
$page->batch_mode_page_object_init($self, $module, $infile, $outfile, $depth)
or maybe override
$batchconv->batch_mode_page_object_init($page, $module, $infile, $outfile, $depth)
subclass Pod::Simple::Search and set $batchconv->search_class to
that classname
Pod::Simple,Pod::Simple::HTMLBatch,perlpod,perlpodspec
有关 POD 和 Pod::Simple 的问题或讨论,请发送到 [email protected] 邮件列表。发送空邮件到 [email protected] 订阅。
此模块在开放的 GitHub 仓库中管理,https://github.com/perl-pod/pod-simple/。欢迎您随意 fork 和贡献,或克隆 git://github.com/perl-pod/pod-simple.git 并发送补丁!
欢迎针对 Pod::Simple 的补丁。请将错误报告发送到 <[email protected]>。
版权所有 (c) 2002 Sean M. Burke。
此库是自由软件;您可以根据与 Perl 本身相同的条款重新发布和/或修改它。
此程序按“原样”提供,没有任何形式的明示或暗示的保证,包括但不限于适销性和特定用途适用性的暗示保证。
Pod::Simple 由 Sean M. Burke <[email protected]> 创建。但不要打扰他,他已经退休了。
Pod::Simple 由以下人员维护:
Allison Randal [email protected]
Hans Dieter Pearcey [email protected]
David E. Wheeler [email protected]