Scroll to navigation

PODS2HTML(1p) User Contributed Perl Documentation PODS2HTML(1p)


pods2html - translate a tree of PODs to HTML


"pods2html" ["--base" url] ["--css" url] ["--empty"] ["--index" title] ["--module"] ["--"["no"]"toc"] ["--hr" level] ["--bgcolor" #rrggbb] ["--text" #rrggbb] ["--variables"] PODdir HTMLdir [template [variable=value ...]]


"pods2html" finds all the .pod and .pm files in the directory tree rooted at PODdir. It translates each POD to HTML, and writes it to a parallel directory tree rooted at HTMLdir

It makes the HTML files world-readable.

If a template file is provided, then template will be filled in by the "Text::Template" module and written to dest. Here is a minimal template, showing all the variables that are set by "pods2html".

    <base href="{$base}">
    <link href="{$css}" rel="stylesheet" type="text/css">
   <body bgcolor="{$bgcolor}" text="{$text}">

If the "--variables" option is provided, then the file will be executed with a "do" call before the template is filled in. may contain arbitrary Perl code. The program fragments in the template are evaulted in the "Pod::Tree::HTML" package. Any variables that sets in this package will be available to the template.

Additional scalar variables may be set on the command line with the variable=value syntax. Variables set on the command line override variables set in


"--base" url
Specifies a base URL for HTML links.
"--css" url
Specifies a Cascanding Style Sheet for the generated HTML pages. Here are example rules for all the different HTML elements that may appear in a POD.

    a:link { background: #ff8080 }
    body   { background: #f0f0f0 }
    code   { background: #c0ffc0 }
    dd     { background: #ffffe0 }
    dl     { background: #fffff0 }
    dt     { background: #ffffc0 }
    h1     { background: #ffc0c0 }
    h2     { background: #ffe0e0 }
    hr     { background: #ff0000; height: 5px }
    i      { background: #ffc0c0 }
    li     { background: #e0e0e0 }
    ol     { background: #fff0ff }
    p      { background: #f0f0ff }
    pre    { background: #f0fff0 }
    ul     { background: #f0ffff }
Creates HTML files for empty PODs. If this option is not provided, then no HTML file is created for empty PODs.
"--index" title
Writes an index of all the HTML files to HTMLDir/index.html. title is used as the title of the index page.
Ignores files in directories named t/ and blib/. Useful for translating PODs in a module development directory.
Includes or omits the table of contents. Default is to include the TOC.
"--hr" level
Controls the profusion of horizontal lines in the output, as follows:

    level   horizontal lines
    0       none
    1       between TOC and body
    2       after each =head1
    3       after each =head1 and =head2

Default is level 1.

"--bgcolor" #rrggbb
Set the background color to #rrggbb. Default is white.
"--text" #rrggbb
Set the text color to #rrggbb. Default is black.


"Pod::Tree::HTML", "HTML::Stream"


The recursion check doesn't work on Win32. This means that the program will enter an infinite recursion if HTMLdir is a subdirectory of PODdir.


"pod2html", "Pod::Tree::HTML"


Steven McDougall, <>


Copyright (c) 1999-2010 by Steven McDougall. This program is free software; you can redistribute it and/or modify it under the same terms as Perl.

2019-02-25 perl v5.28.1