% this is spider.ch $Header: /home/users0/fx/ltxspiderweb/master/spider.ltx,v 1.3 91/03/22 11:19:54 fx Exp $
% for a LaTeX version of spider
% d.love@daresbury.ac.uk

l 5 (don't want batchmode for debugging;  only print changes; for
    LaTeX: want \documentstyle and fix use of \. and \title)
#x
\message{OK, entering \string\batchmode...}
\batchmode
#y
\ifx\enddocument\undefined \else % check for LaTeX
  \documentstyle[web]{article}
  \let\maybe\iffalse
  \let\.=\str
  \def\LaTeX{{\rm L\kern-.36em\raise.3ex\hbox{\sc a}\kern-.15em
    T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\fi
#z

l 13 (change title page stuff)
#x
\def\title{SPIDER}

\def\topofcontents{\null\vfill
  \titlefalse % include headline on the contents page
  \def\rheader{\hfil}
  \centerline{\titlefont The {\ttitlefont SPIDER} processor}
  \vfill}
#y
\ifx\enddocument\undefined	% check for LaTeX
\def\title{SPIDER}

\def\topofcontents{\null\vfill
  \titlefalse % include headline on the contents page
  \def\rheader{\hfil}
  \centerline{\titlefont The {\ttitlefont SPIDER} processor}
  \vfill}
\else
  \title{The {\tt SPIDER} processor} \date{}
\fi
#z

l 39
#x
The unusual lexical requirements of FORTRAN are probably beyond it, at 
least until the lexical analysis is modernized.)
#y
The unusual lexical requirements of FORTRAN are probably beyond it, at 
least until the lexical analysis is modernized.)

This version of Spider has been changed to be able to produce a
\.{WEAVE} suitable for use with \LaTeX{} rather than plain \TeX{}.
The changes are minor and can be found by looking up ``LaTeX'' in the
index.  You get the \LaTeX{} version by defining |LaTeX=1| or
something (the variable |LaTeX| should be non-null) on
the \.{awk} command line when you run Spider.  The limbo part will sort
itself out for \LaTeX{} or plain when you weave this file.
#z

l 188 (bug fix)
#x
#<Set init...#>=
	scrapfile = "scraps.web"
	print "@*Scrap code generated by {\tt SPIDER}." > scrapfile
	ttokfile = "outtoks.web"
	print "@*Token code generated by {\tt SPIDER}." > scrapfile
#y
#<Set init...#>=
	scrapfile = "scraps.web"
	print "@*Scrap code generated by {\\tt SPIDER}." > scrapfile
	ttokfile = "outtoks.web"
	print "@*Token code generated by {\\tt SPIDER}." > scrapfile
#z

l 211 (bug fix)
#x
	grammarfile = "grammar.web"
	print "@*Grammar code generated by {\tt SPIDER}." > grammarfile
#y
	grammarfile = "grammar.web"
	print "@*Grammar code generated by {\\tt SPIDER}." > grammarfile
#z
 
l 2108 (change for LaTeX)
#x
	printf "*out_ptr='x'; tex_printf(\"\\\\input %sweb.te\");\n", \
		extension > wlang
#y
	if (LaTeX=="") { #^LaTeX#>
	printf "*out_ptr='x'; tex_printf(\"\\\\input %sweb.te\");\n", \
		extension > wlang
	}else{
	printf "*out_ptr='}'; tex_printf(\"\\\\def\\\\webmacs{%sweb.tex\");\n", \
		extension > wlang
	}
#z

l 2121 (change for LaTeX)
#x
#<Write the first line of the macro file#>=
	macrofile = extension "web.tex"
	print "\\input webkernel.tex" > macrofile
#y
#<Write the first line of the macro file#>=
	macrofile = extension "web.tex"
	if (LaTeX=="") print "\\input webkernel.tex" > macrofile #^LaTeX#>
#z
