# A perl script to
# figure out the right SGML_PATH setting from arg file ($1)
die "Can't find $file" unless (-f ($file=shift));
($dot=`pwd`)=~s|/?$|/|;
if ($file=~/^(.*)mci.sgm$/) {
    # top level - the full wax - take all subdirectories of data
    $rt=$ENV{'ECI_ROOT'};
    @dirs=(
"eci1/alb01","eci1/fre12","eci1/ita13","eci1/ser18","eci2/ger04","eci2/spa19",
"eci1/bul01","eci1/fre13","eci1/ita16","eci1/slo18","eci2/ger11","eci2/spa22",
"eci1/cro18","eci1/fre15","eci1/lat01","eci1/spa02","eci2/ger19","eci2/tur01",
"eci1/cze01","eci1/fre16","eci1/mul02","eci1/spa15","eci2/gre01","eci3/cze02",
"eci1/dan16","eci1/gae01","eci1/mul03","eci1/spa16","eci2/ita02","eci3/spa01",
"eci1/dut01","eci1/ger01","eci1/mul05","eci1/tur02","eci2/ita11","eci3/swe01",
"eci1/dut02","eci1/ger02","eci1/mul06","eci2/dan22","eci2/ita19","eci4/chi01",
"eci1/dut16","eci1/ger03","eci1/mul07","eci2/dut03","eci2/lit01","eci4/jap01",
"eci1/eng01","eci1/ger12","eci1/mul08","eci2/eng11","eci2/mal01","eci4/jap02",
"eci1/eng02","eci1/ger13","eci1/mul10","eci1/mul10/men10","eci1/mul10/mfr10",
"eci2/eng14","eci2/mul01","eci4/mul11",
"eci1/eng15","eci1/ger16","eci1/mul13","eci2/eng19","eci2/mul04","eci4/spa03",
"eci1/eng16","eci1/gre16","eci1/nor01","eci2/eng22","eci2/mul09",
"eci1/eng18","eci1/ita01","eci1/por01","eci2/fre11","eci2/mul12",
"eci1/est01","eci1/ita03","eci1/por16","eci2/fre14","eci2/rus01",
"eci1/fre01","eci1/ita12","eci1/ser01","eci2/fre19","eci2/spa14");
    print "$rt/data/",join("/%T:$rt/data/",@dirs),"/%T:$rt/%T";
}
else {
    &pf($file);
};

sub pf {
    local ($file,$fd,$fb,$n)=@_;
    # print "$file\n";
    exit "can't parse $file" unless (($fd,$fb)=($file=~m|^(.*/)?([^/]+)$|));
    $fb=$file unless ($fd);
    ($n)=($fb=~/[^0-9]+([0-9]+)[^0-9]/);
    # print "$fd:$fb:$n\n";
    if ($fb =~ /[0-9]\.sgm/) {
	# a corpus
	while (<$fd*$n*>) {
	    print "$_/%T:" if (-d);
	};
	print "$fd%T";
    }
    else {
	die "$fb not a valid eci (sub-)corpus"
	    unless ($fb =~ /[0-9][a-z]\.sgm/);
	# a component
	print "$fd%T";
    };
}

