|
1 | 1 | :doctitle: Advanced Features |
| 2 | +:sectnums: |
| 3 | +:toc: left |
| 4 | +:toclevels: 4 |
2 | 5 |
|
3 | | -Summary of the most important non-obvious PasDoc features: |
| 6 | +Some important non-obvious PasDoc features: |
| 7 | + |
| 8 | +== Input |
| 9 | + |
| 10 | +* link:AutoAbstractOption[--auto-abstract] command-line option allows you to automatically treat the 1st sentence of the description as an abstract. |
| 11 | + |
| 12 | +* You can write entire pages using pasdoc syntax, with all supported link:SupportedTags[@tags]. This way you can use pasdoc like a simple document creation tool. See the link:IntroductionAndConclusion[Introduction and conclusion] documentation. |
| 13 | + |
| 14 | +* By default documentation is read from the source code comments. But you can also write it in separate external files: see the link:ReadDescriptionFromFile[--description] command-line option. |
| 15 | + |
| 16 | +* By default we consider only comments in the `interface` section of the unit. But you can enable parsing also the `implementation` sections, and using comments from it, using the link:ImplementationCommentsOption[--implementation-comments] option. |
| 17 | + |
| 18 | +* By default every comment before an identifier is treated as a documentation. But you can limit this with arbitrary link:CommentMarker[comment markers]. |
| 19 | + |
| 20 | +* link:AutoLinkOption[--auto-link] command-line option allows you to avoid writing so many `@link` tags. Identifiers will be automatically turned into links. |
| 21 | + |
| 22 | +* link:MarkdownOption[Markdown support for emphasis, lists, code blocks etc.] |
| 23 | + |
| 24 | +== Output |
| 25 | + |
| 26 | +* Our HTML output has a https://github.com/pasdoc/pasdoc/discussions/230[modern, mobile-friendly design based on Bootstrap]. You can customize it using link:CssOption[--css or --css-based-on-bootstrap] command-line options. You can also add your own HTML code to the output using link:HtmlHeadBodyBeginEndOptions[--html-head, --html-body-begin and --html-body-end] command-line options. |
| 27 | + |
| 28 | +* The documentation of each class can also include link:InheritedMembersOption[inherited members]. |
| 29 | + |
| 30 | +* The documentation of each class can have toggable (using checkboxes in HTML) visibility e.g. for protected members. See link:VisibleMembers[--visible-members] command-line option. |
| 31 | + |
| 32 | +* The documentation can point to the source code (file, line number) where given item is declared. It can even link to the online repository (e.g. GitHub) which is a great way to link people from your docs to your code. See the link:SourcePosition[--show-source-position, --source-url-pattern, --source-root] command-line options. |
4 | 33 |
|
5 | | -* The documentation can be written in an external files (see the link:ReadDescriptionFromFile[--description] command-line option), not only in the source code. |
6 | | -* The documentation comments in the source code may be in the `interface` or (if you use link:ImplementationCommentsOption[--implementation-comments] option) `implementation` section of the unit. |
7 | | -* The documentation can be localized to many languages, see the link:OutputLanguage[--language] command-line option. |
8 | | -* Support for arbitrary (even optional) link:CommentMarker[comment markers]. |
9 | | -* You can write entire pages using pasdoc syntax (like @-tags, see link:WritingDocumentation[WritingDocumentation]). This way you can use pasdoc like a simple document creation tool. See the link:IntroductionAndConclusion[IntroductionAndConclusion] documentation. |
10 | 34 | * You can easily add a search box to your documentation, just pass link:UseTipueSearchOption[--use-tipue-search] command-line option. |
| 35 | + |
| 36 | +* The documentation can be localized to many languages, see the link:OutputLanguage[--language] command-line option. |
| 37 | + |
11 | 38 | * link:GraphVizSupport[GraphVizSupport] allows PasDoc to easily incorporate classes inheritance and unit dependency graphs in the documentation. |
12 | | -* link:AutoLinkOption[--auto-link] command-line option allows you to avoid writing @link tags, identifiers will be automatically turned into links. |
13 | | -* link:AutoAbstractOption[--auto-abstract] command-line option allows you to automatically treat the 1st sentence of the description as an abstract. |
| 39 | + |
14 | 40 | * link:SpellChecking[Spell checking]. |
| 41 | + |
| 42 | +== More |
| 43 | + |
15 | 44 | * link:CacheOption[Caching for faster generation of documentation]. |
16 | | -* link:MarkdownOption[Markdown support for emphasis, lists, code blocks etc.] |
17 | 45 |
|
18 | | -If you want to compare link:index[PasDoc] to FpDoc (another open-source Pascal documentation tool), see link:PasDocFpDocComparison[PasDocFpDocComparison] . |
| 46 | +* See also link:PasDocFpDocComparison[comparison of PasDoc with FpDoc (another open-source Pascal documentation tool)]. |
0 commit comments