#! /usr/bin/perl # Usage: perl this_script.pl VCL.xcu # will create VCL_xcu.ods open STDOUT, ">content.xml" or die "$!: content.xml, stopped at"; while (<>) { last if m//; } while (<>) { last if m//; if (m/(.*?)}) { #print STDERR "$lang\t$item\n"; if (exists $Value{$lang}{$item}) { print STDERR ("Duplicated: $lang $item\t", join(";", @{$Value{$lang}{$item}}), "\n"); } my @a = split(m/;/, $1); $Value{$lang}{$item} = \@a; } } print '', "\n"; print '', "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; { print "\n"; print "\n"; foreach $lang (@Lang) { print ''; print "$lang"; print "\n"; } print "\n"; foreach $item (sort keys %Item) { print "\n"; { print ''; print "$item"; print "\n"; } foreach $lang (@Lang) { if ($Count{$lang}{$item} > 0) { print ""; print "$Count{$lang}{$item}"; print "\n"; } else { print ""; print ""; print "\n"; } } print "\n"; } print "\n"; } foreach $lang (@Lang) { print "\n"; print "\n"; foreach $item (sort keys %Item) { print ''; print "$item"; print "\n"; } print "\n"; $number = 0; foreach $item (sort keys %Item) { $a = $Value{$lang}{$item}; if (scalar @$a > $number) { $number = scalar @$a; } } for ($i = 0; $i < $number; $i++) { print "\n"; foreach $item (sort keys %Item) { print ''; $a = $Value{$lang}{$item}; $font = $$a[$i]; print "$font"; print "\n"; } print "\n"; } print "\n"; } print "\n"; print "\n"; print "\n"; close STDOUT; system ("mkdir META-INF") unless -d "META-INF"; open STDOUT, ">META-INF/manifest.xml" or die "META-INF/manifest.xml, stopped at"; print <<'EOT'; EOT close STDOUT; open STDOUT, ">zip.log" or die "$!: zip.log, stopped at"; system("zip -r VCL_xcu.ods content.xml META-INF/manifest.xml"); close STDOUT; __END__