#!/usr/bin/perl
use strict;
use warnings;
use utf8;
use open qw/:std :utf8/;
use Encode;
use Getopt::Long;
my ($programme) = $0 =~ m|^(?:.*/)?(.+)|;
$programme = decode_utf8($programme);
my $metadata = "";
my $sortie = "";
eval {
$SIG{__WARN__} = sub {usage(1);};
GetOptions(
"metadata=s" => \$metadata,
"sortie=s" => \$sortie,
);
};
$SIG{__WARN__} = sub {warn $_[0];};
usage(2) if not $metadata or not $sortie;
open(META, "<:utf8", $metadata) or die "Couldn't open file \"$metadata\", $!";
open(SORTIE, "+<:utf8", $sortie) or die "Couldn't open file \"$sortie\", $!";
foreach my $ligne (<META>)
{
chomp($ligne);
if ($ligne =~ /^DT : (.*)/)
{
print SORTIE "**** *DT_";
my $dt = $1;
$dt =~ s/ ; /_/g;
print SORTIE $dt;
print SORTIE " *SO_"
#my $dt = $1;
#print SORTIE "**** *DT_"
#print SORTIE $dt;
}
elsif ($ligne =~ /^SO : (.*?) ;/)
{
#$valeurs[1] = "$1";
#print SORTIE " *SO_"
#print SORTIE $valeurs[1];
my $so = $1;
$so =~ s/ /_/g;
print SORTIE $so;
print SORTIE " *LA_"
}
elsif ($ligne =~ /^LA : (.*)/)
{
#$valeurs[2] = "$1";
#print SORTIE " *LA_"
#print SORTIE $valeurs[2];
my $la = $1;
$la =~ s/ /_/g;
print SORTIE $la;
print SORTIE "\n";
}
}
close META;
close SORTIE;
exit 0;
sub usage
{
my $code = shift;
print STDERR "Usage : $programme -m metadata -s sortie \n";
exit $code;
}