Convert structure list of supported dive computers to txt / html

This adds a silly perl script to create either a txt or html file from the
structured descriptor3.tsv file. This way we can maintain the structured
file and easily create both text and html output from it.

Instead of somehow adding this to qmake I decided to simply add the two
output files so that they are included in the source tar file.

Recreate them by running
perl scripts/parse-descriptor.pl descriptor3.tsv SupportedDivecomputers.html
perl scripts/parse-descriptor.pl descriptor3.tsv SupportedDivecomputers.txt

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2013-12-13 16:28:54 -08:00
parent db9de2caf5
commit 4a53c652e2
3 changed files with 166 additions and 0 deletions

View file

@ -0,0 +1,39 @@
use Carp;
#set command line arguments
my ($infi, $outfi) = @ARGV;
my ($type) = $outfi =~ /\.([^.]+)$/;
open(my $fh, "<", $infi) || croak "can't open $infi: $!";
open(STDOUT, ">", $outfi) || croak "can't open $outfi: $!";
my $lastVend = "";
while (<$fh>) {
my ($vend, $mod, $set) = split('\t', $_);
if ($type eq "html") {
if ($vend eq $lastVend) {
printf(", %s", $mod);
} else {
if ($lastVend eq "") {
printf("<ul><li>%s\n\t<ul>\n\t <li>%s", $vend, $mod);
} else {
printf("</li>\n\t</ul>\n </li>\n <li>%s\n\t<ul>\n\t <li>%s", $vend, $mod);
}
}
} else {
if ($vend eq $lastVend) {
printf(", %s", $mod);
} else {
if ($lastVend eq "") {
printf("%s: %s", $vend, $mod);
} else {
printf("\n%s: %s", $vend, $mod);
}
}
}
$lastVend = $vend;
}
if ($type eq "html") {
print("</li>\n\t</ul>\n </li>\n<ul>");
}
close $fh;