% $Id: awk-man.sty,v 1.2 2000/08/21 18:45:01 tomek Exp $
% Styl do wydrukowania `Opis języka AWK'
% autor: T. Przechlewski [ T.Przechlewski@GUST.org.pl ]
% Ostatnia zmiana 16/08/2000 ** To jest wersja wstępna ***
%
% Do zrobienia:
% -- zrobić porządnie przełącznik dvi<-->pdf
%
\usepackage{polski}
\usepackage{makeidx}
\DeclareOption{color}{\def\PDFLinksColor{colorlinks,}}
\DeclareOption{nocolor}{\def\PDFLinksColor{}}
\DeclareOption{B5page}{\BvPaperSize}
\DeclareOption{A4page}{\AivPaperSize}
\DeclareOption{makepdf}{\MakePDFOutput}
%
\def\BvPaperSize{\textwidth125mm \textheight187.5mm 
  \oddsidemargin=0in \topmargin0in  \hfuzz=6pt }
\def\AivPaperSize{\textwidth6.5in \textheight8.9in 
  \oddsidemargin=0in }
\def\MakePDFOutput{\relax} %% -- dokończyć --
\ProcessOptions
%
\ifx\pdfoutput\undefined 
   %% //// Normalny TeX
   \def\tempa{}%
   \ifx\tempa\PDFLinksColor % ** czarno-biały ***
     \def\HdColor{}%
     \def\CitationColor{}%
     \def\XRefColor{}%
   \else % *** druk-kolorowy ***
     \makeatletter
      \let\NR@sect\@sect
      \def\@sect#1#2#3#4#5#6[#7]#8{%
      \NR@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{\Sectionformat{#8}{#2}}}
      \let\NR@ssect\@ssect
      \def\@ssect#1#2#3#4#5{\NR@ssect{#1}{#2}{#3}{#4}{\Sectionformat{#5}{#1}}}
     \makeatother
      \def\HdColor{\textcolor{section1}}%
      \def\CitationColor{\textcolor{red}}%
      \def\XRefColor{\textcolor{red}}%
   \fi
\else
   \def\HdColor{}\def\CitationColor{}\def\XRefColor{}% ** wszystko off **
   \ifx\tempa\PDFLinksColor % ** czarno-biały ***
   \else \def\HdColor{\textcolor{section1}} \fi %% kolor
   % HdColor to jest kolor wykorzystywany w przykładach/uwagach
   % dlatego włączamy go dla kolorowych PDF-ów. Inne wyłączamy
   % bo są domyślnie kolorowane przez pakiet _hyperref_
   \usepackage[pdftex,plainpages=false,hyperindex,\PDFLinksColor%
    pdfview=FitBH,pdfauthor={T. Przechlewski},%
    pdftitle={Wprowadzenie do AWK},pdfsubject={AWK}]{hyperref}%
\fi
%
\makeatletter
\def\Sectionformat#1#2{\protect\textcolor{section1}{#1}}% 
\let\old@secnumber\@secnumber
\def\@secnumber{\protect\textcolor{section1}{\old@secnumber}}%
\def\@seccntformat#1{\protect\textcolor{section1}%
     {\expandafter\upshape\csname the#1\endcsname.}\quad}%
\def\@secnumfont{\protect\textcolor{section1}}%
\makeatother
%
\usepackage{color,url,multicol}%
\usepackage{verbatim,moreverb}%
%
%\definecolor{section0}{rgb}{0,.5,.1}
\definecolor{section1}{rgb}{0,.5,1}
\definecolor{section2}{rgb}{0,.5,.7}
%\definecolor{section3}{rgb}{0,.5,.4}
%\definecolor{section4}{rgb}{.4,.5,.2}
%\definecolor{section5}{rgb}{.5,.5,.3}
%
\tolerance1450 \pretolerance950 \hbadness1450 
\evensidemargin \oddsidemargin \exhyphenpenalty=10001
\widowpenalty10001
%
\usepackage{fancyhdr}
\pagestyle{fancyplain}
%
\lhead[\fancyplain{}{\renewcommand\familydefault{\rmdefault}%
      \normalfont \small\bfseries\thepage}]
     {\fancyplain{}{\renewcommand\familydefault{\rmdefault}%
      \normalfont \small \bfseries{\leftmark}}}
\rhead[\fancyplain{}{\renewcommand\familydefault{\rmdefault}%
     \normalfont \small\bfseries{\leftmark}}]
     %%\small\bfseries{\rightmark}}]
    {\fancyplain{}{\renewcommand\familydefault{\rmdefault}%
     \normalfont \small\bfseries\thepage}}
\cfoot[]{}
\addtolength{\headheight}{1.6pt}
\makeatletter
\def\MakeUppercase{\relax}
%
    \def\sectionmark#1{%
      \markboth{%
        \ifnum \c@secnumdepth >\z@ \thesection.\enspace \fi
        #1}{}}%
    \def\subsectionmark#1{%
      \markright{%
        \ifnum \c@secnumdepth >\@ne \thesubsection.\enspace \fi
        #1}}
%% Dodać kropkę po numerze w spisie treści
\def\numberline#1{\hb@xt@\@tempdima{#1.\hfil}} % !!!
\makeatother
%
\newcounter{exno}
\newenvironment{example}{\par \medskip\begingroup \refstepcounter{exno}}
  {\ExEndSymbol\par\endgroup\smallskip}
\newenvironment{legalnotice}{\vbox to\textheight\bgroup
  \parindent0pt \parskip3pt \vfil}{\egroup}
\def\CopYear#1{#1,\space}\def\CopHolder#1{#1} %
%\def\ExEndSymbol{[~]} %%
\def\ExEndSymbol{\leavevmode \unskip\space\SquareSymbol}
\def\SquareSymbol{\HdColor{\hbox{\rlap{$\sqcap$}$\sqcup$}}}%

\makeatletter
\catcode`\\active
\catcode`\active\def#1{\@ifnextchar[\OParameter\Parameter#1\\\\}
%
\makeatother
%
% Opcjonalny parametr --
\def\OParameter[#1]\\\\{{\textrm{[}#1\textrm{]}}}
\def\optargument#1{{\rmfamily\itshape{$\langle$#1$\rangle$}}}
% Parametr typu `replaceable'
\def\Parameter#1\\\\{{\rmfamily\itshape{$\langle$#1$\rangle$}}}
\def\replaceable#1{{\it$\langle$#1$\rangle$}}
%
\makeatletter
\newenvironment{IndexPre}{\ScanIndexPre}{}
\long\def\ScanIndexPre#1\end{\gdef\IndexPreText{#1}\end}
%
%\def\@input@#1{\InputIfFileExists{#1}{}{\typeout{No file #1.}}}
\renewenvironment{theindex}{%
   \begin{multicols}{3}[\section*{\indexname}
   \IndexPreText% Tu jest wstawiana `preambuła skorowidza'
   ]
   \@mkboth{\indexname}{\indexname}%
   \addcontentsline{toc}{section}{\indexname}% ** TP **
   %\thispagestyle{plain} % ** TP **
   \parindent\z@
   \parskip\z@ \@plus .3\p@\relax
   \let\item\@idxitem
   }
   {%
    %\if@restonecol\onecolumn\else\clearpage\fi
    \end{multicols}
    }
%
\def\indexemdashes{%
\def\@idxitem{\par\hangindent 0pt}
\def\subitem{\par\hangindent 0pt --- }
\def\subsubitem{\par\hangindent 0pt --- --- }
\def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}}
\indexemdashes
%
%
\def\@listi{\leftmargin\leftmargini \parsep 4\p@ \@plus2\p@ \@minus\p@
   \topsep 8\p@ \@plus2\p@ \@minus4\p@ \itemsep1.5\p@ \@plus1.5\p@ \@minus1\p@}
\let\@listI\@listi \@listi
%
\makeatother
%
\def\ExampleId#1{\def\ExampleCurrentLabel{#1}}
\def\ExampleTitle{\noindent 
  \HdColor{\ifx\ExampleCurrentLabel\undefined\else 
  \label{\ExampleCurrentLabel}\fi
  {\sc przykład}%
  \space\arabic{exno}\nopagebreak[4]}%
  \par
  \noindent }
%
\def\summary{\par 
  \medskip\begingroup\parindent0pt
  \def\desc{\par\nobreak \noindent\ignorespaces}%
  \def\itm{\par\vskip1.5pt plus 1pt}%
  \hrule\par\nobreak%
  \vskip2.0pt\hrule\par\nobreak\vskip3.0pt%
  \bgroup
}
\def\endsummary{\egroup\par\nobreak\smallskip%
  \hrule\par\nobreak\vskip2.0pt\hrule\par\nobreak%
  \vskip3.0pt
   \endgroup\aftersumskip}
%
\def\aftersumskip{\par\medskip}
\newenvironment{Notes}{\par \smallbreak %\let\par\FirstPar 
    \noindent{\sc \HdColor{Uwagi:}}}{\par}
\def\FirstPar{\let\par\NormalTextParagraph}%
\let\NormalTextParagraph\par
\def\GawkEx{$^\ast$}\def\UserDf{$^\dag$}
\let\OriCitation\cite \def\cite#1{\CitationColor{\OriCitation{#1}}}%
\let\OriXRef\ref \def\ref#1{\XRefColor{\OriXRef{#1}}}%
% =======
\endinput

