fpdoc - The FPC Pascal unit documentation generator.
fpdoc --input=inputcommand [--output=output] [--format=fmt]
[--descr=descriptionfile] [--show-private] [--hide-protected]
[--lang=language] [--content=contentfile] [--import=importfile]
[--package=packagename] [--html-search=searchpage] [--ostarget=target]
[--cpu-target=target] [--latex-extension=ext] [--latex-highlight]
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.
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.
fpdoc has several options, most of them optional, defaults will be used
in most cases.
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
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
Specifies the format fmt in which the documentation will be
generated. Currenly, the following formats are known:
htm HTML with 8.3 conforming filenames.
html HTML with long filenames.
xhtml XHTML with long filesnames.
latex LaTex, which uses the fpc.sty style used by the Free
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.
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.
imports a content file impfile from another documentation set.
This can be used to resolve references to elements within this
other documentation file;
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.
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
Sets the extension to use for the LaTeX file to ext the default
is .tex (with . (dot) included).
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.
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.
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.
By default, no documentation is generated for private methods or
fields. This option causes fpdoc to generate documentation for
these methods as well.
If this option is specified, fpdoc will emit a warning if it
does not find a description node for an identifier it is
ppc386(1) latex(1) makeskel(1)