Doxygen \ LaTeX - robbiehume/CS-Notes GitHub Wiki

Doxygen

  • It can create HTML and LaTeX documents

  • Commenting (3 types)

    • C style format: /** <multiple comment lines> */
    • Qt style format: /*! <multiple comment lines> */
    • Multi-line comment format: /// <single comment line>
    • Double slash comments (//) aren't included in documentation

Setup

  • Enable powertools
    • sudo dnf config-manager --set-enabled powertools
  • Install Doxygen, Doxygen GUI, texlive and related packages
    • sudo dnf install doxygen
    • sudo dnf install doxygen-doxywizard
    • sudo dnf install texlive-latex
    • sudo dnf install texlive-core
    • sudo dnf install doxygen-latex
  • Use GUI to generate everything
  • Configuring Doxygen settings in GUI
    • Set the Project name, Source code directory, and Destination directory
    • Set EXTRACT_PRIVATE to YES (in Build section of Expert tab)
    • Set INLINE_INHERITED_MEMB to YES (in Project section)
    • Add src, include, and class_markdown_docs directories to INPUT (in Input section)
    • Set USE_MDFILE_AS_MAINPAGE to the README.md file path (in Input section)
    • Add headerFile path to LATEX_HEADER (in LaTeX section)

Common Tags

  • @brief
  • @details
  • @param
  • @author
  • @return
  • @class

Misc. tips

  • @b makes a word bold
  • Can include HTML formatting (<br>, &emsp;, etc.)

LaTeX

  • Generate pdf from LaTeX: (link)
    • Inside latex directory, run make pdf