#!/usr/bin/perl -w use strict; use Pod::Simple::HTML; use File::Find::Rule; use File::Spec; use File::Basename; use File::Path; =head1 NAME local-doc.pl - create local documentation =cut my ($docdir,$bindir) = @ARGV; my $rel_docroot = '.'; { no warnings 'redefine'; sub Pod::Simple::HTML::resolve_pod_page_link { my ($self,$link) = @_; my $to = $link; $to =~ s!::!-!g; $to .= '.html'; # warn "$rel_docroot/$to"; return "$rel_docroot/$to"; }; }; my @files = File::Find::Rule->file()->name(qr(^.*\.(pm|pl|pod)$))->in($bindir); for my $file (@files) { my $input = $file; my @outfile = File::Spec->splitdir( File::Spec->abs2rel( $file, $bindir )); my $outfile = File::Spec->catfile( $docdir, join "-", @outfile ); $outfile =~ s/\.[^.]+$/.html/; # print "Generating $outfile"; my $stylesheet = "style.css"; my $parser = Pod::Simple::HTML->new(); my $html; $parser->output_string($html); $parser->parse_file($file); $html =~ s!\s*!!sm; open OUTPUT, ">", $outfile or die "Couldn't create '$outfile': $!"; print OUTPUT $html; close OUTPUT; # print ", done.\n"; }; =head1 AUTHOR Max Maischein (corion@cpan.org) =cut