%%% Hlavní soubor pro zpracování knihy Typografický systém TeX %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Nutno zpracovat formátem csplain                      Petr Olšák

\font\twbf=csbx12                 % Pro nadpisy v sekcích !font.
\font\twtt=cstt12                 % \tt pro nadpisy v sekcích
\font\bbf=csbx10 scaled \magstep4 % Nadpisy kapitol
\font\bignum=csb10 scaled 10000   % Velká číslice v záhlaví kapitol
\font\mflogo=logo10               % METAFONT logo
\font\bigmflogo=logobf10 scaled \magstep4 % METAFONT logo v nadpisu kapitoly
\font\twmflogo=logobf10 scaled \magstep1  % METAFONT logo v nadpisu sekce
\font\sllogo=logosl10             % METAFONT logo v \it
\font\smmflogo=logosl10 scaled 800 % METAFONT logo v citátech
\font\eightmflogo=logo8           % METAFONT logo v poznámce pod čarou
\font\eightt=cstt8                % Verbatim strojopis a \tt v poznámkách
\font\eightrm=csr8                % Text v poznámkách pod čarou
\font\eightit=csti8               % \it v poznámce pod čarou
\font\eightsl=cssl8               % Text v citátech
\font\mfobr=mfobr                 % METAFONTové obrázky
\font\sans=csss10                 % Sans serif
\font\ttit=csitt10                % Strojopis kurzívou
\font\itbf=csbxti10               % Kurzíva tučně

%% Fonty různě veliké %%
\def\chapfonts{\bbf \let\mflogo=\bigmflogo}
\def\secfonts{\twbf \let\tt=\twtt \let\mflogo=\twmflogo}
\def\quotefonts{\eightsl \let\rm=\eightrm \let\mflogo=\smmflogo}
\def\footnotefonts{\eightrm \let\it=\eightit \let\tt=\eightt 
  \let\mflogo=\eightmflogo}
\let\plainit=\it \def\it{\plainit \let\mflogo=\sllogo \let\LaTeX=\itLaTeX}

%% Loga %%
\def\,{\thinspace}
\def\CS{$\cal C\kern-.1667em\lower.5ex\hbox{$\cal S$}\kern-.075em $}
\def\CSTUG{\CS TUG}
\let\cs=\CS
\def\CSfont{\CS\hbox{-}font}
\def\mf{{\mflogo META}\-{\mflogo FONT}}
\def\mpost{{\mflogo META}\-{\mflogo POST}}
\def\LaTeX{L\kern-.36em\raise.5ex\hbox{\sevenrm A}\kern-.12em\TeX}
\def\twoe{$2_{\textstyle\varepsilon}$}
\def\LaTeXe{\LaTeX\thinspace\twoe}
\def\itLaTeX{{\it L\kern-.24em\raise.5ex\hbox{\seveni A}\kern-.24em\TeX}}
\def\AMS{$\cal A\kern-.166em\lower.5ex\hbox{$\cal M$}\kern-.075em S$}
\def\AMSTeX{\AMS-\TeX}
\def\ps{Post\-Script}
\def\web{{\tt WEB}}

%% Zrcadlo stránky %%  !zrcadlo.
\hsize=30pc                       % 30 pica
\vsize=46pc                       % 46 řádků po 12pt (zhruba)
\raggedbottom                     % Vynechat dole na stránce příp. místo

%% Parametry sazby %%
\emergencystretch=2em                   % Dodatečná roztažitelnost
\parindent=14pt                         % Odstavcová zarážka
\widowpenalty=10000 \clubpenalty=10000  % Absolutní zákaz vdov a sirotků
\lineskip=0pt                           % Velké boxy se budou dotýkat
\bigskipamount=12pt \medskipamount=6pt  % Nevkládat deformovatelné výplňky
\smallskipamount=3pt

%% Stránková číslice %%
\def\pagenumbers{\footline={\ifodd\pageno\hfill\fi\bf\folio\hfil}}

%% České dělení slov %%                 !hyphen.
\chyph
% použit csplain <Sep. 1996>. Dělení slov podle P. Ševečka. \righthyphenmin=3

