#!/usr/bin/perl -w

use Convert::GeekCode;
use Text::Wrap;
use strict;

my $VERSION = '0.2';

=head1 NAME

geekdec - Geek Code decoder

=head1 SYNOPSIS

    % geekgen [code|version|charset]

=head1 DESCRIPRTION

This script parses Geek Code sequences fetched from STDIN.

=cut

my ($code, $ver, $charset) = ('geekcode', 3.12, 'en_us');

foreach (@ARGV) {
    if (/^[\d\.]+$/) {
        $ver = $_;
    }
    elsif (/^(\w\w)[\-\_](\w\w)$/) {
        $charset = "$1_$2"; # converts en-us to en_us
    }
    elsif ($_) {
        $code = $_;
    }
}

my @out = geek_decode(join('', <STDIN>), $code, $ver, $charset);

while (my ($key, $val) = splice(@out, 0, 2)) {
    print "[$key]\n$val\n\n";
}

__END__