% % Base file for manuals % % define macros, fonts, etc. \def\makeatletter{\catcode`\@=11} \def\makeatother{\catcode`\@=12} \makeatletter % manual: title, section, message-to-center \def\manual#1(#2)#3{\vfill\eject \gdef\man@title{#1(#2)} \gdef\man@center{#3} \global\pageno=1 } % sections \def\section#1{\par\unskip\line{#1\hfil}\vskip-\parskip} % line breaks without vertical space \def\l{\par\nobreak\vskip-\parskip} % sections: name, synopsis, description, files, author, bugs \def\name{\section{NAME}} % synopsis is in tt, obeys lines \def\synopsis{\bgroup\section{SYNOPSIS}\obeylines\let\^^M=\l\tt} \def\endsyn{\egroup} \def\description{\section{DESCRIPTION}} \def\author{\section{AUTHOR}} \def\files{\section{FILES}} \def\bugs{\section{BUGS}} % list environment, of sorts \newdimen\listdent \listdent=5em \def\beginlist#1{\par\bgroup\listdent=#1 \advance\leftskip\listdent\advance\rightskip\listdent\relax} \def\endlist{\par\egroup} \def\listentry#1{\par \setbox0=\hbox{#1\quad}\ifdim\wd0>\listdent \line{\hskip-\listdent\box0\hfil}\else \wd0=\listdent \llap{\box0}\fi} % code fragments \def\begincode{\bgroup\obeylines\let\^^M=\l\tt} \def\endcode{\egroup} % fonts \def\b#1{{\bf #1}} \def\i#1{{\it #1}} % TeX expression \def\texword#1{{\tt\char`\\ #1}} % literal word \def\lit#1{{\tt #1}} % basic formatting \headline={\rlap{\man@title}\hfil C-\TeX\ Programmer's Manual\hfil\llap{\man@title}} \footline={\rlap{Printed \the\month/\the\day/\the\year}\hfil \man@center\hfil\llap{\folio}} \leftskip=5em \parskip=.5\baselineskip \parindent=0pt \makeatother