makeskel(1)
π NAME π
okay so bestie, welcome to makeskel β she's the FPC unit description file generator β¨ (that's makeskel(1) if you're being formal, which, slay, we love that for you).
πΈ SYNOPSIS πΈ
makeskel [--descr=filename] [--disable-arguments] [--disable-errors]
[--disable-function-results] [--disable-private] [--disable-protected]
[--disable-seealso] [--emit-class-separator] [--help] [--lang=language]
[--output=filename] [--update] --package=name --input=cmdline
like. that's a LOT of brackets but literally every single one of them matters, ok? π«Ά
β¨ Description β¨
makeskel scans a Free Pascal unit source file and generates a skeleton description file for it. periodt. π
She generates nodes for all identifiers found in the interface section of the unit, although β and this is the important part bestie β that behaviour can be adjusted with some options. no cap.
She can also update an existing XML file, and in that case she emits only nodes for identifiers for which no node exists yet. it's giving "only the missing pieces" energy π₯
π¦ Usage π¦
okay so the whole vibe: you can invoke makeskel with the input and package arguments as the only required arguments. literally just two things.
It should at least contain:
- the name of the unit file for which documentation should be generated
- the name of the package to which the unit belongs
and the output of makeskel will go to standard output by default. yes, she's that girl who just talks directly to your terminal. π
π Options π
makeskel has many options, most of them optional, defaults will be used in most cases. don't stress.
--descr=descfileβ this one must be used in conjunction with theupdateoption, iykyk. It specifies the name of a description file descfile which must be updated. β οΈ note that the file must contain valid XML, or the update will fail β no take-backs. This option can be specified more than once.--disable-argumentsβ if this is specified,makeskelwill not emit nodes for the arguments of functions and procedures. By default, documentation nodes are emitted for functions and procedures as well. so this is you being like "not today, arguments."--disable-errorsβ by default, each documentation node will contain an errors node as well (except for identifiers where this has no use, such as function arguments). If this option is specified, no errors node will be generated. π--disable-function-resultsβ by default, for functions, a result node will be generated, to describe the result of the function. If this option is specified, no function result node will be generated.--disable-privateβ by default, documentation nodes are also generated for private fields or methods of a class. if this option is specified, the generation of nodes for private fields or methods is skipped. π--disable-protectedβ by default, documentation nodes are also generated for protected fields or methods of a class. if this option is specified, the generation of nodes for protected fields or methods is skipped.--emit-class-separatorβ if this option is specified, a visible comment with the name of the class for which documentation nodes will follow is inserted between the nodes of two classes, making navigation easier. it's giving labelled sections, main character organisation energy β¨--helpβ emit a short help text and exit. short, sweet, iconic. π--input=cmdβ the input (source) file to process. Multiple input files can be specified. The command may contain valid compiler options; currently the-Fipath(search path) and-dmacro(define macro) options are recognized. that's it, those two, don't come for me. π«Ά--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.
--output=filenameβ this option tellsmakeskelwhere the output should go. If this option is not specified, the output is sent to standard output (the screen). π--package=packagenameβ this option is required. π₯ It specifies the name of the package. All nodes will be generated inside a node withnameattributepackagename.--updateβ turns on update mode. In this mode, the output is a file which contains only the missing nodes to complete the documentation of the input files. The existing nodes must be specified with thedescrargument.
β οΈ note that the output file may not be the same as the input (description) nodes; a separate file must be specified (or no file, in which case output goes to standard output).
π SEE ALSO π
go read those too bestie, they're part of the lore πβ¨
and that's the whole page, mwah π
β this little icon comes to you from the Free Pascal crew, version dated 11 November 2004, filed under makeskel(1). slay, go generate some skeleton docs. π
π¦ where this page comes from
- debian bookworm: fp-utils-3.2.2 3.2.2+dfsg-20 Β· GPL-2.0-or-later
- debian trixie: fp-utils-3.2.2 3.2.2+dfsg-46 Β· GPL-2.0-or-later
- ubuntu jammy: fp-utils-3.2.2 3.2.2+dfsg-9ubuntu1 Β· GPL-2.0-or-later
- ubuntu noble: fp-utils-3.2.2 3.2.2+dfsg-32 Β· GPL-2.0-or-later
- ubuntu questing: fp-utils-3.2.2 3.2.2+dfsg-46
- ubuntu resolute: fp-utils-3.2.2 3.2.2+dfsg-49 Β· GPL-2.0-or-later
- ubuntu stonking: fp-utils-3.2.2 3.2.2+dfsg-51 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms