Comparison of documentation generators

(Redirected from TwinText)

Template:Short description

The following tables compare general and technical information for a number of documentation generators. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs. Note that many of the generators listed are no longer maintained.

General informationEdit

Basic general information about the generators, including: creator or company, license, and price.

Name Creator Input format Languages (alphabet order) OS support First public release date Latest stable version Software license
Ddoc Walter Bright Text D Windows, OS X, Linux and BSD 2005/09/19 DMD 2.078.3 Template:Free
docToolchain Ralph D. Müller Text Java Windows, OS X, Linux and BSD 2018/08/31 v3.4.2 Template:Free
Document! X Innovasys Text, Binary C++/CLI only, C#, IDL, Java, VB, VBScript, PL/SQL Windows only 1998 2014.1 Template:Nonfree
Doxygen Dimitri van Heesch Text C/C++, C#, D, IDL, Fortran, Java, PHP, Python Any 1997/10/26 1.13.2 Template:Free
Epydoc Edward Loper Text Python Any 2002/01/— 3.0 (2008) Template:Free
fpdoc (Free Pascal Documentation Generator) Sebastian Guenther and Free Pascal Core Text (Object)Pascal/Delphi FPC tier 1 targets 2005 3.2.2 Template:Free reusable parts are GPL with static linking exception
Haddock Simon Marlow Text Haskell Any 2002 2.15.0 (2014) Template:Free
HeaderDoc Apple Inc. Text AppleScript, Bash, Csh, C, C++, Delphi, IDL, Java, JavaScript, MIG, Pascal, Perl, PHP, Python, Ruby, Tcl Any Unix-like 2000/09/— 8.9.28 (2013) Template:Free
Imagix 4D Imagix Corp. Text C, C++, Java Windows, Linux, Unix 1995 7.3 Template:Nonfree
Javadoc Sun Microsystems Text Java Any 1995 1.6 Template:Free
JSDoc Michael Mathews Text JavaScript Any 2001/07/— 1.10.2 Template:Free
JsDoc Toolkit Michael Mathews Text JavaScript Any 2007? 2.0.0 Template:Free
mkd Jean-Paul Louyot Text Any with comments Unix, Linux, Windows 1989 2015 Template:Free
MkDocs Tom Christie Text Python Any 2014/10/29 1.5.3 Template:Free
Natural Docs Greg Valure Text Any with comments Any 2003/05/26 2.0.2 Template:Free
NDoc Jason Diamond, Jean-Claude Manoli, Kral Ferch Binary C# Windows only 2003/07/27 1.3.1 Template:Free
pdoc Andrew Gallant Text Python Any 2013 1.0.1 (2021) Template:Free
perldoc Larry Wall Text Perl Any 1994 5.16.3 Template:Free
phpDocumentor Joshua Eichorn Text PHP Any 2000 3.0.0 Template:Free
pydoc citation CitationClass=web

}}</ref>

Text Python Any 2000 in Python core Template:Free
RDoc Dave Thomas Text C, C++, Ruby Any 2001/12/14 in Ruby core Template:Free
ROBODoc Frans Slothouber Text Any with comments Any 1995/01/19 4.99.36 (2015) Template:Free
Sandcastle Microsoft Text .NET Windows only 2008/05/— 2.4.10520 (2016) Template:Free
Sphinx Georg Brandl Text Ada, C, C++, Chapel, CMake, Fortran, GraphQL, JavaScript, Matlab, PHP, Python, reStructuredText, Ruby, Rust, VB Any 2008/03/21 8.2.1 Template:Free
Visual Expert Novalys Text, Binary C#, PL/SQL, Transact-SQL, PowerBuilder Windows only 1995 2017 Template:Nonfree
VSdocman Helixoft Text VB, VBScript, C# Windows only 2003 Oct 2 9.0 Template:Nonfree
YARD Loren Segal Text Ruby Any 2007/02/24 0.7.3 Template:Free
Name Creator Input format Languages (alphabet order) OS support First public release date Latest stable version Software license

Supported formatsEdit

The output formats the generators can write.

