while() { if(m/[{]ONF ([^}]+)[}]/) { my $v = $1; my $sv = shift @ONFs; push @ONFs, $v if $sv =~ /ding/; s/ONF/$sv/; } s/NAME/$fields{name}/; print U "$_"; } #close T, U; # wasn't closing U in time! close T; close U; `( cd $dir; [ -f $tname.tex ] && latex --interaction=nonstopmode $tname.tex 2>/dev/null [ -f $tname.dvi ] && dvips -f $tname.dvi [ -f $tname.ps ] && lpr $tname.ps )`