mkdoc - Man Page

Source code documentation extractor/converter application

Synopsis

mkdoc --help

mkdoc --version

mkdoc --license

mkdoc input output ?--css cssfile?

Description

This document describes mkdoc, an application to extract documentation embedded in source code files, be they ".tcl", or other.

Command Line

mkdoc --help

The application prints a short help to standard output and exits.

mkdoc --version

The application prints its version number to standard output and exits.

mkdoc --license

The application prints its license to standard output and exits.

mkdoc input output ?--css cssfile?

The application reads the input file, extracts the embedded documentation, and writes it to the output file.

If the output file is not a ".md" file the extracted documentation is converted to HTML before being written.

When generating and writing HTML the default CSS stylesheet can be overridden by specifying the path to a custom stylesheet via option --css.

If the input file is a ".md" file it is expected to contain Markdown as-is, instead of Markdown embedded into code.

On the other side, when the file is considered code then the documentation is expected to be contained in all lines starting with the marker #'. For script languages like Tcl the # character of this marker means that the documentation is contained in the so-flagged comments. For other languages the marker and documentation may have to be embedded into multi-line comments.

Examples

    # Create HTML manual for a CPP file using a custom style sheet
    mkdoc sample.cpp sample.html --css manual.css

    # Extract the documentation from code as simple Markdown, ready to be processed
    # further, for example with pandoc, or similar
    mkdoc sample.cpp sample.md

    # Convert a Markdown file to HTML
    mkdoc sample.md sample.html

Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such to the author of this package. Please also report any ideas for enhancements you may have for either package and/or documentation.

Category

Text processing

Info

0.7.0 tcllib Source code documentation using Markdown