fpdoc
Section: Free Pascal unit documentation generator (1)
Updated: 9 march 2002
Page Index
NAME
fpdoc - The FPC Pascal unit documentation generator.
SYNOPSIS
fpdoc --input=inputcommand [--output=output] [--format=fmt]
[--descr=descriptionfile] [--package=packagename] [options]
Description
fpdoc
scans a Free Pascal unit source file and generates documentation for it.
The documentation can be in various formats (currently HTML and LaTeX)
It can read various description files which contain the description for the
various symbols found in the unit file.
Usage
You can invoke
fpdoc
with as the only required argument the 'input' and 'package' arguments.
It should at least contain the name of the unit file for which
documentation should be generated and the name of the package to which the
unit belongs.
Options
fpdoc
has several options, most of them optional, defaults will be used in most
cases.
- --content
-
This option tells
fpdoc
to generate a content file. A content file contains a list of all the
possible anchors (labels) in the generated documentation file, and can be
used to create cross-links in documentation for different units, using the
--import
option.
- --cputarget=value
-
This option tells
fpdoc
for which CPU to generate documentation. This simply defines the appropriate CPU macros.
- --descr=descfile
-
This option specifies the name of a description file
descfile
that contains the actual documentation for the unit.
This option can be given several times, for several description files.
- --descr-dir=dir
-
This option specifies the name of a directory with XML description files, named
dir
This option can be given several times, for several description directories.
This option is equivalent to specifying all files in the directory with the --descr option.
- --dont-trim
-
This option tells fpdoc not to trim whitespace in the XML files.
By default, whitespace is trimmed from the input, which can have undesirable side-effects
in for instance PRE tags.
- --dry-run
-
This option tells
fpdoc
not to generate any output, but just parse all input. This can be used with the verbose option
to check what errors remain in the documentation, or what is still missing.
- --format=fmt
-
Specifies the format
fmt
in which the documentation will be generated. Currenly,
the following formats are known:
-
- chm
-
CHM with 8.3 conforming filenames, for windows mostly.
- dxml
-
Delphi compatible XML output.
- htm
-
HTML with 8.3 conforming filenames.
- html
-
HTML with long filenames.
- ipf
-
IPF output (OS/2 format, can be used with docview from fpGUI).
- xhtml
-
XHTML with long filesnames.
- latex
-
LaTex, which uses the fpc.sty style used by the Free Pascal documentation.
- man
-
man page output (unix manual pages, one page per identifier).
- rtf
-
RTF output.
- txt
-
Plain text output.
- xml-struct
-
Structured XML.
- --help
-
Show a command-line option summary.
- --hide-protected
-
By default, the documentation will include descriptions and listings of
protected fields and methods in classes or objects. This option changes this
behaviour; if it is specified, no documentation will be generated for these
methods. Note that public methods or properties that refer to these
protected method will then have a dangling (i.e. unavailable) link.
- --html-search=link
-
Adds an entry for an HTML search page at location
link
in the headers of the generated HTML pages. There is no search page
provided, this should be made and provided by the user.
- --import=impfile
-
imports a content file
impfile
from another documentation set. This can be used to
resolve references to elements within this other documentation file;
- --input=cmd
-
This option tells
fpdoc
what input file should be used. The argument
cmd
can be just a filename, but can
also be a complete compiler command-line with options that concern the
scanning of the pascal source: defines, include files, syntax options,
as they would be specified to the free pascal compiler when compiling
the file. If a complete command is used, then it should be enclosed in
single or double quotes, so the shell will not break them in parts.
It is possible to specify multiple input commands; they will be treated one
by one, and documentation will be generated for each of them.
- --input-dir=dir
-
This option tells
fpdoc
to add all .pas and .pp files in the directory named
cmd
as input files to the documenter. This is equivalend to specifying all files in the directory with the
--input
command.
- --lang=language
-
Sets the language for the output file. This will mainly set the strings used
for the headers in various parts of the documentation files (by default
they're in english). Currently, valid options are
-
- de
-
German.
- fr
-
French.
- nl
-
Dutch.
- --latex-extension=ext
-
Sets the extension to use for the LaTeX file to
ext
the default is
.tex
(with . (dot) included).
- --latex-highlight
-
Switches on an internal latex syntax highlighter. This is not yet
implemented. By default, syntax highlighting is provided by the syntax
package that comes with fpc.
- --mo-dir=dir
-
This option tells
fpdoc
where to look for the translation files that can be used to internationalize fpdoc's output.
- --ostarget=value
-
This option tells
fpdoc
for which operating system to generate documentation. This simply defines the appropriate operating system macros.
- --output=name
-
This option tells
fpdoc
where the output file should be generated. How this option is interpreted
depends on the format that is used. For latex,
name
is interpreted as the
filename for the tex file. For all other formats,
name
is interpreted as
the directory where all documentation files will be written. The directory
will be created if it does not yet exist. Standard this equals the package
name.
- --package=packagename
-
Specifies the package name. All units will be documented as part of
packagename
, which is also the default output filename or directory. Only documentation
nodes inside a package node with this name will be considered when
documenting.
- --parse-impl
-
(Experimental) try to parse the implementation of a unit too, this can be used for syntax checking.
- --project=file
-
This option tells
fpdoc
to read all options from a project file. This is an XML file, please see the documentation
for more information about the format for this file.
- --show-private
-
By default, no documentation is generated for private methods or fields.
This option causes
fpdoc
to generate documentation for these methods as well.
- --verbose
-
By default,
fpdoc
is sparse with output. This tells fpdoc to generate some more information about what it is doing.
- --warn-no-node
-
If this option is specified,
fpdoc
will emit a warning if it does not find a description node for an identifier
it is documenting.
- --write-project=file
-
If this option is specified,
fpdoc
will write a fpdoc project file (to the specified file name) that corresponds
to the command-line options given.
SEE ALSO
-
ppc386(1)
latex(1)
makeskel(1)