Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/perl
my $argCount = $#ARGV;
if (0 != $argCount) {
die "usage: dia2svgmult file.dia" ;
}
my ($diaFileName) = @ARGV;
my @layerLines = `gunzip -d -c $diaFileName |grep '<dia:layer'`;
my %layerblock2id = ();
my @blockIdList;
foreach my $layerLine (@layerLines) {
chop($layerLine);
$layerLine =~ /^[ \t]*<dia:layer name="([^"]+)"/;
my $layerId = $1;
$layerId =~ /([^0-9]+)([0-9]+)/;
my $nonNumeric = $1, $numeric = $2;
if ($layerblock2id {$nonNumeric}) {
push($layerblock2id {$nonNumeric}, $numeric);
} else {
$layerblock2id {$nonNumeric} = [$numeric];
push(@blockIdList, $nonNumeric);
}
}
foreach my $layerBlockId (@blockIdList) {
my $sublayerIds = $layerblock2id {$layerBlockId};
foreach my $subLayerId (@$sublayerIds) {
print $layerBlockId, ":", $subLayerId ,"\n";
}
}
#end