home | help
fpdoc(1)	    Free Pascal unit documentation generator		fpdoc(1)

NAME
     fpdoc - The FPC Pascal unit documentation generator.

SYNOPSIS
     fpdoc  --input=inputcommand  [--output=output]  [--format=fmt] [--descr=de-
     scriptionfile] [--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  gener-
	    ated  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 unde-
	    sirable 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  gener-
	    ated. 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 head-
	    ers 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 doc-
	    umentation 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 com-
	    mand-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  direc-
	    tory  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 syn-
	    tax 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 docu-
	    mentation. 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  direc-
	    tory.  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	informa-
	    tion 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 gener-
	    ate 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)

Free Pascal			  9 march 2002				fpdoc(1)

home | help