Generator name HTML CHM RTF PDF LaTeX PostScript man pages DocBook XML EPUB
Ddoc Template:Yes Template:YesTemplate:Efn Template:No Template:YesTemplate:Efn Template:YesTemplate:Efn Template:YesTemplate:Efn Template:YesTemplate:Efn Template:No Template:YesTemplate:Efn Template:No
docToolchain Template:Yes Template:No Template:No Template:Yes Template:No Template:No Template:No Template:Yes Template:No Template:Yes
Document! X Template:Yes Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
Epydoc Template:Yes Template:No Template:No Template:Yes IndirectlyTemplate:Efn IndirectlyTemplate:Efn Template:No Template:No Template:No Template:No
fpdoc Template:Yes Native Template:Yes IndirectlyTemplate:Efn IndirectlyTemplate:Efn Template:Yes Template:No Template:No Template:No Template:No
Haddock Template:Yes Template:Yes Template:No Template:No Template:No Template:No Template:No Partial Template:No Template:No
HeaderDoc Template:Yes Template:No Template:No Template:No Template:No Template:No Template:Yes Template:No Template:Yes Template:No
Imagix 4D Template:Yes Template:No Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No
Javadoc Template:Yes IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn IndirectlyTemplate:Efn Template:No
JSDoc Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
JsDoc Toolkit Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:Yes+JSON Template:No
MkDocs Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
Natural Docs Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
NDoc Template:Yes Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
pdoc Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
phpDocumentor Template:Yes Template:Yes (1.x only) Template:No Template:Yes (1.x only) Template:No Template:No Template:No Template:Yes (1.x only) Template:Yes (1.x only) Template:No
pydoc Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
RDoc Template:Yes Template:YesTemplate:Efn Template:No Template:No Template:No Template:No IndirectlyTemplate:Efn Template:No Template:YesTemplate:Efn Template:No
ROBODoc Template:Yes Indirectly Template:Yes IndirectlyTemplate:Efn Template:Yes IndirectlyTemplate:Efn Template:Yes Template:Yes Template:No Template:No
Sandcastle Template:Yes Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
Sphinx Template:Yes Template:Yes Template:No IndirectlyTemplate:Efn Template:Yes Template:No Template:Yes Template:No Template:Yes Template:Yes
Visual Expert Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
VSdocman Template:Yes Template:Yes Template:No Template:Yes Template:No Template:No Template:No Template:No Template:Yes Template:No
YARD Template:Yes Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
Generator name HTML CHM RTF PDF LaTeX PostScript man pages DocBook XML EPUB

Other featuresEdit

possibility of extended customization generated diagrams highlighting and linking of generated doc parameter types extracted
Ddoc with macros
docToolchain customizable themes, custom tasks many diagram plugins (plantUML, mermaid, ...) automatic and manual references, table of contents, bibliography, ...
Document! X customizable HTML based templates, custom comment tags linked graphical object relationship diagrams internal links and links to .NET framework documentation types extracted and linked
Doxygen with XSLT caller and callee graphs, dependency graphs, inheritance diagrams, collaboration diagrams
Epydoc
Haddock Template:Yes Template:Yes
HeaderDoc Custom headers, footers, code coloring, and other CSS styles in individual pages. Project-wide TOC is generated from a user-defined template. Configurable syntax highlighting/coloring with automatic linking to symbols in declaration, ability to manually link to symbols in discussion, etc. Provides warnings if tagged parameters do not match code, parsed parameters included in XML output and Doxygen-style tagfile (-D flag in 8.7). Partial C preprocessor support with -p flag. Support for #if/#ifdef control over documentation inclusion using the -D and -U command-line flags.
Imagix 4D customizable through style sheets and CSS linked hierarchy and dependency graphs for function calls, variable sets and reads, class inheritance and interface, and file includes and interface, intra-function flow charts fully cross-linked project-wide, including all hierarchy and dependency graphs, metrics tables, source code snippets, and source files full semantic analysis of source code, including parameter types, conditional compilation directives, macro expansions
Javadoc
JSDoc Template:Yes
JsDoc Toolkit Template:Yes
mkd Customisable for all type of comments 'as-is' in comments all general documentation; references, manual, organigrams, ... Including the binary codes included in the comments. all coded comments
MkDocs
Natural Docs
NDoc
perldoc Extend the generator classes through Perl programming. Only linking
pdoc overridable Jinja2 templates source code syntax highlighting, automatic cross-linking to symbol declarations Template:Yes
phpDocumentor Smarty-based templates (1.x), Twig-based templates (2+) class inheritance diagrams cross reference to generated documentation, and to php.net function reference Template:Yes
pydoc
RDoc
ROBODoc
Sphinx Customizable themes (10 first-party); Jinja templating; Python plugins class inheritance diagrams, graphviz, third party (e.g. using aafigure, actdiag, Google Chart, gnuplot, mermaid) Automatic cross-referencing (including between projects), Index; Table of Contents, Syntax highlighting with Pygments custom objects (such as functions and classes)
Visual Expert documentation content and styles customizable Class inheritance, call trees, dependencies (impact analysis) internal links between classes, methods, variables, tables, columns... all types extracted
VSdocman full customization for all output formats, templates for MSDN-like output, custom XML comment tags linked graphical class diagrams, class inheritance tree internal links and links to .NET framework documentation types extracted and linked
YARD customizable Ruby templates class diagrams with extra tool internal classes/modules cross-referenced and Ruby source highlighted

See alsoEdit

NotesEdit

Template:Notelist

ReferencesEdit

Template:Reflist