%% This is a LaTeX style file for typesetting BIRD documentation. %% Hacked up by Martin Mares %% %% This is a modified version of linuxdoc-qwertz.sty, for use with SGML-generated LaTeX %% by Matt Welsh (mdw@sunsite.unc.edu) %% %% Based on linuxdoc.sty by Michael K. Johnson, and latex.tex by %% Leslie Lamport. \NeedsTeXFormat{LaTeX2e} \ProvidesClass{birddoc} %%% GLOBAL LAYOUT THINGS \marginparwidth 0.0 in \parindent=0 in \parskip=0.5ex %\parindent=0.5in %\parskip=0pt \topmargin -0.5 in \setlength{\textheight}{\paperheight} \addtolength{\textheight}{-2 in} %\advance\headsep 2 ex \advance\textheight -2 ex %\renewcommand{\baselinestretch}{1.14} \setcounter{tocdepth}{1} \oddsidemargin 0.15 in \evensidemargin -0.35 in \textwidth 6.5in \def\ps@headings{\let\@mkboth\markboth \def\@oddfoot{}\def\@evenfoot{}% No feet. \def\@evenhead{\protect\rule[-4pt]{\textwidth}{.5pt}\kern-\textwidth \rm \thepage\hfil \bf \leftmark} % Left heading. \def\@oddhead{\protect\rule[-4pt]{\textwidth}{.5pt}\kern-\textwidth {\bf \rightmark}\hfil \rm\thepage} % Right heading. \def\chaptermark##1{\markboth {{\ifnum \c@secnumdepth >\m@ne \@chapapp\ \thechapter. \ \fi ##1}}{}}% \def\sectionmark##1{\markright {{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi ##1}}}} \def\@makechapterhead#1{% {\parindent \z@ \raggedright \normalfont \huge \bfseries \@chapapp\space\thechapter: #1\par\nobreak \vskip 20\p@ }} \def\@makeschapterhead#1{% {\parindent \z@ \raggedright \normalfont \huge \bfseries #1\par\nobreak \vskip 20\p@ }} %% Titlepage stuff \gdef\@title{} \gdef\title#1{\gdef\@title{#1}} \gdef\@date{} \gdef\date#1{\gdef\@date{#1}} \gdef\@author{} \gdef\author#1{\gdef\@author{#1}} \gdef\@abstract{} \gdef\abstract#1{\gdef\@abstract{#1}} \def\maketitle{\thispagestyle{empty}\let\footnotesize\small% \let\footnoterule\relax %\setcounter{page}{0}% %\null %\vskip 3 in \noindent {\huge\sf \@title}\\ \rule{\textwidth}{1mm}\\ \mbox{}\@author\ \hfill \@date\ \\ \vskip 1 ex \noindent{\sf \@abstract} \setcounter{footnote}{0}% \gdef\@author{}\gdef\@title{}\gdef\@years{}\gdef\@abstract{} \let\maketitle\relax} \def\birdnarrow{\advance\@totalleftmargin by 0.5in} %% Needs to be here for the previous ps@headings defs to work. \pagestyle{headings} \def\progdoc{ \raggedbottom } %%% USEFUL MACROS \newcommand{\linux}{Linux} % Always use this when % refering to the \linux\ % operating system, like that. \newcommand{\key}[1]{{\fbox{\small\tt #1}}} % Use this to mark keys, like % \key{del} for the delete key. \newcommand{\ret}{\fbox{\sf return}} % Special case for the return key. \newcommand{\st}{\small\tt} % Small typewriter -- comes in handy. %\newcommand{\lb}{{\tt\char '173}} % Left Brace '{' %\newcommand{\rb}{{\tt\char '175}} % Right Brace '}' \newcommand{\lbr}{$\langle$} % Left Bracket '<' \newcommand{\rbr}{$\rangle$} % Right Bracket '>' \newcommand{\bs}{{\tt\char '134}} % BackSlash '\' \newcommand{\tm}{${}^{\mbox{\tiny\sf TM}}$} \newcommand{\TM}{\tm} % TM trademark symbol in % either case \newcommand{\cparam}[1]{{\rm \lbr{\sl #1}\rbr}} % Metavariables. %% Define NAMEURL macro to handle the optional name argument %% This calls on the \url macro from the url.sty package so the %% URL will be hyphenated correctly. \def\nameurl#1#2{{\em #2} {\tt <\url{#1}>}} \def\onlynameurl#1{{\em #1}} %% the tscreen environment automatically goes into typewriter type, %% but is otherwise like the screen environment \newenvironment{tscreen}% {\begin{quote}\bgroup\small\tt}% {\egroup\end{quote}} %% Typesetting of function descriptions \def\function{\bigbreak\hrule\nobreak\bigskip\nobreak\leftline{\bf Function}\nobreak\smallskip\nobreak\parskip=0pt\relax} \def\funcsect#1{\medbreak\leftline{\bf #1}\nobreak}