summaryrefslogtreecommitdiff
path: root/macros/plain/contrib/cascover/cascover.tex
blob: f158bb650e2b6f6b6fc33cb1ce4670f24e45b64b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
%----------------------------------------------------------------------------%
% Cassette-cover macros for TeX: CASCOVER.TEX (main macrofile)               %
% Files supplied: CASCOVER.TEX, CASCFONT.TEX, NORMAL.CAS, SMALL.CAS,         %
%                 CCMANMAC.TEX, MANUAL.TEX, MANUAL.DVI, MANUAL.DOC,          %
%                 EXAMPLES.TEX, EXAMPLES.DVI                                 %
% Author: Stijn Raaijmakers                                                  %
% Date: 10/2/94                                                              %
% Package is freeware.                                                       %
%----------------------------------------------------------------------------%

\catcode`\@=11

\newdimen\rulethickness \rulethickness=0.4pt
\newdimen\frontwidth \frontwidth=\coverwidth \advance\frontwidth by
  -2\covermargin \advance\frontwidth by -\rulethickness
\newdimen\sidewidth \sidewidth=\frontwidth \advance\sidewidth by -.5\coverwidth

\def\vmargin{\vskip\covermargin \relax}
\def\hmargin{\hskip\covermargin \relax}

\input cascfont

\def\parbox#1#2#3{\vtop to #2{\hsize=#1 #3}}
\def\lead{\thinspace\xleaders\hbox to.5em{\hss$\scriptscriptstyle\cdot$\hss}%
  \hfill\thinspace}
\def\ifempty#1#2#3\fi{{\def\a{#1}\def\b{}\ifx\a\b #2\else#3\fi}}

\newcount\@entrycount \def\@clearentry{\global\@entrycount=0 \relax}
\def\@nextentry{\global\advance\@entrycount by 1 \number\@entrycount}

\def\@beginside{\leavevmode\vrule\hmargin\parbox\sidewidth\coverheight
  \bgroup\vmargin\@clearentry}
\def\@title#1#2#3#4{{\it\@entry{#1}{#2}{#3}{#4}}\smallskip}
\def\@entry#1#2#3#4{\hbox to\sidewidth{\phantom{\resetfont00 }\llap{#1 }%
  #2\lead#3\ifempty{#4}{}\phantom{\resetfont\ 00:00}\llap{#4}\fi}}

\def\begintape{\bigbreak \hrule width \coverwidth\nobreak \begingroup
  \parskip=0pt \parindent=0pt \small \relax}
\def\endtape{\endgroup \goodbreak \vfil}

\def\beginside#1: #2 - #3 (#4) {\@beginside\@title{#1:}{#2}{#3}{#4}}
\def\endside{\vskip\covermargin plus1fil \egroup\hmargin}
\def\title#1 - #2 {\smallskip\@title{}{#1}{#2}{}}
\def\\#1 - #2, #3 {\@entry\@nextentry{{#1}}{{#2}}{#3}} % extra groups are
  % needed to prevent user from having to use double groups with \cond.
\let\begincontents=\relax
\def\endcontents{\vrule\nobreak\par\hrule width\coverwidth\nobreak}
\let\empty=\leavevmode

\def\fronttitle#1 - #2 {{\large\hbox to \frontwidth{{\it #1}\hfil#2}}\vfil}
\def\beginfront{\vrule\hmargin\parbox\frontwidth\frontheight\bgroup\vfil}
\def\endfront{\egroup\hmargin\vrule\nobreak\par\hrule width\coverwidth\nobreak}

\def\beginflap{\vrule\hmargin\parbox\frontwidth\flapheight\bgroup\vmargin}
\def\endflap{\vskip\covermargin plus1fil \egroup\hmargin\vrule\nobreak\par
  \hrule width\coverwidth\nobreak}

\catcode`\@=12