summaryrefslogtreecommitdiffstats
path: root/contrib/perl5/pod/pod2latex.PL
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/perl5/pod/pod2latex.PL')
-rw-r--r--contrib/perl5/pod/pod2latex.PL10
1 files changed, 7 insertions, 3 deletions
diff --git a/contrib/perl5/pod/pod2latex.PL b/contrib/perl5/pod/pod2latex.PL
index feed98e..71115f3 100644
--- a/contrib/perl5/pod/pod2latex.PL
+++ b/contrib/perl5/pod/pod2latex.PL
@@ -101,7 +101,6 @@ print OUT <<'!NO!SUBS!';
# Translation of HTML escapes of various European accents might be wrong.
-$/ = ""; # record separator is blank lines
# TeX special characters.
##$tt_ables = "!@*()-=+|;:'\"`,./?<>";
$backslash_escapables = "#\$%&{}_";
@@ -119,13 +118,16 @@ $indent = 0;
# parse the pods, produce LaTeX.
-open(POD,"<$ARGV[0]") || die "cant open $ARGV[0]";
+use Pod::Plainer;
+open(POD,"-|") or Pod::Plainer -> new() -> parse_from_file($ARGV[0]), exit;
+
($pod=$ARGV[0]) =~ s/\.pod$//;
open(LATEX,">$pod.tex");
&do_hdr();
$cutting = 1;
$begun = "";
+$/ = ""; # record separator is blank lines
while (<POD>) {
if ($cutting) {
next unless /^=/;
@@ -314,6 +316,8 @@ while (<POD>) {
}
}gex;
+ s/X<([^<>]*)>/\\index{$1}/g;
+
s/Z<>/\\&/g; # the "don't format me" thing
# comes last because not subject to reprocessing
@@ -416,7 +420,7 @@ while (<POD>) {
}
print LATEX "\n\\begin{$listingcmd}\n";
push(@listingcmd,$listingcmd);
- } elsif ($lastcmd ne 'item') {
+ } elsif ( !@listingcmd ) {
warn "Illegal '=item' command without preceding 'over':";
warn "=item $bareitem";
}
OpenPOWER on IntegriCloud