File:  [LON-CAPA] / loncom / build / doc_template.pl
Revision 1.1: download - view: text, annotated - select for diffs
Mon Feb 4 14:43:52 2002 UTC (22 years, 3 months ago) by harris41
Branches: MAIN
CVS tags: stable_2002_spring, HEAD
supporting new strategy for building install-update-configure
documentation

    1: # perl script
    2: 
    3: # a quick and dirty xml reading and substitution
    4: 
    5: # --------------------------------------- slurp in information
    6: unless (scalar(@ARGV)==2) {
    7:     die("invalid invocation of doc_template.pl");
    8: }
    9: my $template=shift @ARGV; my $data=shift @ARGV;
   10: my @lines;
   11: open IN,"<$data" or die("no file $data");
   12: @lines=<IN>; close IN; $d=join('',@lines);
   13: open IN,"<$template" or die("no file $data");
   14: @lines=<IN>; close IN; $t=join('',@lines);
   15: 
   16: # ------- read in values from data
   17: $d=~/\<title.*?\>(.*?)\<\/title.*?\>/s;
   18: my $title=$1;
   19: $t=~s/\<TITLE \/\>/$title/g;
   20: $d=~/\$(.*?)\$/;
   21: my $cvsdate="<i>CVS: $1</i>";
   22: $t=~s/\<DATE \/\>/$cvsdate/g;
   23: $d=~/\<\!\-\- pdfahref (.*?) \-\-\>/;
   24: my $pdfahref="<a href='$1'>";
   25: $t=~s/\<PDFAHREF \/\>/$pdfahref/g;
   26: 
   27: my %bhash=(
   28:     'CONFIGURE' => '/docs/reconfig/index.html',
   29:     'INSTALL' => '/docs/install/index.html',
   30:     'UPGRADE' => '/docs/upgrade/index.html',
   31:     'FAQ' => '/docs/faq/index.html',
   32:     'DOWNLOADS' => '/docs/downloads/index.html',
   33:     'CONTACT' => '/docs/contact/index.html',
   34:     'MAIN-SITE' => 'http://install.lon-capa.org',
   35: );
   36: 
   37: $d=~/\<\!\-\- button (.*?) \-\-\>/;
   38: my $buttonv=$1;
   39: while (1) {
   40:     if ($t=~/\<BUTTON NAME=\'(.*?)\' \/\>/) {
   41: 	my $bname=$1;
   42: 	my $button;
   43: 	my $bh=$bhash{$bname};
   44: 	if ($buttonv eq $bname) {
   45: 	    $button=<<END;
   46: <table cellpadding='5' cellspacing='0' border='3'><tr><td>
   47: <a href='$bh'>
   48: <font face='helvetica'>
   49: <font color='#009900'>
   50: $bname
   51: </font>
   52: </font>
   53: </a>
   54: </td></tr></table>
   55: END
   56:         }
   57: 	else {
   58: 	    $button=<<END;
   59: <table cellpadding='5' cellspacing='0' border='1'><tr><td>
   60: <a href='$bh'>
   61: <strong><font face='helvetica'>
   62: <font color='#009900'>$bname</font>
   63: </font></strong></a>
   64: </td></tr></table>
   65: END
   66: 	}
   67: 	$t=~s/\<BUTTON NAME=\'$bname\' \/\>/$button/g;
   68:     }
   69:     else {
   70: 	last;
   71:     }
   72: }
   73: $d=~/\<\!\-\- preamble start \-\-\>(.*?)\<\!\-\- preamble end \-\-\>/s;
   74: my $preamble=$1;
   75: $t=~s/\<PREAMBLE \/\>/$preamble/g;
   76: $d=~/\<\!\-\- maintext start \-\-\>(.*?)\<\!\-\- maintext end \-\-\>/s;
   77: my $maintext=$1;
   78: $t=~s/\<MAINTEXT \/\>/$maintext/g;
   79: print $t;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>