equal
deleted
inserted
replaced
6 use Digest::SHA qw(sha512_hex); |
6 use Digest::SHA qw(sha512_hex); |
7 use File::Temp; |
7 use File::Temp; |
8 |
8 |
9 use base 'Exporter'; |
9 use base 'Exporter'; |
10 |
10 |
11 our @EXPORT = qw(ttl2h h2ttl parse delta nice edit update show save); |
11 our @EXPORT = qw(ttl2h h2ttl parse delta nice edit update show); |
12 our @EXPORT_OK = (); |
12 our @EXPORT_OK = (); |
13 |
13 |
14 sub parse { |
14 sub parse { |
15 my %arg = %{pop @_} if ref $_[-1] eq 'HASH'; |
15 my %arg = %{pop @_} if ref $_[-1] eq 'HASH'; |
16 my $data = shift; |
16 my $data = shift; |
185 my $tmp = File::Temp->new(); |
185 my $tmp = File::Temp->new(); |
186 $tmp->print(nice @zone); |
186 $tmp->print(nice @zone); |
187 $tmp->flush(); |
187 $tmp->flush(); |
188 system $arg{-editor} => $tmp->filename; |
188 system $arg{-editor} => $tmp->filename; |
189 $tmp->seek(0, 0); |
189 $tmp->seek(0, 0); |
|
190 ${$arg{-backup}} = $tmp if $arg{-backup}; |
190 return parse(do { local $/ = undef; <$tmp>}, {-skip => $arg{-skip}}); |
191 return parse(do { local $/ = undef; <$tmp>}, {-skip => $arg{-skip}}); |
191 } |
192 } |
192 |
193 |
193 sub show { |
194 sub show { |
194 my ($add, $del) = @_; |
195 my ($add, $del) = @_; |