Template:Docbunto/doc
More actions
This is the documentation page for Docbunto. It contains usage information, categories, and other content not part of the original template page. | ||
|---|---|---|
| Main | Documentation | Usage |
Compared to the version on the dev wiki, this version:
- changes documentation output format to always produce valid HTML and allow CSS styling
- adds support for object types that link to other modules
- adds better support for block documentation comments
- fixes a few bugs
(Note: @export seems buggy in the version on the dev wiki, and may not be completely fixed in this version either.)
Documentation from the dev wiki:
Docbunto is an automatic documentation generator for Scribunto modules. The module is based on LuaDoc and LDoc. It produces documentation in the form of MediaWiki markup, using @tag-prefixed comments embedded in the source code of a Scribunto module. The taglet parser & doclet renderer Docbunto uses are also publicly exposed to other modules.
Docbunto code items are introduced by a block comment (--[[]]--), an inline comment with three hyphens (---), or an inline @tag comment. The module can use static code analysis to infer variable names, item privacy (local keyword), tables ({} constructor) and functions (function keyword). MediaWiki and Markdown formatting is supported.
Items are usually rendered in the order they are defined, if they are public items, or emulated classes extending the Lua primitives. There are many customisation options available to change Docbunto behaviour.
Documentation
Package items
docbunto.main(f)(function)Template entrypoint for Template:Docbunto.
- Parameter:
(table)
fScribunto frame object.
- Returns:
(string) Module documentation output.
docbunto.build([options])(function)Scribunto documentation generator entrypoint.
- Parameters:
(table;optional)
optionsConfiguration options.- Keys:
(string;optional)
options.fileModule page name (without namespace). Default: second-level subpage.(string;optional)
options.contentAn parameter used for debugging this module. Pass in a string containing source code to view the documentation it would generate.(boolean;optional)
options.allInclude local items in documentation.(boolean;optional)
options.boilerplateRemoval of boilerplate (license block comments).(string;optional)
options.captionInfobox image caption.(boolean;optional)
options.codeOnly document Docbunto code items - exclude article infobox and lede from rendered documentation. Permits article to be edited in VisualEditor.(boolean;optional)
options.colonFormat tags with a:suffix and without the@prefix. This bypasses the "doctag soup" some authors complain of.(string;optional)
options.imageInfobox image.(boolean;optional)
options.noluarefDon't link to the Lua reference manual for types.(boolean;optional)
options.plainDisable Markdown formatting in documentation.(string;optional)
options.prefacePreface text to insert between lede & item documentation, used to provide usage and code examples.(boolean;optional)
options.stripRemove table index in documentation.
docbunto.taglet([options])(function)
docbunto.doclet(data, [options])(function)
docbunto.tags(table)Token dictionary for Docbunto tags. Maps Docbunto tag names to tag tokens.
- Multi-line tags use the
'M'token. - Multi-line preformatted tags use the
'ML'token. - Identifier tags use the
'ID'token. - Single-line tags use the
'S'token. - Flags use the
'N'token. - Type tags use the
'T'token.
- Multi-line tags use the