Doxygen

Doxygen
開発元 Dimitri van Heesch
最新版
1.9.6 / 2022年12月27日 (16か月前) (2022-12-27)[1]
リポジトリ
  • github.com/doxygen/doxygen
ウィキデータを編集
対応OS GNU/Linux, Windows, macOS, Solaris
種別 ドキュメンテーションジェネレータ
ライセンス GNU General Public License
公式サイト https://www.doxygen.nl/index.html
テンプレートを表示

Doxygen(ドキシジェンまたはドクシジェン)は、C++C言語JavaObjective-CPythonIDLCORBAおよびマイクロソフト形式)のためのドキュメンテーションジェネレータである。他にもPHP、C#D言語ActionScriptでもある程度利用可能。多くのUnix系システム、WindowsmacOSで動作する。Doxygenのコードの大部分は Dimitri van Heesch が書いた。

KDEは文書の一部にDoxygenを利用しており、KDevelopは組み込みでサポートしている。

概要

Javadocのように、Doxygenはソースファイルのコメントから文書を抜き出す。Javadocの文法に加えて、Qtツールキットで使われるドキュメンテーションタグをサポートしており、HTML形式だけでなく、CHMRTFPDFLaTeXPostScriptmanページ形式の文書を生成できる。

統合開発環境 (IDE) の中には、プログラム要素に対して記述されたDoxygenコメントをもとに、ツールヒントでそのプログラム要素に関する情報を表示するものも存在する。コード入力補完の際に関数やメソッドの各パラメータに対する説明を適宜表示するものもある。

コード例

以下のコード例は、Doxygenで文書生成可能な形式である。

/**
 * The time class represents a moment of time.
 *
 * \author John Doe
 */
class Time {
public:
    /**
     * Constructor that sets the time to a given value.
     * \param timeMillis A number of milliseconds passed since Jan 1. 1970
     */
    explicit Time(long long timeMillis) {
        // ...
    }

    /**
     * Get the current time.
     * \return A time object set to the current time.
     */
    static Time now() {
        // ...
    }
};

コメント内にバックスラッシュ\またはアットマーク@で始まる「特殊コマンド」[2]とその引数 (argument) を記述することで、プログラムソースコード中の各構成要素に対する説明を記述した定形的な文書を自動生成することができる。いくつかの特殊コマンドはJavadocとも互換性があるが、Doxygenでしか使えない独自のものも多い。

脚注

  1. ^ Doxygen Manual: Changelog
  2. ^ Doxygen Manual: Special Commands

関連項目

ポータル FLOSS

外部リンク

  • Sourceforge homepage
  • MediaWiki documentation Doxygen で作成
  • 日本語の非公式翻訳サイト - Doxygen v1.5.9への対応を最後に、更新は止まっている。
  • COBOLDoc
  • Ddoc(英語版)
  • Document! X(英語版)
  • Doxygen
  • Epydoc(英語版)
  • fpdoc(英語版)
  • Haddock(英語版)
  • HeaderDoc(英語版)
  • Imagix 4D(英語版)
  • Javadoc
  • ScalaDoc(英語版)
  • JSDoc
  • JsDoc Toolkit(英語版)
  • mkd(英語版)
  • Natural Docs(英語版)
  • NDoc(英語版)
  • Pandoc
  • pdoc(英語版)
  • pdoc3(英語版)
  • perldoc(英語版)
  • phpDocumentor(英語版)
  • pydoc(英語版)
  • RDoc(英語版)
  • ROBODoc(英語版)
  • Rustdoc(英語版)
  • Sandcastle(英語版)
  • Sandcastle Help File Builder
  • Sphinx
  • Visual Expert(英語版)
  • VSdocman(英語版)
  • YARD(英語版)
  • 比較(英語版)
  • 表示
  • 編集