insilmaril@37: #!/usr/bin/perl
insilmaril@37: #
insilmaril@37: # Script to convert vym files to arbitrary formats
insilmaril@37: # Using xml stylesheets
insilmaril@37: #
insilmaril@37: # written by Uwe Drechsel	<vym@insilmaril.de>
insilmaril@37: #
insilmaril@37: 
insilmaril@37: my $version="0.1";
insilmaril@37: my $PARSER="xsltproc";
insilmaril@37: my $OUTDIR="";
insilmaril@37: my $INPUTDIR="";
insilmaril@37: my $XSL="vym2html.xsl";
insilmaril@37: 
insilmaril@37: 
insilmaril@37: use Getopt::Long;
insilmaril@37: GetOptions (
insilmaril@37:     "o=s" => \$opt_outdir,
insilmaril@37: 	"x=s"=> \$opt_xst,
insilmaril@37:     "h!" => \$opt_usage ) || usage ();
insilmaril@37: 
insilmaril@37: 
insilmaril@37: 
insilmaril@37: if ($opt_usage) {
insilmaril@37:     $0 =~ s#.*/##g;
insilmaril@37:     print <<Helpende;
insilmaril@37:     
insilmaril@37: exportvym	written by Uwe Drechsel - Version $version
insilmaril@37: 
insilmaril@37: usage: $0 [-h] VYMFILE
insilmaril@37: 
insilmaril@37: ...TODO...
insilmaril@37: 
insilmaril@37: Helpende
insilmaril@37: }
insilmaril@37: 
insilmaril@37: 
insilmaril@37: if ($opt_xst) { $XST=$opt_XST; }
insilmaril@37: if ($opt_outdir) { $OUTDIR="$opt_outdir/"; }
insilmaril@37: if ($#ARGV <0) 
insilmaril@37: {
insilmaril@37: 	die "not enough parameters given";
insilmaril@37: } else
insilmaril@37: {
insilmaril@37: 	# get MAPNAME
insilmaril@37: 	$MAPNAME=pop(@ARGV);
insilmaril@37: 	if ($MAPNAME=~/\//) 
insilmaril@37: 	{
insilmaril@37: 		# Get inputdir from path
insilmaril@37: 		$MAPNAME=~/(.*\/)(.*)/;
insilmaril@37: 		$INPUTDIR=$1;	
insilmaril@37: 		$MAPNAME=$2;	
insilmaril@37: 	}
insilmaril@37: 	if ($MAPNAME=~/(.*)(\.xml)/) { $MAPNAME=$1;}
insilmaril@37: }
insilmaril@37: 
insilmaril@37: transform();
insilmaril@37: 
insilmaril@37: exit;
insilmaril@37: 
insilmaril@37: ########################################################
insilmaril@37: sub transform {
insilmaril@37: ########################################################
insilmaril@37: 	my $command="$PARSER -o $OUTDIR$MAPNAME.html $XSL $INPUTDIR$MAPNAME.xml"; 
insilmaril@37: 	print "$command\n";
insilmaril@37: 	system ($command);
insilmaril@37: }
insilmaril@37: 	
insilmaril@37: 
insilmaril@37: