CHECKPOINT untested pass at redoing base text merge
[scpubgit/stemmatology.git] / script / svg_from_csv.pl
1 #!/usr/bin/perl
2
3 use lib 'lib';
4 use strict;
5 use warnings;
6 use Text::Tradition;
7
8 # First: read the base. Make a graph, but also note which
9 # nodes represent line beginnings.
10
11 my $tradition = Text::Tradition->new(
12     'CSV' => $ARGV[0],
13     'base' => $ARGV[1],
14     );
15
16
17 print $tradition->collation->as_svg();
18 print STDERR "DONE\n";
19 __END__
20 my $rows = 0;
21 my $matrix = [];
22 foreach my $pos ( $collation_graph->{'positions'}->all ) {
23     my @p_nodes = $collation_graph->{'positions'}->nodes_at_position( $pos );
24     $rows = scalar @p_nodes
25         if $rows < scalar @p_nodes;
26     push( @$matrix, \@p_nodes );
27 }
28 print "<html><head><title>A table</title></head><body><table>\n";
29 foreach my $i ( 0 .. $rows-1 ) {
30     print "\t<tr>\n";
31     foreach my $col( @$matrix ) {
32         my $str = '';
33         if( $col->[$i] ) {
34             $str = $collation_graph->node( $col->[$i] )->label;
35         }
36         printf( "\t\t<td>%s</td>\n", $str );
37     }
38     print "\t</tr>\n";
39 }
40 print "</table></body></html>\n";