date.chapril.org-framadate/.renest_json.pl

27 lines
595 B
Perl
Executable File

#!/usr/bin/perl
use strict;
use warnings;
use JSON;
#use Hash::Merge::Simple qw(merge);
my $json = JSON->new->utf8->space_before(0)->space_after(1)->indent(4)->canonical(1);
my $new_json = {};
my $old_json = '';
while (defined(my $line = <STDIN>)) {
$old_json .= $line;
}
$old_json = $json->decode($old_json);
for my $key (keys %{$old_json}) {
my $index = index($key, '.');
my $real_key = substr($key, 0, $index++);
my $trad_key = substr($key, $index);
$new_json->{$real_key}->{$trad_key} = $old_json->{$key} if $old_json->{$key};
}
print $json->encode($new_json);