mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-10-31 16:11:33 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			160 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			160 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
| %
 | |
| %   $Id$
 | |
| %   This file is part of the FPC documentation.
 | |
| %   Copyright (C) 1997, by Michael Van Canneyt
 | |
| %
 | |
| %   The FPC documentation is free text; you can redistribute it and/or
 | |
| %   modify it under the terms of the GNU Library General Public License as
 | |
| %   published by the Free Software Foundation; either version 2 of the
 | |
| %   License, or (at your option) any later version.
 | |
| %
 | |
| %   The FPC Documentation is distributed in the hope that it will be useful,
 | |
| %   but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| %   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | |
| %   Library General Public License for more details.
 | |
| %
 | |
| %   You should have received a copy of the GNU Library General Public
 | |
| %   License along with the FPC documentation; see the file COPYING.LIB.  If not,
 | |
| %   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | |
| %   Boston, MA 02111-1307, USA. 
 | |
| %
 | |
| \ProvidesPackage{fpcman}[1997/06/25]
 | |
| \NeedsTeXFormat{LaTeX2e}
 | |
| \ExecuteOptions{titlepage}
 | |
| % First, all definitions for latex only.
 | |
| \newcommand{\docdescription}[1]{\def\@FPCDescription{#1}}
 | |
| \gdef\@FPCDescription{}%
 | |
| \newcommand{\docversion}[1]{\def\@FPCVersion{#1}}
 | |
| \gdef\@FPCVersion{}%
 | |
| % For backwards compatibility
 | |
| \newcommand{\unitdescription}[1]{\def\@FPCDescription{#1}}
 | |
| \newcommand{\unitversion}[1]{\def\@FPCVersion{#1}}
 | |
| \renewcommand\maketitle{\begin{titlepage}%
 | |
|   \let\footnotesize\small
 | |
|   \let\footnoterule\relax
 | |
|   \null\vfil
 | |
|   \vskip 4cm%
 | |
|   {\noindent\raggedright\Large\@title\\}%
 | |
|   \noindent \rule{\linewidth}{1.5mm}\\%
 | |
|   {\raggedleft\large%
 | |
|       \begin{tabular}[t]{r}%
 | |
|         \@FPCDescription \\
 | |
|         \@FPCVersion \\
 | |
|         \@date
 | |
|       \end{tabular}\par}%
 | |
|    \vskip 5cm%
 | |
|    {\noindent \large \textsf{\@author} \\%
 | |
|     \rule{\linewidth}{0.5mm}}
 | |
|   \@thanks
 | |
|   \vfil\null
 | |
|   \end{titlepage}%
 | |
|   \setcounter{footnote}{0}%
 | |
|   \let\thanks\relax\let\maketitle\relax
 | |
|   \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
 | |
|   % end of \maketitle
 | |
| % For the \procedure and \function commands, we don't want heading numbers.
 | |
| \setcounter{secnumdepth}{1}
 | |
| % redefine the subsection command to leave less space, 
 | |
| %and to use sans serif
 | |
| % Now, Let's define the \procedure and \function commands.
 | |
| \newcommand{\FPClabel}[1]{%
 | |
| \raggedleft\makebox[0pt][r]{\textsf{#1:}}
 | |
| }
 | |
| \newenvironment{FPCList}
 | |
| {\begin{list}{}{%
 | |
| \renewcommand{\makelabel}[1]{\FPClabel{##1}\hfil\relax}
 | |
|  \setlength{\labelwidth}{0pt}%
 | |
|  \setlength{\leftmargin}{0pt}}%
 | |
|  \setlength{\labelsep}{0pt}%
 | |
| }
 | |
| {\end{list}}
 | |
| \newcommand{\function}[6]{
 | |
| \subsection{#1}
 | |
| \raisebox{1ex}{\rule{\linewidth}{0.5mm}}
 | |
| \label{fu:#1}
 | |
| \index{#1}
 | |
| \begin{FPCList}
 | |
| \item[Declaration]
 | |
| \texttt {Function #1  #2  : #3;}
 | |
| \item[Description]
 | |
| #4
 | |
| \item[Errors]
 | |
| #5
 | |
| \item[See also]
 | |
| #6
 | |
| \end{FPCList}
 | |
| }
 | |
| \newcommand{\procedure}[5]{
 | |
| \subsection{#1}
 | |
| \raisebox{1ex}{\rule{\linewidth}{0.5mm}}
 | |
| \label{pro:#1}
 | |
| \index{#1}
 | |
| \begin{FPCList}
 | |
| \item[Declaration]
 | |
| \texttt {Function #1  #2;}
 | |
| \item[Description]
 | |
| #3
 | |
| \item[Errors]
 | |
| #4
 | |
| \item[See also]
 | |
| #5
 | |
| \end{FPCList}
 | |
| }
 | |
| % define a capital version, 
 | |
| % for function/command which has no options passed to it.
 | |
| \newcommand{\Function}[5]{\function{#1}{}{#2}{#3}{#4}{#5}}
 | |
| \newcommand{\Procedure}[4]{\procedure{#1}{}{#2}{#3}{#4}}
 | |
| % Now the referencing commands.
 | |
| \newcommand{\seef}[1]{
 | |
| \textsf{#1} (\pageref{fu:#1})}
 | |
| \newcommand{\seep}[1]{
 | |
| \textsf{#1} (\pageref{pro:#1})}
 | |
| % man page references...
 | |
| \newcommand{\seem}[2] {#1(#2) }
 | |
| % for easy typesetting of variables and files.
 | |
| \newcommand{\var}[1]{\texttt {#1}}
 | |
| \newcommand{\file}[1]{\textsf {#1}}
 | |
| %
 | |
| % Useful references.
 | |
| %
 | |
| \newcommand{\progref}{\htmladdnormallink{Programmer's guide}{../prog/prog.html}\ }
 | |
| \newcommand{\refref}{\htmladdnormallink{Reference guide}{../ref/ref.html}\ }
 | |
| \newcommand{\userref}{\htmladdnormallink{Users' guide}{../user/user.html}\ }
 | |
| \newcommand{\unitsref}{\htmladdnormallink{Unit reference}{../units/units.html}\ }
 | |
| \newcommand{\seecrt}{\htmladdnormallink{CRT}{../crt/crt.html}}
 | |
| \newcommand{\seelinux}{\htmladdnormallink{Linux}{../linux/linux.html}}
 | |
| \newcommand{\seestrings}{\htmladdnormallink{strings}{../strings/strings.html}}
 | |
| \newcommand{\seedos}{\htmladdnormallink{DOS}{../dos/dos.html}}
 | |
| \newcommand{\seegetopts}{\htmladdnormallink{getopts}{../getopts/getopts.html}}
 | |
| \newcommand{\seeobjects}{\htmladdnormallink{objects}{../objects/objects.html}}
 | |
| \newcommand{\seegraph}{\htmladdnormallink{graph}{../graph/graph.html}}
 | |
| \newcommand{\seeprinter}{\htmladdnormallink{printer}{../printer/printer.html}}
 | |
| \newcommand{\seego}{\htmladdnormallink{GO32}{../go32/go32.html}}
 | |
| \newcommand{\seec}[1]{chapter \ref{ch:#1}}
 | |
| \newcommand{\sees}[1]{section \ref{se:#1}}
 | |
| %
 | |
| % Nice environments
 | |
| %
 | |
| % For Code examples (complete programs only)
 | |
| \newenvironment{CodEx}{}{}
 | |
| % For Tables.
 | |
| \newenvironment{FPCtable}[2]{\begin{table}\caption{#2}\begin{center}\begin{tabular}{#1}}{\end{tabular}\end{center}\end{table}}
 | |
| % The same, but with label in third argument (tab:#3)
 | |
| \newenvironment{FPCltable}[3]{\begin{table}\caption{#2}\label{tab:#3}\begin{center}\begin{tabular}{#1}}{\end{tabular}\end{center}\end{table}}
 | |
| %
 | |
| % Commands to reference these things.
 | |
| %
 | |
| \newcommand{\seet}[1]{table (\ref{tab:#1}) }
 | |
| % some OSes
 | |
| \newcommand{\linux}{\textsc{linux}\ }
 | |
| \newcommand{\dos}  {\textsc{dos}\ }
 | |
| \newcommand{\msdos}{\textsc{ms-dos}\ }
 | |
| \newcommand{\ostwo}{\textsc{os/2}\ }
 | |
| \newcommand{\windowsnt}{\textsc{WindowsNT}\ }
 | |
| \newcommand{\windows}{\textsc{Windows}\ }
 | |
| \newcommand{\fpc}{Free Pascal\ }
 | |
| \newcommand{\gnu}{\textsc{gnu}\ }
 | |
| %
 | |
| \newcommand{\fpcversion}{0.99.1}
 | |
| % end of fpcman.sty
 | 
