projects
/
darcs-mirror-metainit.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
history
|
raw
|
HEAD
Description defaults to Name
[darcs-mirror-metainit.git]
/
Parse.pm
1
package Parse
2
3
sub parse {
4
my $fh = shift;
5
6
my %parsed;
7
my $lastkey;
8
while (<$fh>) {
9
#last if /^$/;
10
if (my ($key, $value) = m/^([^ ].*): (.*)/) {
11
$parsed{$key} = $value;
12
$lastkey = $key;
13
}
14
elsif ($lastkey) {
15
s/^ //;
16
s/^\.$//;
17
$parsed{$lastkey} .= $_;
18
} else {
19
die "Cannot parse $!";
20
}
21
}
22
23
if (not exists $parsed{Description}) {
24
$parsed{Description} = $parsed{Name}
25
}
26
27
28
return %parsed;
29
}
30