Răsfoiți Sursa

* html creation works again

peter 26 ani în urmă
părinte
comite
8064542fa2
16 a modificat fișierele cu 839 adăugiri și 784 ștergeri
  1. 45 19
      docs/Makefile
  2. 3 59
      docs/crt.tex
  3. 85 73
      docs/fpc-html.tex
  4. 49 49
      docs/fpc.sty
  5. 41 15
      docs/internal.tex
  6. 0 0
      docs/old/a4.sty
  7. 13 0
      docs/old/fpc.perl
  8. 0 0
      docs/old/fpcman.sty
  9. 0 0
      docs/old/html.sty
  10. 0 0
      docs/old/lstdelphi.sty
  11. 0 0
      docs/old/lstfpc.sty
  12. 0 0
      docs/old/lsttp.sty
  13. 189 183
      docs/prog.tex
  14. 219 212
      docs/ref.tex
  15. 23 12
      docs/units.tex
  16. 172 162
      docs/user.tex

+ 45 - 19
docs/Makefile

@@ -17,9 +17,12 @@
 # Configurable section
 #####################################################################
 
+# Which docs are made when 'html' is specified
+HTML = user units ref prog
+
 # Where do you want the html files to be put ?
 ifndef DOCINSTALLDIR
-DOCINSTALLDIR=/usr/doc/fpc-0.99.11
+DOCINSTALLDIR=/usr/doc/fpc-0.99.12
 endif 
 
 #
@@ -78,8 +81,6 @@ export TMP=/tmp
 # End of configurable section. Do not edit after this line.
 #######################################################################
 
-HTML = user units ref prog
-
 PS = $(addsuffix .ps, $(HTML))
 DVI = $(addsuffix .dvi, $(HTML))
 TXT = $(addsuffix .txt, $(HTML))
@@ -210,9 +211,13 @@ prog.dvi: prog.tex date.inc
 
 user.dvi: user.tex date.inc
 
-units.pdf: units.tex $(CHAPTERS)
+units.pdf: units.tex date.inc $(CHAPTERS)
 
-ref.pdf: ref.tex
+ref.pdf: ref.tex date.inc
+
+user.pdf: user.tex date.inc
+
+prog.pdf: prog.tex date.inc
 
 dvi : $(DVI)
 
@@ -224,15 +229,19 @@ pdf : $(PDF)
 
 all : dvi ps pdf txt html
 
+#####################################################################
+# Html creation
+#####################################################################
+
 user: user.chk
 
 user.chk: user.tex date.inc
 	$(LATEX2HTML) $(LATEX2HTMLOPTS) -split 2 -link 2\
          -t "User's guide for Free Pascal" user.tex
