ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/ermyth/doc/genpdf
Revision: 1.3
Committed: Sat Jul 21 14:00:39 2007 UTC (16 years, 11 months ago) by pippijn
Branch: MAIN
Changes since 1.2: +5 -5 lines
Log Message:
- tweaks
- added helpentry for set whois

File Contents

# User Rev Content
1 pippijn 1.1 #!/usr/bin/env perl
2    
3     use strict;
4     use warnings;
5     use utf8;
6    
7 pippijn 1.3 use constant rcsid => '$Id: genpdf,v 1.2 2007-07-21 13:23:18 pippijn Exp $';
8 pippijn 1.2
9 pippijn 1.1 BEGIN {
10     unshift @INC, "lib";
11     }
12    
13     use Pod::POM;
14    
15     use LaTeX;
16    
17     my $parser = new Pod::POM;
18     my $current;
19    
20     my @podfiles = <podhelp/*.pod>;
21    
22     sub latexise {
23     my ($data) = @_;
24     my $name = $current;
25     $name =~ s/serv/Serv/;
26     $name = ucfirst $name;
27     $$data =~ s/&nick&/$name/g;
28    
29     $$data =~ s/#/\\#/g;
30     $$data =~ s/_/\\_/g;
31 pippijn 1.3 $$data =~ s/</\\textless{}/g;
32     $$data =~ s/>/\\textgreater{}/g;
33 pippijn 1.1 $$data =~ s/\|/\$|\$/g;
34    
35     $$data
36     }
37    
38     sub delatexise {
39     my ($data) = @_;
40     my $result = "";
41     for (split /\n/, $$data) {
42     if (/^ /) {
43     $_ =~ s/\\#/#/g;
44     $_ =~ s/\\_/_/g;
45 pippijn 1.3 $_ =~ s/\\textless\{\}/</g;
46     $_ =~ s/\\textgreater\{\}/>/g;
47 pippijn 1.1 $_ =~ s/\$\|\$/|/g;
48     }
49     $result .= "$_\n";
50     }
51    
52     $$data = $result
53     }
54    
55     mkdir "latex";
56     mkdir "latex/podhelp";
57     mkdir "latex/poddoc";
58    
59     for my $file (@podfiles) {
60     ($current) = $file =~ /podhelp\/(.+)\.pod$/;
61     my $data = do { local $/; open my $fh, "<$file" or die "$file: $!"; <$fh> };
62     $data .= "\n" . do { local $/; open my $fh, "<help.pod" or die "help.pod: $!"; <$fh> };
63     my $pom = $parser->parse_text ($data)
64     or die $parser->error();
65     open my $fh, ">latex/podhelp/$current.tex";
66     print $fh $pom->present ("LaTeX::Help");
67     close $fh;
68     }
69    
70     @podfiles = <poddoc/*.pod>;
71    
72     for my $file (@podfiles) {
73     ($current) = $file =~ /poddoc\/(.+)\.pod$/;
74     my $data = do { local $/; open my $fh, "<$file" or die "$file: $!"; <$fh> };
75     my $pom = $parser->parse_text ($data)
76     or die $parser->error();
77     open my $fh, ">latex/poddoc/$current.tex";
78     print $fh $pom->present ("LaTeX::Doc");
79     close $fh;
80     }
81    
82     @podfiles = <podsvs/*.pod>;
83    
84     for my $file (@podfiles) {
85     ($current) = $file =~ /podsvs\/(.+)\.pod$/;
86     my $data = do { local $/; open my $fh, "<$file" or die "$file: $!"; <$fh> };
87     my $pom = $parser->parse_text ($data)
88     or die $parser->error();
89     open my $fh, ">latex/poddoc/$current.tex";
90     print $fh $pom->present ("LaTeX::Doc");
91     close $fh;
92     }