summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-12-13 16:28:54 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-12-13 16:44:51 -0800
commit4a53c652e24b98258889c48f89c46b6fe065df09 (patch)
tree71530812e545433706e626a9abb9e12711de84b9 /scripts
parentdb9de2caf593c3312edee122572e310eba964fab (diff)
downloadsubsurface-4a53c652e24b98258889c48f89c46b6fe065df09.tar.gz
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>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/parse-descriptor.pl39
1 files changed, 39 insertions, 0 deletions
diff --git a/scripts/parse-descriptor.pl b/scripts/parse-descriptor.pl
new file mode 100644
index 000000000..604bfe568
--- /dev/null
+++ b/scripts/parse-descriptor.pl
@@ -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;