-	sed -f foot.sed <user/footnode.html >user/footnote.html
-	mv user/footnote.html user/footnode.html
-	rm -f user/labels.pl user/internals.pl user/.*.pag user/.*.dir
-	rm -f user/images.* user/*.log
+	-sed -f foot.sed <user/footnode.html >user/footnote.html
+	-mv user/footnote.html user/footnode.html
+	-rm -f user/labels.pl user/internals.pl user/.*.pag user/.*.dir
+	-rm -f user/images.* user/*.log user/WARNINGS
 	touch user.chk
 
 units: units.chk
@@ -240,9 +249,10 @@ units: units.chk
 units.chk: units.tex unitex.chk date.inc
 	$(LATEX2HTML) $(LATEX2HTMLOPTS) -split 3 -link 2\
         -t "Unit reference for Free Pascal" units.tex
-	sed -f foot.sed <units/footnode.html >units/footnote.html
-	mv units/footnote.html units/footnode.html
-	rm -f units/labels.pl units/internals.pl units/.*.pag units/.*.dir
+	-sed -f foot.sed <units/footnode.html >units/footnote.html
+	-mv units/footnote.html units/footnode.html
+	-rm -f units/labels.pl units/internals.pl units/.*.pag units/.*.dir
+	-rm -f units/images.* units/*.log units/WARNINGS
 	touch units.chk
 
 ref: ref.chk
@@ -250,9 +260,10 @@ ref: ref.chk
 ref.chk: refex.chk ref.tex date.inc
 	$(LATEX2HTML) $(LATEX2HTMLOPTS) -split 4 -link 2\
         -t "Free Pascal reference guide" ref.tex
-	sed -f foot.sed <ref/footnode.html >ref/footnote.html
-	mv ref/footnote.html ref/footnode.html
-	rm -f ref/labels.pl ref/internals.pl ref/.*.pag ref/.*.dir
+	-sed -f foot.sed <ref/footnode.html >ref/footnote.html
+	-mv ref/footnote.html ref/footnode.html
+	-rm -f ref/labels.pl ref/internals.pl ref/.*.pag ref/.*.dir
+	-rm -f ref/images.* ref/*.log ref/WARNINGS
 	touch ref.chk	
 
 prog: prog.chk
@@ -260,11 +271,23 @@ prog: prog.chk
 prog.chk: prog.tex date.inc
 	$(LATEX2HTML) $(LATEX2HTMLOPTS) -split 2 -link 2\
         -t "Free Pascal programmers guide" prog.tex
-	sed -f foot.sed <prog/footnode.html >prog/footnote.html
-	mv prog/footnote.html prog/footnode.html
-	rm -f prog/labels.pl prog/internals.pl prog/.*.pag prog/.*.dir
+	-sed -f foot.sed <prog/footnode.html >prog/footnote.html
+	-mv prog/footnote.html prog/footnode.html
+	-rm -f prog/labels.pl prog/internals.pl prog/.*.pag prog/.*.dir
+	-rm -f prog/images.* prog/*.log prog/WARNINGS
 	touch prog.chk
 
+internal: internal.chk
+
+internal.chk: internal.tex date.inc
+	$(LATEX2HTML) $(LATEX2HTMLOPTS) -split 4 -link 2\
+        -t "Free Pascal Compiler Documentation" internal.tex
+	-sed -f foot.sed <internal/footnode.html >internal/footnote.html
+	-mv internal/footnote.html internal/footnode.html
+	-rm -f internal/labels.pl internal/internals.pl internal/.*.pag internal/.*.dir
+	-rm -f internal/images.* internal/*.log internal/WARNINGS
+	touch internal.chk	
+
 html: $(HTML)
 
 #####################################################################
@@ -342,7 +365,10 @@ linuxexamples: examples
 
 #
 # $Log$
-# Revision 1.23  1999-06-02 17:41:33  peter
+# Revision 1.24  1999-06-03 00:06:42  peter
+#   * html creation works again
+#
+# Revision 1.23  1999/06/02 17:41:33  peter
 #   * fixes for html creation
 #
 # Revision 1.22  1999/05/31 16:37:08  peter

+ 3 - 59
docs/crt.tex

@@ -24,9 +24,9 @@ This chapter describes the \var{CRT} unit for Free Pascal, both under \dos
 and \linux. The unit was first written for \dos by Florian kl\"ampfl. 
 The unit was ported to \linux by Mark May\footnote{Current
 e-mail address \textsf{[email protected]}}, and enhanced by Micha\"el Van Canneyt
-It works on the \linux console, and in xterm and rxvt windows under
-X-Windows. The functionality for both is the same, except that under \linux
-the use of an early implementation (versions 0.9.1 an earlier of the
+and Peter Vreman. It works on the \linux console, and in xterm and rxvt windows
+under X-Windows. The functionality for both is the same, except that under
+\linux the use of an early implementation (versions 0.9.1 an earlier of the
 compiler) the crt unit automatically cleared the screen at program startup.
 This chapter is divided in two sections. 
 \begin{itemize}
@@ -446,59 +446,3 @@ None.
 \end{procedure}
 \latex{\inputlisting{crtex/ex5.pp}}
 \html{\input{crtex/ex5.tex}}
-\begin{procedure}{ScrollWindow}
-\Declaration
-Procedure ScrollWindow (X1,Y1,X2,Y2 : Byte; Count : Longint);
-
-\Description
- ScrollWindow scrolls the contents of the window defined by the upper-left
-%\var{(X1,Y1)} and lower-right \var{(X2,Y2)} corners \var{count} lines up if
-%\var{count} is positive, it scrolls down if \var{count} is negative.
-%The new lines are made blank using the current textcolors.
-%
-\Errors
-None.
-\SeeAlso
-\seep{Window}, \seep{ClrScr}
-\end{procedure}
-\begin{function}{SaveScreenRegion}
-\Declaration
-Function SaveScreenRegion (X1,Y1,X2,Y2, var P : pointer) : Boolean;
-
-\Description
-SaveScreenRegion writes the the contents of the window defined by the upper-left
-%\var{(X1,Y1)} and lower-right \var{(X2,Y2)} corners to the location pointed
-%to by \var{P}. If \var{P} is \var{nil} then enough memory is allocated to
-%contain the contents of the window.
-%
-%The contents are written as follows : line per line, column per column,
-%first the character on screen is written (1 byte), followed by the text 
-%attribute (1 byte). The size required is therefore 
-%\var{(Y2-Y1+1)*(X2-X1+1)*2} bytes.
-%
-%The function returns \var{False} if it couldn't allocate the required
-%memory, \var{True} if the memory was allocated.
-\Errors
-None.
-\SeeAlso
-\seep{RestoreScreenRegion}, \seep{Window} 
-\end{function}
-\begin{procedure}{RestoreScreenRegion}
-\Declaration
-Procedure RestoreScreenRegion (X1,Y1,X2,Y2, var P : pointer);
-
-\Description
-SaveScreenRegion writes the the contents of the memory location pointed to
-%by \var{P}, to the window defined by the upper-left \var{(X1,Y1)} and 
-%lower-right \var{(X2,Y2)} corners. 
-%
-%The contents of \var{P} should be arranged as if they are when written by 
-%a call to the SaveScreenRegion () function.
-%
-%The memory pointed to by \var{P} is NOT freed.
-\Errors
-None
-\SeeAlso
-\seef{SaveScreenRegion}, \seep{Window} 
-\end{procedure}
-

+ 85 - 73
docs/fpc-html.tex

@@ -16,106 +16,118 @@
 %   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. 
+%   Boston, MA 02111-1307, USA.
+
+\usepackage{ifthen}
+
 %
-% Dummy
-\newenvironment{FPCList}{\begin{description}}{\end{description}}
+% Html navigation search button
 %
+\htmladdtonavigation{\htmladdnormallink{\htmladdimg{../buttons/search.gif}}{javascript:opensearch()}}
+
 %
-\newcommand{\Declaration}{\item[Declaration]\ttfamily}
-\newcommand{\Description}{\item[Description]\rmfamily}
-\newcommand{\Errors}{\item[Errors]\rmfamily}
-\newcommand{\SeeAlso}{\item[See also]\rmfamily}
+% FPC environments
+%
+% List
+\newenvironment{FPCList}{\begin{htmllist}}{\end{htmllist}}
+% 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}}
+
+%
+% Html Refs
+%
+\newcommand{\seefl}[2]{\htmlref{#1}{fu:#2}}
+\newcommand{\seepl}[2]{\htmlref{#1}{pro:#2}}
+\newcommand{\seetyl}[1]{\htmlref{#1}{sec:types}}
+\newcommand{\seec}[1]{chapter \htmlref{#1}{ch:#1}}
+\newcommand{\sees}[1]{section \htmlref{#1}{se:#1}}
+\newcommand{\seeo}[1]{See \htmlref{#1}{option:#1}}
+\newcommand{\seet}[1]{table (\htmlref{#1}{tab:#1}) }
+
 %
-%  The environments
+% Function/procedure environments
 %
 \newenvironment{functionl}[2]{\subsection{#1}\index{#1}\label{fu:#2}\begin{FPCList}}{\end{FPCList}}
 \newenvironment{procedurel}[2]{\subsection{#1}\index{#1}\label{pro:#2}\begin{FPCList}}{\end{FPCList}}
 \newenvironment{function}[1]{\begin{functionl}{#1}{#1}}{\end{functionl}}
 \newenvironment{procedure}[1]{\begin{procedurel}{#1}{#1}}{\end{procedurel}}
-\newcommand{\seefl}[2]{\htmlref{#1}{fu:#2}}
-\newcommand{\seepl}[2]{\htmlref{#1}{pro:#2}}
+\newenvironment{typel}[2]{\subsection{#1}\index{#1}\label{ty:#2}\begin{FPCList}}{\end{FPCList}}
+\newenvironment{type}[1]{\begin{typel}{#1}{#1}}{\end{typel}}
+\newcommand{\Declaration}{\item[Declaration]\ttfamily}
+\newcommand{\Description}{\item[Description]\rmfamily}
+\newcommand{\Errors}{\item[Errors]\rmfamily}
+\newcommand{\SeeAlso}{\item[See also]\rmfamily}
 %
-% Now the ones without label.
+% Ref without labels
 %
 \newcommand{\seef}[1]{\seefl{#1}{#1}}
 \newcommand{\seep}[1]{\seepl{#1}{#1}}
+\newcommand{\seety}[1]{\seetyl{#1}{#1}}
+%
+% man page references don't need labels.
+%
+\newcommand{\seem}[2]{\texttt{#1} (#2) }
+%
+% for easy typesetting of variables.
 %
-\newcommand{\seet}[1]{\htmlref{#1}{sec:types}}
-\newcommand{\seem}[2]{ \texttt{#1} (#2) }
 \newcommand{\var}[1]{\texttt {#1}}
 \newcommand{\file}[1]{\textsf {#1}}
 %
-% Abbreviations
-%
-\newcommand{\linux}{\textsc{LinuX} }
-\newcommand{\dos}  {\textsc{dos} }
-\newcommand{\msdos}{\textsc{ms-dos} }
-\newcommand{\ostwo}{\textsc{os/2} }
-\newcommand{\windowsnt}{\textsc{Windows NT} }
-\newcommand{\windows}{\textsc{Windows} }
-\newcommand{\docdescription}[1]{}
-\newcommand{\docversion}[1]{}
-\newcommand{\unitdescription}[1]{}
-\newcommand{\unitversion}[1]{}
-\newcommand{\fpc}{Free Pascal }
-\newcommand{\gnu}{gnu }
-\newcommand{\atari}{\textsc{Atari} }
-\newcommand{\amiga}{\textsc{Amiga} }
-\newcommand{\win}{\textsc{Win32} }
-\newcommand{\freebsd}{\textsc{FreeBSD} }
-%
 % 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}}
-%
-% 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}}
-% Listings
-\newenvironment{listing}{\begin{verbatim}}{\end{verbatim}}
+\newcommand{\progref}{\htmladdnormallink{Programmers' guide}{../prog/prog.html}\xspace}
+\newcommand{\refref}{\htmladdnormallink{Reference guide}{../ref/ref.html}\xspace}
+\newcommand{\userref}{\htmladdnormallink{Users' guide}{../user/user.html}\xspace}
+\newcommand{\unitsref}{\htmladdnormallink{Unit reference}{../units/units.html}\xspace}
+\newcommand{\seecrt}{\htmladdnormallink{CRT}{../crt/crt.html}\xspace}
+\newcommand{\seelinux}{\htmladdnormallink{Linux}{../linux/linux.html}\xspace}
+\newcommand{\seestrings}{\htmladdnormallink{strings}{../strings/strings.html}\xspace}
+\newcommand{\seedos}{\htmladdnormallink{DOS}{../dos/dos.html}\xspace}
+\newcommand{\seegetopts}{\htmladdnormallink{getopts}{../getopts/getopts.html}\xspace}
+\newcommand{\seeobjects}{\htmladdnormallink{objects}{../objects/objects.html}\xspace}
+\newcommand{\seegraph}{\htmladdnormallink{graph}{../graph/graph.html}\xspace}
+\newcommand{\seeprinter}{\htmladdnormallink{printer}{../printer/printer.html}\xspace}
+\newcommand{\seego}{\htmladdnormallink{GO32}{../go32/go32.html}\xspace}
 %
 % Commands to reference these things.
 %
-%\newcommand{\seet}[1]{table (\ref{tab:#1}) }
-%\newcommand{\seec}[1]{chapter (\ref{ch:#1}) }
-%\newcommand{\sees}[1]{section (\ref{se:#1}) }
-\htmladdtonavigation{%
-\htmladdnormallink{\htmladdimg{../buttons/search.gif}}{javascript:opensearch()}%
-}
+\newcommand{\remark}[1]{\par$\rightarrow$\textbf{#1}\par}
+\newcommand{\olabel}[1]{\label{option:#1}}
+%
+% some OSes
 %
-% Some versions 
+\newcommand{\linux}{\textsc{linux}\xspace}
+\newcommand{\dos}  {\textsc{dos}\xspace}
+\newcommand{\msdos}{\textsc{ms-dos}\xspace}
+\newcommand{\ostwo}{\textsc{os/2}\xspace}
+\newcommand{\windows}{\textsc{Windows}\xspace}
+\newcommand{\windowsnt}{\textsc{Windows NT}\xspace}
+\newcommand{\fpc}{Free Pascal\xspace}
+\newcommand{\gnu}{\textsc{gnu}\xspace}
+\newcommand{\atari}{\textsc{Atari}\xspace}
+\newcommand{\amiga}{\textsc{Amiga}\xspace}
+\newcommand{\win}{\textsc{Win32}\xspace}
+\newcommand{\freebsd}{\textsc{FreeBSD}\xspace}
+%
+% Some versions
 %
 \newcommand{\fpcversion}{0.99.12}
+
 %
 % PDF support
 %
-\latex{
-\usepackage{ifthen}
-\newif\ifpdf
-\ifx\pdfoutput\undefined
-   \pdffalse
-\else
-   \pdfoutput=1
-   \pdftrue
-\fi
+\latex{%
+  \newif\ifpdf
+  \ifx\pdfoutput\undefined
+     \pdffalse
+  \else
+     \pdfoutput=1
+     \pdftrue
+  \fi
 }
+
 %
-% end of fpc.sty
+% end of fpc-html.tex
+%

+ 49 - 49
docs/fpc.sty

@@ -16,14 +16,15 @@
 %   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. 
+%   Boston, MA 02111-1307, USA.
 %
 \ProvidesPackage{fpc}[1996/12/09]
 \NeedsTeXFormat{LaTeX2e}
 \RequirePackage{xspace}
+\RequirePackage{ifthen}
 \ExecuteOptions{titlepage}
 % Some style elements
-\parindent 0pt%  
+\parindent 0pt%
 \parskip 0.35\baselineskip%
 % First, all definitions for latex only.
 \newcommand{\docdescription}[1]{\def\@FPCDescription{#1}}
@@ -58,7 +59,7 @@
   % 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, 
+% redefine the subsection command to leave less space,
 %and to use sans serif
 \renewcommand\subsection{\@startsection%
 {subsection}%
@@ -71,44 +72,50 @@
 \newcommand{\FPClabel}[1]{%
 \raggedleft\makebox[0pt][r]{\textsf{#1:}}
 }
+
+%
+% FPC environments
+%
+% Lists
 \newenvironment{FPCList}
 {\begin{list}{}{%
-\renewcommand{\makelabel}[1]{\FPClabel{##1}\hfil\relax}
- \setlength{\labelwidth}{0pt}%
- \setlength{\leftmargin}{0pt}}%
- \setlength{\labelsep}{0pt}%
+  \renewcommand{\makelabel}[1]{\FPClabel{##1}\hfil\relax}
+  \setlength{\labelwidth}{0pt}%
+  \setlength{\leftmargin}{0pt}}%
+  \setlength{\labelsep}{0pt}%
 }
 {\end{list}}
+% 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}}
+
 %
+% Refs
 %
-\newcommand{\Declaration}{\item[Declaration]\ttfamily}
-\newcommand{\Description}{\item[Description]\rmfamily}
-\newcommand{\Errors}{\item[Errors]\rmfamily}
-\newcommand{\SeeAlso}{\item[See also]\rmfamily}
+\newcommand{\seefl}[2]{\textsf{#1} (\pageref{fu:#2})}
+\newcommand{\seepl}[2]{\textsf{#1} (\pageref{pro:#2})}
+\newcommand{\seetyl}[2]{\textsf{#1} (\pageref{ty:#2})}
+\newcommand{\seec}[1]{chapter \ref{ch:#1}, page \pageref{ch:#1}\xspace}
+\newcommand{\sees}[1]{section \ref{se:#1}, page \pageref{se:#1}\xspace}
+\newcommand{\seeo}[1]{See \ref{option:#1}}
+\newcommand{\seet}[1]{table (\ref{tab:#1}) }
+
 %
-%  The environments
+% Function/procedure environments
 %
-\newenvironment{functionl}[2]{\subsection{#1}%
-\index{#1}\label{fu:#2}\begin{FPCList}}{\end{FPCList}}
-\newenvironment{procedurel}[2]{\subsection{#1}%
-\index{#1}\label{pro:#2}\begin{FPCList}}{\end{FPCList}}
+\newenvironment{functionl}[2]{\subsection{#1}\index{#1}\label{fu:#2}\begin{FPCList}}{\end{FPCList}}
+\newenvironment{procedurel}[2]{\subsection{#1}\index{#1}\label{pro:#2}\begin{FPCList}}{\end{FPCList}}
 \newenvironment{function}[1]{\begin{functionl}{#1}{#1}}{\end{functionl}}
 \newenvironment{procedure}[1]{\begin{procedurel}{#1}{#1}}{\end{procedurel}}
-\newenvironment{typel}[2]{\subsection{#1}%
-\index{#1}\label{ty:#2}\begin{FPCList}}{\end{FPCList}}
+\newenvironment{typel}[2]{\subsection{#1}\index{#1}\label{ty:#2}\begin{FPCList}}{\end{FPCList}}
 \newenvironment{type}[1]{\begin{typel}{#1}{#1}}{\end{typel}}
-% Now the referencing commands.
-%
-% First, the ones with alternate label (second argument}
-%
-\newcommand{\seefl}[2]{
-\textsf{#1} (\pageref{fu:#2})}
-\newcommand{\seepl}[2]{
-\textsf{#1} (\pageref{pro:#2})}
-\newcommand{\seetyl}[2]{
-\textsf{#1} (\pageref{ty:#2})}
+\newcommand{\Declaration}{\item[Declaration]\ttfamily}
+\newcommand{\Description}{\item[Description]\rmfamily}
+\newcommand{\Errors}{\item[Errors]\rmfamily}
+\newcommand{\SeeAlso}{\item[See also]\rmfamily}
 %
-% Now the ones with label.
+% Ref without labels
 %
 \newcommand{\seef}[1]{\seefl{#1}{#1}}
 \newcommand{\seep}[1]{\seepl{#1}{#1}}
@@ -138,21 +145,11 @@
 \newcommand{\seegraph}{\htmladdnormallink{graph}{../graph/graph.html}\xspace}
 \newcommand{\seeprinter}{\htmladdnormallink{printer}{../printer/printer.html}\xspace}
 \newcommand{\seego}{\htmladdnormallink{GO32}{../go32/go32.html}\xspace}
-\newcommand{\seec}[1]{chapter \ref{ch:#1}, page \pageref{ch:#1}\xspace}
-\newcommand{\sees}[1]{section \ref{se:#1}, page \pageref{se:#1}\xspace}
-%
-% Nice environments
-%
-% For Code examples (complete programs only)
-\newenvironment{CodEx}{\begin{quote}}{\end{quote}}
-% 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}) }
+\newcommand{\remark}[1]{\par$\rightarrow$\textbf{#1}\par}
+\newcommand{\olabel}[1]{\label{option:#1}}
 %
 % some OSes
 %
@@ -169,18 +166,21 @@
 \newcommand{\win}{\textsc{Win32}\xspace}
 \newcommand{\freebsd}{\textsc{FreeBSD}\xspace}
 %
-% Some versions 
+% Some versions
 %
 \newcommand{\fpcversion}{0.99.12}
+
 %
 % PDF support
 %
-\newif\ifpdf
-\ifx\pdfoutput\undefined
-   \pdffalse
-\else
-   \pdfoutput=1
-   \pdftrue
-\fi
+\latex{%
+  \newif\ifpdf
+  \ifx\pdfoutput\undefined
+     \pdffalse
+  \else
+     \pdfoutput=1
+     \pdftrue
+  \fi
+}
 %
 % end of fpc.sty

+ 41 - 15
docs/internal.tex

@@ -16,28 +16,54 @@
 %   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. 
+%   Boston, MA 02111-1307, USA.
 %
 \documentclass{report}
-\usepackage{a4}
+%
+% Preamble
+%
+\usepackage{ifthen}
+\usepackage{xspace}
+\usepackage{a4dutch}
+\usepackage{makeidx}
 \usepackage{html}
-\makeindex
-\latex{\usepackage{multicol}}
-\latex{\usepackage{fpcman}}
-\latex{\usepackage{epsfig}}
+\usepackage{htmllist}
+\usepackage{fancyheadings}
+\usepackage{epsfig}
+\usepackage{multicol}
+\usepackage{fpc}
+\latex{%
+  \ifpdf
+  \usepackage[pdftex,bookmarks=true]{hyperref}
+  \pdfcompresslevel=9
+  \pdfpagewidth=210mm
+  \pdfpageheight=297mm
+  \pdfinfo{/Author(Michael Van Canneyt)
+           /Title(Compiler documentation)
+           /Subject(Free Pascal Compiler documentation)
+           /Keywords(Free Pascal, Compiler, Internals)
+           }
+  \fi
+}
+%
 \html{\input{fpc-html.tex}}
-\newcommand{\remark}[1]{\par$\rightarrow$\textbf{#1}\par}
-\newcommand{\olabel}[1]{\label{option:#1}}
-% We should change this to something better. See \seef etc.
-\newcommand{\seeo}[1]{See \ref{option:#1}}
+%
+% Settings
+%
+\pagestyle{fancy}
+\makeindex
+%
+% Start of document.
+%
 \begin{document}
 \title{Free Pascal :\\ Compiler documentation}
 \docdescription{Compiler documentation for \fpc, version \fpcversion}
 \docversion{1.0}
-\date{September 1998}
+\input{date.inc}
 \author{Micha\"el Van Canneyt\\Florian Kl\"ampfl}
 \maketitle
 \tableofcontents
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Introduction
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -128,7 +154,7 @@ for big symbol tables some hash technics are used. The implementation
 can be found in symtable.pas, object tsymtable.
 
 The symbol table module can't be associated with a stage of the compiler,
-each stage accesses it. 
+each stage accesses it.
 The scanner uses a symbol table to handle preprocessor symbols, the
 parser inserts declaration and the code generator uses the collected
 information about symbols and types to generate the code.
@@ -140,7 +166,7 @@ information about symbols and types to generate the code.
 Definitions are one of the most important data structures in \fpc.
 They are used to describe types, for example the type of a variable
 symbol is given by a definition and the result type
-of a expression is given as a definition. 
+of a expression is given as a definition.
 They have nothing to do with the definition of a procedure.
 Definitions are implemented as an object (in file \file{symtable.pas},
 \var{tdef} and its descendents). There are a lot of different
@@ -213,7 +239,7 @@ The register allocation is very hairy, so it gets
 an own chapter in this manual. Please be careful when changing things
 regarding the register allocation and test such changes intensive.
 
-Future versions will may implement another kind of register allocation 
+Future versions will may implement another kind of register allocation
 to make this part of the compiler more robust, see
 \ref{se:future_plans}. But the current
 system is less or more working and changing it would be a lot of
@@ -391,7 +417,7 @@ procedure test;
      l,i,j,k : longint;
 
   begin
-     l:=i;  // this forces the compiler to assign as much as       
+     l:=i;  // this forces the compiler to assign as much as
      j:=k;  // possible variables to registers
      // here you should insert your code
   end;

+ 0 - 0
docs/a4.sty → docs/old/a4.sty


+ 13 - 0
docs/fpc.perl → docs/old/fpc.perl

@@ -1,3 +1,4 @@
+#!/usr/bin/perl
 # FPC.PERL script. Accompagnies fpc.sty
 # by Michael Van Canneyt <[email protected]>
 # December 1996
@@ -21,6 +22,18 @@ local ($result) = '';
  $result ;
 }
 
+sub FPCListing{
+local ($name, $decl, $desc, $errors, $seealso) = @_ ;
+local ($result) = '';
+
+ $result  = "<H2>$name</H2>\n<P>\n" ;
+ $result .= "<H3>Declaration:</H3>\n<P>\n<TT>$decl</TT>\n<P>\n" ;
+ $result .= "<H3>Description:</H3>\n<P>\n$desc\n<P>\n" ;
+ $result .= "<H3>Errors:</H3>\n<P>\n$errors\n<P>\n" ;
+ $result .= "<H3>See Also:</H3>\n<P>\n$seealso\n<P>\n" ;
+ $result ;
+}
+
 sub do_cmd_procedure
 {
  $fpcresult  = "<H2>$_[0]</H2>\n<P>\n" ;

+ 0 - 0
docs/fpcman.sty → docs/old/fpcman.sty


+ 0 - 0
docs/html.sty → docs/old/html.sty


+ 0 - 0
docs/lstdelphi.sty → docs/old/lstdelphi.sty


+ 0 - 0
docs/lstfpc.sty → docs/old/lstfpc.sty


+ 0 - 0
docs/lsttp.sty → docs/old/lsttp.sty


Fișier diff suprimat deoarece este prea mare
+ 189 - 183
docs/prog.tex


Fișier diff suprimat deoarece este prea mare
+ 219 - 212
docs/ref.tex


+ 23 - 12
docs/units.tex

@@ -16,19 +16,24 @@
 %   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. 
-%
-\documentclass{report}
+%   Boston, MA 02111-1307, USA.
 %
 % This is just a main file. All units are described in separate files.
 %
+\documentclass{report}
+%
 % Preamble
 %
+\usepackage{ifthen}
+\usepackage{xspace}
 \usepackage{a4dutch}
 \usepackage{makeidx}
 \usepackage{html}
+\usepackage{htmllist}
+\usepackage{syntax}
 \usepackage{fancyheadings}
 \usepackage{fpc}
+\latex{\usepackage{multicol}}
 \latex{%
   \ifpdf
   \usepackage[pdftex,bookmarks=true]{hyperref}
@@ -38,13 +43,22 @@
   \pdfinfo{/Author(Michael Van Canneyt)
            /Title(Standard units Reference Guide)
            /Subject(Free Pascal Standard units reference guide)
-           /Keywords(Free Pascal, Units,RTL)
-  }
+           /Keywords(Free Pascal, Units, RTL)
+           }
   \fi
 }
 %
-% syntax style
+\html{\input{fpc-html.tex}}
+%
+% Settings
+%
+\pagestyle{fancy}
+\makeindex
 %
+% Syntax style
+%
+\usepackage{syntax}
+\input{syntax/diagram.tex}
 \latex{\usepackage{listings}\usepackage{lst017}\usepackage{lstdelphi}%
   \blankstringtrue
   \selectlisting{delphi}
@@ -52,12 +66,8 @@
   \keywordstyle{\bfseries}
   \prelisting{\sffamily\sloppy}
 }
-\html{\input{fpc-html.tex}}
-\pagestyle{fancy}
-\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
-\makeindex
 %
-% start of document.
+% Start of document.
 %
 \begin{document}
 \title{Free Pascal supplied units : \\ Reference guide.}
@@ -67,6 +77,7 @@
 \author{Micha\"el Van Canneyt\\ Florian Kl\"ampfl}
 \maketitle
 \tableofcontents
+\makeindex
 \newpage
 
 \section*{About this guide}
@@ -75,7 +86,7 @@ procedures as they are declared in the units that come standard with \fpc.
 
 Throughout this document, we will refer to functions, types and variables
 with \var{typewriter} font. Functions and procedures gave their own
-subsections, and for each function or procedure we have the following 
+subsections, and for each function or procedure we have the following
 topics:
 \begin{description}
 \item [Declaration] The exact declaration of the function.

Fișier diff suprimat deoarece este prea mare
+ 172 - 162
docs/user.tex


Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff