better output of command
[Printer-EVOLIS.git] / docs / parse-html.pl
1 #!/usr/bin/perl
2
3 use warnings;
4 use strict;
5
6 open(my $html, '<', 'Programming_Guide_A5013_RevEs.html') || die "run pdftohtml: $!";
7
8 sub strip_html {
9         my $t = shift;
10         $t =~ s{&nbsp;}{ }gs;
11         $t =~ s{(<br>|\n)+}{}gs;
12         $t =~ s{\s+$}{}gs;
13         $t =~ s{\s*;\s*}{;}gs;
14         return $t;
15 }
16
17 while(<$html>) {
18         next if m{^(&nbsp)?Page \d+};
19         if ( m{<b>(\w+)&nbsp;</b><br>} ) {
20                 my $command = $1;
21                 my $param = <$html>;
22                 next if $param =~ m{Page #};
23                 my $description = <$html>;
24                 printf "%-4s %-15s %s\n", $command, strip_html($param), strip_html($description);
25         }
26 }
27