Front page | perl.perl5.porters |
Postings from April 2003
Re: [PATCH 5.8.0 UTIL] Fix installhtml for splitting and PM/POD conflicts
Thread Previous
|
Thread Next
From:
Rafael Garcia-Suarez
Date:
April 1, 2003 14:44
Subject:
Re: [PATCH 5.8.0 UTIL] Fix installhtml for splitting and PM/POD conflicts
Message ID:
20030402004657.067dc716.rgarciasuarez@free.fr
Steve Hay wrote:
> The patch below fixes four bugs in the installhtml utility:
Thanks, applied as change #19128 to the development sources
of perl. The actual patch I applied is copied below, so you can
know what's the current state of installhtml -- you appear to be
the only one to propose a patch to it since 5.8.0 was released.
(If you want to grab the dev. version of perl, see the perlhack manpage)
I notice that the --splithead option, used by default for
perlipc.pod, doesn't appear to work correctly. Are you inclined
to take a look at it ? (it produces a perlipc/0.html file when
I do "make install.html").
Change 19128 by rgs@rgs-home on 2003/04/01 21:30:12
Subject: [PATCH 5.8.0 UTIL] Fix installhtml for splitting and PM/POD conflicts
From: Steve Hay <steve.hay@uk.radan.com>
Date: Thu, 20 Mar 2003 12:34:15 +0000
Message-ID: <3E79B547.6030201@uk.radan.com>
(with a few minor tweaks)
Affected files ...
... //depot/perl/installhtml#20 edit
Differences ...
==== //depot/perl/installhtml#20 (xtext) ====
@@ -303,6 +303,7 @@
sub create_index {
my($html, $dir) = @_;
+ (my $pod = $dir) =~ s,^.*/,,;
my(@files, @filedata, @index, $file);
my($lcp1,$lcp2);
@@ -328,20 +329,21 @@
close(IN);
# pull out the NAME section
- my $name;
- ($name) = grep(/NAME=/, @filedata);
- ($lcp1,$lcp2) = ($name =~ m,/H1>\s(\S+)\s[\s-]*(.*?)\s*$,sm);
- if (defined $lcp1 and $lcp1 eq '<P>') { # Uninteresting. Try again.
- ($lcp1,$lcp2) = ($name =~ m,/H1>\s<P>\s(\S+)\s[\s-]*(.*?)\s*$,sm);
+ my $name;
+ ($name) = grep(/name="name"/i, @filedata);
+ ($lcp1,$lcp2) = ($name =~ m,/H1>\s(\S+)\s[\s-]*(.*?)\s*$,smi);
+ if (defined $lcp1 and $lcp1 =~ m,^<P>$,i) { # Uninteresting. Try again.
+ ($lcp1,$lcp2) = ($name =~ m,/H1>\s<P>\s*(\S+)\s[\s-]*(.*?)\s*$,smi);
}
- my $url= "$dir/$file" ;
+ my $url= "$pod/$file" ;
if ( ! defined $Options{htmlroot} || $Options{htmlroot} eq '' ) {
- $url = Pod::Html::relativize_url( "$dir/$file", $html ) ;
+ $url = Pod::Html::relativize_url( "$pod/$file", $html ) ;
}
- print HTML qq(<A HREF="$url">);
- print HTML "<DT>$lcp1</A><DD>$lcp2\n" if defined $lcp1;
-# print HTML qq(<A HREF="$url">$lcp1</A><BR>\n") if defined $lcp1;
+ if (defined $lcp1) {
+ print HTML qq(<DT><A HREF="$url">);
+ print HTML "$lcp1</A></DT><DD>$lcp2</DD>\n";
+ }
next;
@@ -350,7 +352,6 @@
for (@index) {
s/<!-- INDEX BEGIN -->(\s*<!--)(.*)(-->\s*)<!-- INDEX END -->/$lcp2/s;
s,#,$dir/$file#,g;
- # print HTML "$_\n";
print HTML "$_\n<P><HR><P>\n";
}
}
@@ -369,7 +370,7 @@
foreach $pod (@splithead) {
# figure out the directory name and filename
$pod =~ s,^([^/]*)$,/$1,;
- $pod =~ m,(.*?)/(.*?)(\.pod)?$,;
+ $pod =~ m,(.*)/(.*?)(\.pod)?$,;
$dirname = $1;
$filename = "$2.pod";
@@ -389,11 +390,11 @@
print "splitting files by item.\n" if $verbose && $#splititem >= 0;
$pwd = getcwd();
- my $splitter = absolute_path($pwd, "$splitpod/splitpod");
+ my $splitter = absolute_path($pwd, "$splitpod/splitpod");
foreach my $pod (@splititem) {
# figure out the directory to split into
$pod =~ s,^([^/]*)$,/$1,;
- $pod =~ m,(.*?)/(.*?)(\.pod)?$,;
+ $pod =~ m,(.*)/(.*?)(\.pod)?$,;
$dirname = "$1/$2";
$filename = "$2.pod";
@@ -550,7 +551,7 @@
next if grep($_ eq "$podroot/$pod.pod", @$ignore);
# check if a .pm files exists too
- if (grep($_ eq "$pod.pm", @pmlist)) {
+ if (grep($_ eq $pod, @pmlist)) {
print "$0: Warning both `$podroot/$pod.pod' and "
. "`$podroot/$pod.pm' exist, using pod\n";
push(@ignore, "$pod.pm");
@@ -592,9 +593,7 @@
# invoke pod2html
print "$podroot/$pod => $htmldir/$html\n" if $verbose;
-#system("./pod2html",
- Pod::Html'pod2html(
- #Pod::Html'pod2html($pod2html,
+ Pod::Html::pod2html(
"--htmldir=$htmldir",
"--htmlroot=$htmlroot",
"--podpath=".join(":", @podpath),
--
Unessential is not *NIX
Thread Previous
|
Thread Next