%% Deklarace registrů %%
\newcount\kapnum \newcount\secnum % Číslo kapitoly a sekce
\newcount\notenum                 % Číslo poznámky pod čarou
\newcount\numcite                 % Číslo reference (literatura)
\newcount\itemnum                 % Číslované položky
\newwrite\toc                     % Pracovní soubor pro obsah
\newwrite\cit                     % Pracovní soubor pro reference
\newread\test                     % Testování existence souboru
\newbox\quotebox                  % Box obsahující citát do záhlaví kapitoly
\newdimen\unit                    % Jednotka pro rozměry v obrázcích

%% \input jen když soubor existuje %%
\def\softinput#1{\immediate\openin\test=#1
  \ifeof\test\message{Warning: the file #1 does not exist; run me twice.}%
  \else\immediate\closein\test\input #1\fi}

%% Tvorba obsahu %%               !toc.
\def\writetoc#1#2{}
\def\maketoc{\immediate\openout\toc=\jobname.toc
  \def\writetoc##1##2{\write\toc{\string\tocline{\string##1}%
   {##2}{\the\pageno}}}}
\def\settorelax#1{\ifx#1\relax \let\next=\relax
  \else \let\next=\settorelax \let #1=\relax \fi \next}
\output={\settorelax \TeX \mf \web \tt \LaTeX \AMSTeX \ps \uv \CS \relax
  \def~{ }% Tyto kontrolní sekvence nechci, aby se expandovaly do .toc
  \lineskiplimit=0pt \plainoutput}
\def\heretoc{\vfil\break % V obsahu dodržíme řádkový rejstřík pro 16pt řádky.
  {\baselineskip=16pt \lineskiplimit=-\maxdimen
  \leftline{\bbf \vrule height18pt width0pt Obsah}\nobreak\vskip8pt
  \softinput{\jobname.toc}\par} \kapnum=0}
\def\tocline#1{#1}
\def\tkap#1#2{\advance\kapnum by1 \secnum=0
  \line{\hbox to2em{\hfil\bf\the\kapnum. }#1\unskip\rdotfill\ #2}}
\def\tsec#1#2{\advance\secnum by1
  \line{\hbox to65pt{\hfil\bf\the\kapnum.\the\secnum\ } #1\unskip
    \rdotfill\ #2}}
\def\tapp#1#2{\scanapp#1:
  \line{\hbox to65pt{\bf\ Dodatek \appletter.\hss} \apptitle\unskip
    \rdotfill\ #2}}
\def\scanapp#1:#2:{\def\appletter{#1}\def\apptitle{#2}}
\def\rdotfill{\leaders\hbox to5pt{\hss.\hss}\hfill}

%% Citát v záhlaví kapitoly %%
\def\quotation #1\\ #2:#3\par{%
  \setbox\quotebox=\vtop{\hbox{}\hsize=3.5in \reducebaseline \noindent
  \quotefonts#1\par\noindent\eightrm#2: \eightsl#3\par\medskip\hrule\bigskip}}

%% Titul kapitoly %%
\def\title #1\par{\advance\kapnum by 1 \secnum=0 \notenum=0
  \vfill\break \ifodd\pageno\else\message{[vakat]}\global\advance\pageno by1\fi
  \hbox{} % Stránková zarážka ve vel. 2 řádků. Jeden zde a jeden uvnitř \vtopů
          % Za titulem kap. dodržíme řádkový rejstřík jen při malých citátech.
  \line{\vrule depth7\baselineskip width0pt\box\quotebox\hss
     \vtop{\hbox{}\hbox{\bignum \expandafter\negkern\the\kapnum
        \ifnum\kapnum<10 \corrkern\fi}}}
  \leftline{\vrule height1.5\baselineskip width0pt\chapfonts #1}
  \lb{kap\the\kapnum}\writetoc\tkap{#1}\nobreak\vskip1.5\baselineskip}
\def\negkern#1{#1\kern-10pt}  % Záporný kern mezi dvěma číslicemi v \bignum
\def\corrkern{\kern10pt}

%% Titul sekce %%
\def\sec #1\par{\advance\secnum by 1
  \bigskip                       % Pro titulky dodržíme řádkový rejstřík:
  \hbox{}\lineskiplimit=-\maxdimen \nobreak\vskip-\medskipamount
  \noindent{\secfonts \the\kapnum.\the\secnum. #1}
  \writetoc\tsec{#1}\par\lineskiplimit=0pt\nobreak\medskip}

%% Odstavec "Náměty ke čtení" %%
\def\citeinfo{%
  \bigskip \penalty-500
  \hbox{}\lineskiplimit=-\maxdimen \nobreak\vskip-\medskipamount
  \noindent{\secfonts Náměty k dalšímu čtení}\par
  \lineskiplimit=0pt\nobreak\medskip
}

%% Vyznačený odstavec %%
\def\subpar #1. {\medskip\indent\llap{$\bullet$ }{\bf #1. }}

%% Titul dodatku %%
\def\appendix #1. #2\par{%
  \vfill\break \ifodd\pageno\else\message{[vakat]}\global\advance\pageno by1\fi
  \hbox{} \line{\vrule depth7\baselineskip width0pt
     \vtop{\hbox{}\hbox{DODATEK}}\hss \vtop{\hbox{}\hbox{\bignum #1}}}
  \leftline{\vrule height1.5\baselineskip width0pt\chapfonts #2}
  \writetoc\tapp{#1:#2}\nobreak\vskip1.5\baselineskip}

%% Makro na zavedení eps obrázků %%     !eps.
\input epsf

%% PostScriptové transformace %%         !pstransform.
\def\pstransform#1#2{\hbox to0pt{\special{ps:gsave
   currentpoint currentpoint translate #1 neg exch neg exch translate}%
   #2\hss\special{ps:grestore}}}

%% Umístění textu do obrázku %%
\def\s#1 #2 #3\\ {\rlap{\kern#1\unit\lower#2\unit
  \vbox to0pt{\vss\hbox to0pt{\hss#3\unskip\hss}\vss}}}

%% Prostředí pro zařazení METAFONTových obrázků %%
\def\obr#1 {\hbox{\mfobr\char#1}}
\def\begpic#1 #2 #3 {\medskip
  \hbox to\hsize\bgroup\mathsurround=0pt
  \vrule height#1\unit depth#2\unit width0pt
  \def\\##1: ##2 ##3 {\rlap{\kern##2\unit\raise##3\unit
    \hbox{$##1$}}\ignorespaces}
  \hfil\hbox to 0pt\bgroup\kern#3\unit\hbox\bgroup\\}
\def\endpic{\egroup\hss\egroup\hfil\egroup\medskip}

%% Poznámka pod čarou %%                     !footnote.
\def\footnote #1{\global\advance\notenum by1
  $^\the\notenum$)%
  \insert\footins{\footnotefonts \baselineskip=.8\baselineskip
    \interlinepenalty=\interfootnotelinepenalty
    \splittopskip=7.5pt
    \splitmaxdepth=3pt \floatingpenalty=20000
    \leftskip=0pt \rightskip=0pt
    \textindent{$^\the\notenum$)}\vrule height7.5pt width0pt\relax
    #1\vrule depth2.5pt width0pt\par}}

%% Bibliografické reference a odkazy na stránky %%     !bibmac.
\def\makecit{%             % v .cit jsou uloženy sekvence \bibcite a \pageref:
  \def\bibcite##1##2{\expandafter\def\csname bib:##1\endcsname{##2}}
  \def\pageref##1##2{\expandafter\ifx\csname pgl:##1\endcsname\relax
    \expandafter\def\csname pgl:##1\endcsname{##2} % definujeme poprvé
    \else % Chceme ke stávajícímu obsahu \pgl:##1 za čárku přidat další číslo:
    \expandafter\edef\csname pgl:##1\endcsname{\csname pgl:##1\endcsname, ##2}
    \fi}
  \softinput{\jobname.cit} % načtení souboru .cit z minulého běhu
  \def\ncite##1{\expandafter\ifx\csname bib:##1\endcsname\relax
    \message{Warning: The bib reference ##1 undefined}??%
    \else\csname bib:##1\endcsname\fi} % odkaz na literaturu
  \def\pg##1{\expandafter\ifx\csname pgl:##1\endcsname\relax
    \message{Warning: The page label ##1 undefined}??%
    \else\pgprefix\csname pgl:##1\endcsname\fi} % odkaz na stránku
  \immediate\openout\cit=\jobname.cit  % vytvoření nového souboru .cit
  \def\lb##1{\write\cit{\string\pageref{##1}{\the\pageno}}} % label
  % \def\bibitem, který ukládá do .cit sekvenci \bibcite, viz soubor ap-d.tex
}
\let\pgprefix=\relax      % V souboru ap-b.tex je \def\pgprefix{:~}
\def\ncite#1{??}          % Implicitní hodnota \ncite, když nenačítáme .cit
\def\cite#1{[\ncite{#1}]} % \cite pro jedinou publikaci i se závorkami.
\def\pg#1{\pgprefix??}    % Implicitní hodnota \pg, když nenačítáme .cit
\def\lb#1{}               % Implicitní hodnota \lb, když nenačítáme .cit

%% České uvozovky %%                       !uv.
\def\clqq{\char254 }
\def\crqq{{\edef\iSF{\spacefactor\the\spacefactor}\char255 \iSF\relax}}
\def\uv{\bgroup\aftergroup\closequotes\leavevmode\clqq\let\next=}
\def\closequotes{\unskip\crqq\relax}

%% Definice verbatim prostředí %%          !verb.
\catcode`\"=13
\def"{\hbox\bgroup\let"=\egroup\setverb\tt}
\def\setverb{\def\do##1{\catcode`##1=12}\dospecials\obeyspaces}
\def\begtt{\medskip\bgroup\offinterlineskip \topskip=4pt
   \hrule\vrules\nobreak\setverb \parskip=0pt
   \everypar{\vadjust{\penalty100}\hbox to0pt{\kern-\parindent
      \hbox to\hsize{\vrule\strut\hfil\vrule}\hss}}
   \catcode`\"=12\catcode`\~=13 \obeylines\reducebaseline
   \startverb}
{\catcode`\|=0 \catcode`\\=12
  |gdef|startverb#1\endtt{%
        |eightt#1|nobreak|vrules|hrule|egroup|medskip}}
{\obeyspaces\gdef {\ }}
\def\reducebaseline{\baselineskip=.8\baselineskip
   \setbox\strutbox=\hbox{\vrule height6.8pt depth2.8pt width0pt}}
\def\normalttsize{\let\eightt=\tt \let\reducebaseline=\relax}
\def\vrules{\hbox to\hsize{\vrule height3pt\hss\vrule}}

%% Prostředí s puntíkatými nebo číslovanými položkami %%
\def\begitems{\medskip\bgroup\catcode`\*=13 \narrower}
\def\enditems{\par\egroup\medskip}
{\catcode`\*=13 \gdef*{\par\noindent\llap{$\bullet$\ }\ignorespaces}
\gdef\numerate{%                         \numerate napsat těsně za \begitems
  \def*{\par\advance\itemnum by1\noindent
    \llap{\bf\the\itemnum. }\ignorespaces}}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Zde je možné odkomentovat některé řádky, pokud nechceme zpracovat vše  %%

%\makecit      % Načtení souboru s odkazy na literaturu a rejstříková hesla
%\nopagenumbers
%\input title  % Patitul, titul, copyright, ISBN
\pagenumbers
\input t0     % Úvod
%\heretoc      % Sazba obsahu
%\maketoc      % Tvorba referencí pro obsah
%\input ukazka % Ukázka obrazovky při práci na knize 

\input  t1    % Začínáme
%\input  t2    % Stručný přehled vlastností TeXu
%\input  t3    % Různé TeXy
%\input  t4    % Prohlížíme distribuce TeXu
%\input  t5    % Čeština v TeXu
%\input  t6    % Jak TeX pracuje s fonty
%\input  t7    % Programovaci jazyk TeXu
%\input  t8    % Program METAFONT
%\input  t9    % TeX a PostScript
%\input  t10   % Obrázky v TeXu
%\input  t11   % Sestavování rejstříků a citací
%\input  t12   % Dobře dokumentované programy

%\input ap-a   % Slovníček TeX-primitivů
%\input ap-b   % Slovníček k METAFONTu
%\input ap-c   % Veřejný archív TeXu
%\input ap-d   % Literatura
\input ap-e   % Ukázky z formátování této knížky
%\input ap-f   % Fontové tabulky
%\input ap-g   % Rejstřík
\input tiraz  % Tiraz

\bye \endall

