#!/usr/bin/env perl
use 5.012;
use warnings;
-use JSON;
use re '/msx';
+use JSON;
+
+our $VERSION = '1.00';
+
+our %get;
+while (@ARGV) {
+ $ARGV[0] =~ s/^--// or last; # --flag
+ my ($name, $val) = split /=/, shift, 2 or last; # set until empty
+ $get{$name} = $val // 1;
+}
+my $file = shift or die "Usage: $0 [--options] <input>\n";
-my %opt;
my $jsonify = JSON->new->utf8->canonical;
-$jsonify->pretty if $opt{pretty};
+$jsonify->pretty if $get{pretty};
-my $data = do "./$ARGV[0]" or die $@;
+my $data = do "./$file" or die $@;
print $jsonify->encode($data)
=~ s{\[ \K\n ([^][]+) (?=\])}{$1 =~ s/(?:\A|\n) \s*//gr}reg;