1fpdoc(1) Free Pascal unit documentation generator fpdoc(1)
2
3
4
6 fpdoc - The FPC Pascal unit documentation generator.
7
8
10 fpdoc --input=inputcommand [--output=output] [--format=fmt]
11 [--descr=descriptionfile] [--package=packagename] [options]
12
13
15 fpdoc scans a Free Pascal unit source file and generates documentation
16 for it. The documentation can be in various formats (currently HTML
17 and LaTeX) It can read various description files which contain the
18 description for the various symbols found in the unit file.
19
20
22 You can invoke fpdoc with as the only required argument the 'input' and
23 'package' arguments. It should at least contain the name of the unit
24 file for which documentation should be generated and the name of the
25 package to which the unit belongs.
26
27
29 fpdoc has several options, most of them optional, defaults will be used
30 in most cases.
31
32
33 --content
34 This option tells fpdoc to generate a content file. A content
35 file contains a list of all the possible anchors (labels) in the
36 generated documentation file, and can be used to create cross-
37 links in documentation for different units, using the --import
38 option.
39
40 --cputarget=value
41 This option tells fpdoc for which CPU to generate documentation.
42 This simply defines the appropriate CPU macros.
43
44 --descr=descfile
45 This option specifies the name of a description file descfile
46 that contains the actual documentation for the unit. This
47 option can be given several times, for several description
48 files.
49
50 --descr-dir=dir
51 This option specifies the name of a directory with XML descrip‐
52 tion files, named dir This option can be given several times,
53 for several description directories. This option is equivalent
54 to specifying all files in the directory with the --descr
55 option.
56
57 --dont-trim
58 This option tells fpdoc not to trim whitespace in the XML files.
59 By default, whitespace is trimmed from the input, which can have
60 undesirable side-effects in for instance PRE tags.
61
62 --dry-run
63 This option tells fpdoc not to generate any output, but just
64 parse all input. This can be used with the verbose option to
65 check what errors remain in the documentation, or what is still
66 missing.
67
68 --format=fmt
69 Specifies the format fmt in which the documentation will be gen‐
70 erated. Currenly, the following formats are known:
71
72 chm CHM with 8.3 conforming filenames, for windows mostly.
73
74 dxml Delphi compatible XML output.
75
76 htm HTML with 8.3 conforming filenames.
77
78 html HTML with long filenames.
79
80 ipf IPF output (OS/2 format, can be used with docview from
81 fpGUI).
82
83 xhtml XHTML with long filesnames.
84
85 latex LaTex, which uses the fpc.sty style used by the Free Pas‐
86 cal documentation.
87
88 man man page output (unix manual pages, one page per identi‐
89 fier).
90
91 rtf RTF output.
92
93 txt Plain text output.
94
95 xml-struct
96 Structured XML.
97
98 --help Show a command-line option summary.
99
100 --hide-protected
101 By default, the documentation will include descriptions and
102 listings of protected fields and methods in classes or objects.
103 This option changes this behaviour; if it is specified, no docu‐
104 mentation will be generated for these methods. Note that public
105 methods or properties that refer to these protected method will
106 then have a dangling (i.e. unavailable) link.
107
108 --html-search=link
109 Adds an entry for an HTML search page at location link in the
110 headers of the generated HTML pages. There is no search page
111 provided, this should be made and provided by the user.
112
113 --import=impfile
114 imports a content file impfile from another documentation set.
115 This can be used to resolve references to elements within this
116 other documentation file;
117
118 --input=cmd
119 This option tells fpdoc what input file should be used. The
120 argument cmd can be just a filename, but can also be a complete
121 compiler command-line with options that concern the scanning of
122 the pascal source: defines, include files, syntax options, as
123 they would be specified to the free pascal compiler when compil‐
124 ing the file. If a complete command is used, then it should be
125 enclosed in single or double quotes, so the shell will not break
126 them in parts. It is possible to specify multiple input com‐
127 mands; they will be treated one by one, and documentation will
128 be generated for each of them.
129
130 --input-dir=dir
131 This option tells fpdoc to add all .pas and .pp files in the
132 directory named cmd as input files to the documenter. This is
133 equivalend to specifying all files in the directory with the
134 --input command.
135
136 --lang=language
137 Sets the language for the output file. This will mainly set the
138 strings used for the headers in various parts of the documenta‐
139 tion files (by default they're in english). Currently, valid
140 options are
141
142 de German.
143
144 fr French.
145
146 nl Dutch.
147
148 --latex-extension=ext
149 Sets the extension to use for the LaTeX file to ext the default
150 is .tex (with . (dot) included).
151
152 --latex-highlight
153 Switches on an internal latex syntax highlighter. This is not
154 yet implemented. By default, syntax highlighting is provided by
155 the syntax package that comes with fpc.
156
157 --mo-dir=dir
158 This option tells fpdoc where to look for the translation files
159 that can be used to internationalize fpdoc's output.
160
161 --ostarget=value
162 This option tells fpdoc for which operating system to generate
163 documentation. This simply defines the appropriate operating
164 system macros.
165
166 --output=name
167 This option tells fpdoc where the output file should be gener‐
168 ated. How this option is interpreted depends on the format that
169 is used. For latex, name is interpreted as the filename for the
170 tex file. For all other formats, name is interpreted as the
171 directory where all documentation files will be written. The
172 directory will be created if it does not yet exist. Standard
173 this equals the package name.
174
175 --package=packagename
176 Specifies the package name. All units will be documented as part
177 of packagename , which is also the default output filename or
178 directory. Only documentation nodes inside a package node with
179 this name will be considered when documenting.
180
181 --parse-impl
182 (Experimental) try to parse the implementation of a unit too,
183 this can be used for syntax checking.
184
185 --project=file
186 This option tells fpdoc to read all options from a project file.
187 This is an XML file, please see the documentation for more
188 information about the format for this file.
189
190 --show-private
191 By default, no documentation is generated for private methods or
192 fields. This option causes fpdoc to generate documentation for
193 these methods as well.
194
195 --verbose
196 By default, fpdoc is sparse with output. This tells fpdoc to
197 generate some more information about what it is doing.
198
199 --warn-no-node
200 If this option is specified, fpdoc will emit a warning if it
201 does not find a description node for an identifier it is docu‐
202 menting.
203
204 --write-project=file
205 If this option is specified, fpdoc will write a fpdoc project
206 file (to the specified file name) that corresponds to the com‐
207 mand-line options given.
208
209
211 ppc386(1) latex(1) makeskel(1)
212
213
214
215Free Pascal 9 march 2002 fpdoc(1)