\zeta\or\eta\or\theta\or\iota\or\kappa\or\lambda\or\mu\or\nu\or\xi\or\pi\or\rho
\or\sigma\or\tau\or\upsilon\or\phi\or\chi\or\psi\or\omega\fi$)}
-\def\itm{\:}
+%%% Verbatim typesetting %%%
+
+% New \frenchspacing, which doesn't leave unwanted spaces in text.
+\def\frenchsp@cing{\sfcode`\.\@m \sfcode`\?\@m \sfcode`\!\@m%
+\sfcode`\:\@m \sfcode`\;\@m \sfcode`\,\@m}
+
+% Typesetting of one verbatim word
+
+\newif\ifshowspaces
+\showspacesfalse
+
+\def\make@ther#1{\catcode`#1=12\relax}
+\def\setverb@tim{\tt\frenchsp@cing\catcode`\`=13\catcode`\'=13\n@ligs%
+\let\do=\make@ther\dospecials\obeyspaces\showsp@ces}
+
+{\catcode`'=13
+\catcode``=13
+\gdef\n@ligs{\def`{\relax\lq}\def'{\relax\rq}}}
+
+{\obeyspaces
+\global\chardef\sp@ce=32
+\gdef\showsp@ces{\ifshowspaces\let =\sp@ce\fi}
+\global\let =\ }
+
+\catcode124=\active % Make | active
+\def\ttst@rt{\begingroup\setverb@tim\let|=\endgroup}
+\let|=\ttst@rt
+
+% Typesetting of verbatim block (enclosed in balanced {}'s)
+
+\newskip\verbglue
+\newskip\verblineglue
+\newskip\verbleftskip
+\newskip\verbrightskip
+
+\verbglue=3pt plus 1pt minus 0.3pt
+\verblineglue=0pt plus 1.5pt
+\verbleftskip=1in
+\verbrightskip=0pt plus 1fil
+\def\verblocaldefs{}
+
+\newdimen\tabwidth
+\newcount\tabsize
+\tabsize=8
+\newdimen\t@b
+
+\newdimen\v@rbspace
+
+\def\verbship{%
+ \ifdim\wd0>0pt
+ \ifdim\v@rbspace>0pt \vskip\v@rbspace \fi
+ \line{\hskip\verbleftskip \vrule\box0\vrule \hskip\verbrightskip}
+ \v@rbspace=0pt
+ \else
+ \advance\v@rbspace by 0.3\baselineskip %FIXME
+ \fi
+}
+
+\newcount\verbcnt
+\def\v@rbend{\par\egroup\endgroup\vskip\verbglue}
+\def\v@rbl{\ifnum\verbcnt>0\{\fi\global\advance\verbcnt by 1\relax}
+\def\v@rbr{\ifnum\verbcnt>1\}\else\v@rbend\fi\global\advance\verbcnt by -1\relax}
+
+\def\v@rbparams{\setverb@tim\raggedbottom
+\verbcnt=0
+\v@rbspace=-1000pt
+\catcode124=12\setupt@bs\vskip\verbglue\defb@x\obeylines}
+
+\def\startb@x{\setbox0=\hbox\bgroup}
+\def\defb@x{\def\par{\egroup\verbship\startb@x}}
+
+{\catcode`\^^I=\active
+\gdef\setupt@bs{\catcode`\^^I=\active
+\setbox0=\hbox{\tt\ }\tabwidth=\wd0\multiply\tabwidth by \tabsize%FIXME!!!
+\def^^I{\egroup\t@b=\wd0\divide\t@b by \tabwidth%
+\multiply\t@b by \tabwidth%
+\advance\t@b by \tabwidth\advance\t@b by -\wd0\startb@x\box0\hbox to \t@b{}}%
+}}
+
+{
+\catcode`[=1\catcode`]=2\catcode123=\active\catcode125=\active
+\gdef\verbatim[\begingroup\v@rbparams\catcode123=\active\catcode125=\active%
+\let{=\v@rbl\let}=\v@rbr\chardef\{=123\chardef\}=125\verblocaldefs\startb@x%
+]]
+
+% Input file verbatim
+
+\def\verbinput#1{\begingroup\v@rbparams\verblocaldefs\input #1\endgroup}
%%% Epilog %%%