Doxygen

1.8.12 10 Nov 2016

Generate documentation from source code.

0

Developer website: Dimitri van Heesch

Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular programming languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl, and to some extent D.

Doxygen can help you in three ways:

  1. It can generate an on-line documentation browser (in HTML) and/or an off-line reference manual (in $mbox{LaTeX}$) from a set of documented source files. There is also support for generating output in RTF (MS-Word), PostScript, hyperlinked PDF, compressed HTML, and Unix man pages. The documentation is extracted directly from the sources, which makes it much easier to keep the documentation consistent with the source code.
  2. You can configure doxygen to extract the code structure from undocumented source files. This is very useful to quickly find your way in large source distributions. Doxygen can also visualize the relations between the various elements by means of include dependency graphs, inheritance diagrams, and collaboration diagrams, which are all generated automatically.
  3. You can also use doxygen for creating normal documentation (as I did for the doxygen user manual and web-site).

Note: While the software is classified as free, it is actually donationware. Please consider making a donation to help support development.

What's New

Version 1.8.12:
  • Bug 306025 - Fix missing title in non-page docanchors from tag files [view]
  • Bug 504305 - FILTER_PATTERNS won't take command with arguments [view]
  • Bug 675165 - Uses instead of html tag for SVG images [view]
  • Bug 700381 - error state 21 with fortran code (fixed format) [view]
  • Bug 710611 - Missing Page References in the Index Chapters of the LaTex/PDF output [view]
  • Bug 722654 - Inherited member of template class issues warning and is not documented [view]
  • Bug 742452 - Fortran: attributes after a blank line are ignored / Bug 625602 - FORTRAN: comment in subroutine argument list [view]
  • Bug 749924 - Doxygen handles comments in Objective-C code blocks incorrectly. [view]
  • Bug 750930 - Representation of arrows [view]
  • Bug 751416 - Markdown: > escaped within backticks [view]
  • Bug 751984 - Use UTC timezone when displaying QDateTimes parsed from SOURCE_DATE_EPOCH [view]
  • Bug 752712 - last entry missing in a @name group of typedefs [view]
  • Bug 753608 - Link of typedef within namespace on group pages missing [view]
  • Bug 757509 - __init__.py causes to ignore some inheritance [view]
  • Bug 760086 - Figure title needs to be on separate line in order for it to work [view]
  • Bug 760836 - Phantom variables/functions in XML, created from non-code files [view]
  • Bug 760970 - CASE_SENSE_NAMES ignored [view]
  • Bug 761007 - Spaces between the closing bracket of the typename and the opening bracket of the parameter list cause detection issues. [view]
  • Bug 761139 - python unicode docstrings are ignored [view] , [view]
  • Bug 761471 - Do not allow ligatures in log output [view]
  • Bug 762670 - References for one function can inherit References from subsequent non documented function [view]
  • Bug 762934 - External search does not properly escape user supplied data, resulting in vulnerability [view]
  • Bug 762982 - regression, Unescaped percent sign in doxygen output [view]
  • Bug 763104 - hyperref link label drop underscores [view]
  • Bug 763105 - Directory list is not generated in HTML output [view]
  • Bug 763471 - imported section anchors are copied in project tagfile [view]
  • Bug 763720 - Exclusion of a new line at the end of source code file causing nesting of HTML code for function documentation [view] , [view]
  • Bug 764359 - Recent File list allows only 2 entries [view] , [view]
  • Bug 764515 - doxygen crashes no resolved [view]
  • Bug 764656 - generated xml has errors [view]
  • Bug 764711 - quick link index in alphabetical class list in classes.html doesn't work [view]
  • Bug 765001 - Bad character escaping scheme in HTML anchor generation. [view]
  • Bug 765002 - `@addindex`entries fail to link to the exact location in Compiled HTML Help. [view]
  • Bug 765070 - Java: final keyword on a parameter brakes docs inherinance [view]
  • Bug 765692 - Using `@page` to add title to Markdown file generates surplus empty page. [view]
  • Bug 766059 - DOT_PATH not expanded [view]
  • Bug 766069 - Files with incorrect extensions (.doc) are picked up by doxygen [view]
  • Bug 766464 - python: missing cross-links in sources (option SOURCE_BROWSER = YES) [view]
  • Bug 766698 - VHDL: missing last sign in html documentation of constant declaration [view]
  • Bug 766787 - HTML Tables with 10+ columns are broken for LaTeX based output [view]
  • Bug 766809 - Enumerations heading present but none listed [view]
  • Bug 767171 - ALIASES stop working after verbatim with formula and /** */ [view]
  • Bug 768830 - Doxygen segfault (return code 134) when parsing a c++ enum class contained in a class [view]
  • Bug 768954 - Segmentation fault when processing md containing only header [view]
  • Bug 769018 - Invalid XHTML if the directives brief and exception are following immediately [view]
  • Bug 769028 - Can't scroll using finger documentation in Chrome browser on Android OS [view]
  • Bug 769736 - doxygen generates incorrect documentation for C enum in latex [view]
  • Bug 770660 - Code snippet always shows line numbers from 1 [view]
  • Bug 770747 - Broken links in HTML output with SHOW_FILES=NO [view]
  • Add caption in verbatim blocks. [view]
  • Add parameter in/out specifiers to output. [view]
  • Add section title to output. [view]
  • Added .codedocs file [view]
  • Added an option to add "anonymous" headings to the table of contents (currently Markdown only). [view]
  • Added generating template files and reading templates from disk if present [view]
  • Added missing free [view]
  • Added support for encoding tag to the template engine used for HTML help indices [view]
  • Adding compilation options for flex/lex and bison/yacc [view]
  • Adding partial htmlhelp support to template system [view]
  • Adjusted Doxygen to doxygen in running text in the manual [view]
  • Allow verbatim code block to be placed on the output. [view]
  • Also map .f95, .f03 and .f08 file types to Fortran [view]
  • Another possible fix [view]
  • Applied responsive design to menu bar using smartmenus [view]
  • Assertion failure generation documentation [view]
  • Bug fix for rendering the VHDL Hierarchy (thanks to a patch by Martin Kreis) [view]
  • Building doxyapp fails after update of config methodology to improve performance [view]
  • Bump version for GIT repo [view]
  • CMAKE: Fix building on Windows with VS 2015 [view]
  • Changed configuration mechanism to directly access options in order to improve performance [view]
  • Code with "extension" unparsed shows line numbers [view]
  • Color code word OPERATOR and ASSIGNMENT as keyword in FORTRAN code [view]
  • Color code word RESULT as keyword in FORTRAN code [view]
  • Determination of end of parameter list [view]
  • Disable selecting line number [view]
  • Disabled debug prints [view]
  • Documentation for extensions .f95, .f03 and .f08 [view]
  • Doxygen fails to copy logo image to LaTex output dir [view]
  • FORTRAN determination string in preprocessing [view]
  • Feature: Translations for german language (changes since 1.8.4) [view]
  • Fix STRIP_FROM_PATH when running from drive root [view]
  • Fix Windows build instructions. [view]
  • Fix documentation typos [view]
  • Fix for HTML output when using server side search and the the new menu bar [view]
  • Fix for changed references due to different removeRedudantWhiteSpace() implementation [view]
  • Fix for empty file name [view]
  • Fix for error in travis.yml [view]
  • Fix issue escaping backslash inside markdown style code span [view]
  • Fix linker flags for building with clang on Windows [view]
  • Fix order of member initilaization [view]
  • Fix return-type warnings with -DNDEBUG [view]
  • Fix search box rendering in HTML when menu bar is disabled [view]
  • Fix uppercase letters B-Z being unnecessarily escaped in index HTML anchors. [view]
  • Fixed for index.hhp output when using template engine [view]
  • Fixed issue escaping ndashes (--) and mdashes (---) [view]
  • Fixed problem with -w command when no Doxyfile was present and specified [view]
  • Fixed two regressions found during extensive testing [view]
  • Fixed typos. [view]
  • Fixed wrong

    nesting issue for call/caller graphs [view]

  • Fortran inline source code and crash on Linux [view]
  • Improve output on mobile devices [view]
  • Improved list of files in htmlhelp.hhp [view]
  • Improved sorting performance for directories and files [view]
  • Include command show line number (e.g. LaTeX) [view]
  • Initialization of python variables and type determination [view]
  • Introducing commands includedoc and snippetdoc [view]
  • Latex page numbering [view]
  • Minor build fixes [view]
  • Minor correction for BUILD.txt [view]
  • Minor performance improvement sorting directories [view]
  • Minor update to the installation instructions [view]
  • Missing semicolon in navtree.css [view]
  • Modified (readability) layout for member title in HTML and LaTex [view]
  • Optimized use of convertNameToFile to improve performance [view]
  • PDF generation stops when image with caption is included in a table. [view] , [view]
  • Parse more than 1 size indiction in defaultHandleTitleAndSize [view]
  • Problem jumping to line number in source code due to wrong hypertarget name [view]
  • Python strip code comments [view]
  • Reimplemented node renumbering for dot graph to improve performance [view]
  • Remove unused variables [view] , [view]
  • Removed ambiguity in the XML schema definition [view]
  • Revert #291 [view]
  • Simplified code of fix for Bug 765001 [view]
  • Sorting in latex index and missing @ in index [view]
  • Split apt-get install commands in travis config in an attempt to reduce timeouts [view]
  • Style fixes and added numbering to overloaded members [view]
  • Table of contents breaks when documentation spans multiple comment blocks with same @page [view]
  • Unified display of enum values across output formats and languages [view]
  • Unify handling of extra packages in formula.cpp and latexgen.cpp so formula.cpp handles package arguments correctly [view]
  • Update LICENSE file to latest from FSF [view]
  • Update copyright year in docs [view]
  • Updated README.md to include code docs [view]
  • Updated stylesheet for the manual to fix layout issue in the navigation tree [view]
  • Warnings from CLANG compiler [view]
  • fix ninja build error [view]
  • fixed rtf subsection [view]
  • mangen.h: remove italic in brief member descriptions [view]
  • reimplemented removeRedundantWhiteSpace() to improve performance [view]
  • sqlite3gen: defnname -> defname [view]
  • sqlite3gen: export proper memberdef refid [view]
  • sqlite3gen: insert xrefs using integer refids [view]
  • sqlite3gen: stripFromPath on all calls to insertFile [view]
  • sqlite3gen: stripWhitespace on bitfield's text [view]
  • sqlite3gen: sync with xmlgen [view]
  • sqlite3gen: use the refid stored in the refids table [view]
  • Requirements

    • OS X 10.5.8 or later

    Ratings

    Overall
    (0)
    Current Version (1.x)
    (0)

    Details

    Downloads
    1,885
    Version Downloads
    289
    Type
    Development / Source
    License
    Free
    Date
    10 Nov 2016
    Platform
    Intel 64 / OS X / Intel 32
    Price
    Free