% 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 #= scrapfile = "scraps.web" print "@*Scrap code generated by {\tt SPIDER}." > scrapfile ttokfile = "outtoks.web" print "@*Token code generated by {\tt SPIDER}." > scrapfile #y #= 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 #= macrofile = extension "web.tex" print "\\input webkernel.tex" > macrofile #y #= macrofile = extension "web.tex" if (LaTeX=="") print "\\input webkernel.tex" > macrofile #^LaTeX#> #z