設定

フォーマット

設定ファイルは、Makefile に似た構造を持つ、 自由形式の ASCII テキストファイルで、デフォルトでは Doxyfile という名前になります。 ファイルは、doxygen によって解析されます。 見た目を整えるために、タブや改行コードを含むこともできます。 「文」は、大文字・小文字が区別されます。 ファイル内のどこにでもコメントを置くことができます (クォートの中を除く)。 コメントは、# 文字で始まり、行の終わりまで続きます。

ファイルは、本質的には、代入文のリストからなっています。 各々の文は、大文字で書かれた TAG_NAME の後に = 文字と1つ以上の値が続いたものです。 同じタグへの代入が 2回以上現れた場合は、最後の代入文だけが有効になります。 引数としてリストをとるオプションに対しては、= のかわりに += 演算子を使って、リストに新しい値を追加することができます。 値は、空白以外の文字の並びです。もし、値に1つ以上の空白を含めたい場合は、 値をクォートで囲む必要があります ("...." のように)。 行の末尾にバックスラッシュ (\) を置くことで、複数の行をつなげることができます。 環境変数は、$(ENV_VARIABLE_NAME) というパターンを使って 展開することができます。

@INCLUDE タグを使うと、設定ファイルの一部を 他の設定ファイルにインクルードすることもできます:

@INCLUDE = config_file_name
インクルードファイルは、カレントディレクトリの中で検索されます。 カレントディクトリよりも先に検索してほしいディレクトリのリストを指定することもできます。 @INCLUDE タグを記述する前に、 @INCLUDE_PATH タグで、それらのパスを設定してください。 たとえば:
@INCLUDE_PATH = my_config_dir

設定オプションは、いくつかのカテゴリに分けられています。 以下のものは、タグをアルファベット順に並べたリストです。その後に、 カテゴリ別のタグの解説があります。

一般的なオプション

PROJECT_NAME
PROJECT_NAME タグは、一単語 (または、クォートで囲まれた複数単語) からなり、ドキュメントを生成しようとしているプロジェクトの名前となります。 この名前は、生成されたほとんどのページのタイトルとして使われます。 また、少数ですが、別の場所でも使われています。

PROJECT_NUMBER
PROJECT_NUMBER タグは、 プロジェクト番号やリビジョン番号として使うことができます。 これは、生成されたドキュメントを保管したり、 バージョン管理システムを使うような場合に役立つでしょう。

OUTPUT_DIRECTORY
OUTPUT_DIRECTORY タグは生成されたドキュメントが置かれるベースパスを (相対パスあるいは絶対パスで) 指定するために使われます。 相対パスを指定した場合は、 doxygen を実行した場所からの相対パスとなります。 空白のままにした場合は、カレントディレクトリが使用されます。

OUTPUT_LANGUAGE
OUTPUT_LANGUAGE タグは、doxygen によって生成されるあらゆるドキュメントの 記述言語を指定します。Doxygen は、この情報を使って、すべての既定の文言を 適切な言語で生成します。 デフォルトの言語は、English (英語) です。他にサポートされている言語は 次のとおり: Dutch (オランダ語)、French (フランス語)、Italian (イタリア語)、Czech (チェック語)、 Swedish (スウェーデン語)、German (ドイツ語)、Finnish (フィンランド語)、 Hungarian (ハンガリー語)、Japanese (日本語)、Korean (韓国語)、Spanish (スペイン語)、 Russian (ロシア語)、Croatian (クロアチア語)、Polish (ポーランド語)、Portuguese (ポルトガル語)。
訳注:
バージョン 1.2.8.1 の実際の設定ファイルでは、 次のように記述されています: German (ドイツ語)、Hungarian (ハンガリー語)、Italian (イタリア語)、 Japanese (日本語)、Korean (韓国語)、Norwegian (ノルウェー語)、 Polish (ポーランド語)、Portuguese (ポルトガル語)、 Romanian (ルーマニア語)、Russian (ロシア語)、Slovak (スロバキア語)、 Slovene (スロベニア語)、Spanish (スペイン語)、Swedish (スウェーデン語)
EXTRACT_ALL
EXTRACT_ALL タグが YES に設定された場合、 doxygen は、利用可能なドキュメントが付けられていないものも含め、 すべてのエンティティがドキュメント化されるものと想定します。 (ただし) プライベートなクラスメンバーとスタティックなファイルメンバーは、 EXTRACT_PRIVATE タグと EXTRACT_STATIC タグが YES に設定されないかぎり、表示されません。
注:
これは、ドキュメント付けがなされていないメンバーに関する警告を 抑制します。通常、それらの警告は、WARNINGSYES に設定されている場合に発生します。
EXTRACT_PRIVATE
EXTRACT_PRIVATE> タグが YES に設定された場合、 クラスのすべてのプライベートメンバーがドキュメントに含められます。

EXTRACT_STATIC
EXTRACT_STATIC</code> タグが YES に設定された場合、 ファイルのすべてのスタティックメンバーがドキュメントに含められます。

HIDE_UNDOC_MEMBERS
HIDE_UNDOC_MEMBERS タグが YES に設定された場合、 doxygen は、ドキュメント付けされたクラス、ファイル、名前空間に属する、 ドキュメント付けがなされていないメンバーを表示しません。 NO (デフォルト) に設定した場合 、 これらのメンバーは様々な overview に含まれますが、 ドキュメントセクションは生成されません。 このオプションは、EXTRACT_ALLYES に設定されている場合は無効です。

HIDE_UNDOC_CLASSES
HIDE_UNDOC_CLASSES タグが YES に設定された場合、 doxygen は、ドキュメント付けがなされていないクラスを表示しません。 NO に設定した場合 (デフォルト)、 これらのクラスは、様々な overview に含まれます。 このオプションは、EXTRACT_ALLYES に設定されている場合は無効です。

BRIEF_MEMBER_DESC
BRIEF_MEMBER_DESC タグが YES (デフォルト) に設定された場合、 doxygen は、ファイルやクラスのドキュメントの中で、 リストしたメンバーの後に簡易説明を置きます (JavaDoc 類似)。 NO に設定すると、この機能は無効になります。

REPEAT_BRIEF
REPEAT_BRIEF タグが YES (デフォルト) に設定された場合、 doxygen は、メンバーや関数についての簡易記述を、詳細記述の前にも置きます。
注:
HIDE_UNDOC_MEMBERSBRIEF_MEMBER_DESC の両方が NO に設定された場合は、簡易記述は完全に抑制されます。
ALWAYS_DETAILED_SEC
ALWAYS_DETAILED_SEC タグ と REPEAT_BRIEF タグの両方が YES に設定された場合、doxygen は、簡易記述しかない場合においても 詳細記述セクションを生成します。

FULL_PATH_NAMES
FULL_PATH_NAMES タグが YES に設定された場合、 doxygen は、ファイルリストやヘッダーファイルにおいて、 ファイル名の前にフルパスを付加します。 NO に設定すると、 ファイル名を一意にするに充分なだけの最も短いパスが付加されます。

STRIP_FROM_PATH
FULL_PATH_NAMES タグが YES に設定されている場合に、 ユーザは、STRIP_FROM_PATH タグを定義することによって、 フルパスの一部を省くことができます。省かれるのは、パスの先頭部分が 定義された (複数の) 文字列の一つにマッチした場合だけです。 定義する文字列として、相対パスを使うこともできます。

INTERNAL_DOCS
INTERNAL_DOCS タグは \internal コマンドの後に入力された (内部) ドキュメントを含めるかどうかを決定します。 タグが NO (デフォルト) に設定されていると、そのドキュメントは排除されます。 YES に設定すると、内部ドキュメントも含まれます。

CLASS_DIAGRAMS
CLASS_DIAGRAMS タグが YES (デフォルト) に設定されている場合、 doxygen は、基底クラス (スーバークラス) を持つクスに対して、 クラス図を生成します (HTML および )。 NO に設定すると、クラス図は生成されません。
訳注:
グラフ表示するには、さらに、 後述の HAVE_DOT タグを YES に設定する必要があります。
SOURCE_BROWSER
SOURCE_BROWSER タグが YES に設定されていると、 一連のソースファイルが生成されます。 ドキュメント付けられたエンティティは、これらのソースと相互参照で結ばれます。

INLINE_SOURCES
INLINE_SOURCES タグが YES に設定されると、 関数やクラスの本体がドキュメント内に直接取り込まれます。

STRIP_CODE_COMMENTS
STRIP_CODE_COMMENTS タグが YES (デフォルト) に設定されていると、 doxygen 用のコメントブロックは、生成されるソースコード片には表われなくなります。 普通の C/C++ のコメントは常に表示されます。

CASE_SENSE_NAMES
CASE_SENSE_NAMES タグが NO に設定されている場合、doxygen は、 名前が小文字だけからなるファイルを作成します。 YES に設定すると、大文字も使えるようになります。 このオプションは、ファイル名の大文字・小文字を区別するファイルシステム上で、 大文字・小文字のみが異なるようなクラス名やファイル名を使うような場合に有用です。

SHORT_NAMES
SHORT_NAMES タグが YES に設定されている場合、doxygen は、 かなり短めの (あまり読み易くない) 名前のファイルを作成します。 これは、DOS、Mac、CD-ROM といった、 長い名前をサポートしていないファイルシステムを使用する場合に有用です。

HIDE_SCOPE_NAMES
HIDE_SCOPE_NAMES タグが NO (デフォルト) に設定されている場合、 doxygen は、 メンバーが属するクラスや名前空間のスコープを完全な形で付加して表示します。 YES に設定すると、スコープは付加されません。

VERBATIM_HEADERS
VERBATIM_HEADERS タグが YES (デフォルト) に設定されている場合、 doxygen は、include が指定されている各クラスに対して、 ヘッダーファイルの忠実なコピーを生成します。 NO に設定すると、この機能は無効になります。
参照:
セクション \class.
SHOW_INCLUDE_FILES
SHOW_INCLUDE_FILES タグ YES (デフォルト) に設定されている場合、 doxygen は、 ファイルに関するドキュメントの中に、 そのファイルにインクルードされているファイルのリストを生成します。

JAVADOC_AUTOBRIEF
JAVADOC_AUTOBRIEF タグが YES に設定されている場合、doxygen は、 JavaDoc スタイルのコメントの先頭行 (のうちの最初のドットまで) を 簡易記述と解釈します。 NO (デフォルト) に設定すると、 JavaDoc スタイルは、 Qt スタイルのコメントと同じように扱われます。

INHERIT_DOCS
INHERIT_DOCS タグが YES (デフォルト) に設定されている場合、 ドキュメント付けがなされていないメンバーは、それが再実装を提供しているような ドキュメント付けされたメンバーあれば、そこからドキュメントを継承します。

INLINE_INFO
INLINE_INFO タグが YES (デフォルト) に設定されている場合、 インラインメンバーに対して、[inline] タグがドキュメントに挿入されます。

SORT_MEMBER_DOCS
SORT_MEMBER_DOCS タグが YES (デフォルト) に設定されている場合、doxygen は、 ファイルおよびクラスのメンバーの (詳細) ドキュメントを、 メンバー名のアルファベット順にソートします。 NO に設定すると、宣言順になります。

DISTRIBUTE_GROUP_DOC
メンバーのグループ化がドキュメント内で使われており、DISTRIBUTE_GROUP_DOC タグが YES に設定されている場合、doxygen は、 グループ内の最初のメンバーのドキュメント (もしあれば) を、 そのグループの他のメンバーに対して再利用します。デフォルトでは、 グループ内のすべてのメンバーは、明示的にドキュメント付られている必要があります。

TAB_SIZE
TAB_SIZE タグは、タブの幅 (スペースの数) を設定します。 doxygen は、この値を使用して、コード片においてタブをスペースに置換します。

ENABLED_SECTIONS
ENABLED_SECTIONS タグは、 \if <section-label> ... \endif ブロックによってマークされる、 条件付きドキュメントセクションを有効にするために使用されます。

GENERATE_TODOLIST
GENERATE_TODOLIST タグは、TODO リストを有効にしたり (YES)、 あるいは無効にしたり (NO) するのに使用されます。 TODO リストは、ドキュメント内に \todo コマンドを置くことによって 作成されます。

GENERATE_TESTLIST
GENERATE_TESTLIST タグは、テストリストを有効にしたり (YES)、 あるいは無効にしたり (NO) するのに使用されます。 テストリストは、ドキュメント内に \test コマンドを置くことによって 作成されます。

GENERATE_BUGLIST
GENERATE_BUGLIST タグは、バグリストを有効にしたり (YES)、 あるいは無効にしたり (NO) するのに使用されます。 バグリストは、ドキュメント内に \bug コマンドを置くことによって 作成されます。

ALIASES
このタグは、ドキュメント内でコマンドとして振る舞うような、 いくつかの別名を記述するのに使用されます。 別名は、次の形式をしています。
 名前=値
たとえば、次の行を追加すると、
 "sideeffect=\par Side Effects:\n" 
ドキュメント内で \sideeffect (or @sideeffect) というコマンドが 使えるようになります。このコマンドは、結果として、 "Side Effects:" という見出しを持つユーザ定義のパラグラフを生成します。 別名の値のところに \n を置くと改行が挿入されます。

MAX_INITIALIZER_LINES
MAX_INITIALIZER_LINES タグは、ドキュメントに表示される、 変数や定義 (define) の初期値の最大行数を決定します。 初期化子 (initializer) がここで指定された行数より多くの行から なっている場合、その初期化子は、全体が表示されなくなります。 値として 0 を指定すると、初期化子は全く表示されないことになります。 \showinitializer コマンドや \hideinitializer コマンドを使用すると、 ここでの設定にかかわらず、個々の変数や定義で、 初期化子の表示・非表示を制御することができます。

OPTIMIZE_OUTPUT_FOR_C
プロジェクトが C のソースだけからなっている場合は、OPTIMIZE_OUTPUT_FOR_C タグを YES に設定してください。 doxygen は、より C に適合した出力を生成します。 たとえば、使用される名前のいくつかが異なっていたり、 全メンバーのリストが省略される、など。

SHOW_USED_FILES
クラスや構造体のドキュメントで、 最後のところにファイルのリストを生成するのを抑制するには、 SHOW_USED_FILES タグに NO を設定してください。 YES に設定すると、そのドキュメントを生成するのに使われたファイルが リストされます。

警告および進捗メッセージに関連するオプション

QUIET
QUIET は、doxygen による標準出力へのメッセージ生成を オン/オフするのに使われます。 可能な値は、YES または NO です。YES ならメッセージ出力はオフに なります。ブランクのままにした場合は、NO (つまり、オン) となります。

WARNINGS
WARNINGS タグは、doxygen によるエラー出力へのメッセージ生成を オン/オフするのに使われます。 可能な値は、YES または NO です。YES なら警告出力はオンに なります。ブランクのままにした場合は、NO (つまり、オフ) となります。

[ヒント] ドキュメントを書いている間は、警告をオンにしておく。

WARN_IF_UNDOCUMENTED
WARN_IF_UNDOCUMENTEDYES に設定されている場合、doxygen は、 ドキュメント付けがなされていないメンバーに対して警告を表示します。 EXTRACT_ALLYES の場合は、このフラグは自動的に無効になります。

WARN_FORMAT
WARN_FORMAT タグは、doxygen が生成しうる警告メッセージのフォーマットを 指定します。フォーマット文字列には、$file$line および $text タグを含むことができます。それらは、警告が生じたファイルと その行番号、そして警告メッセージで置換されます。

WARN_LOGFILE
WARN_LOGFILE タグは、警告やエラーメッセージを書き込むべきファイルを 指定するのに使われます。 ブランクのままだと、メッセージは、stderr に出力されます。

入力に関連するオプション

INPUT
INPUT タグは、ドキュメント付けのなされているソースファイル、もしくは、 それらのファイルを格納するディレクトリを指定するのに使用されます。 myfile.cpp のようなファイル名、あるいは /usr/src/myproject のような ディレクトリ名を指定することができます。 ファイルやディレクトリを複数指定する場合は、それらをスペースで区切ります。

[注] このタグは (かつ、このタグだけが) 必須 (required ) です。

FILE_PATTERNS
INPUT タグの値がディレクトリを含んでいる場合は、FILE_PATTERNS タグを使って、 (*.cpp *.h のような) 複数のワイルドカードパターンを指定し、 ディレクトリ内のソースファイルを選別することができます。 ブランクのままだと、すべてのファイル (すなわち、* というワイルドカード) が入力になります。

RECURSIVE
RECURSIVE タグは、サブディレクトリに対しても入力ファイルの検索を行うか どうかを指定するのに使用されます。 可能な値は、YES または NO です。 ブランクのままにした場合は、NO (検索しない) となります。

EXCLUDE
EXCLUDE タグは、INPUT で指定した入力ファイルのうち、 除外すべきファイルやディレクトリを指定するのに使用されます。 この方法を使うと、INPUT タグでルートの指定されたディレクトリツリーから、 あるサブディレクトリを除外することが簡単にできます。

EXCLUDE_PATTERNS
INPUT タグの値にディレクトリが含まれている場合、 EXCLUDE_PATTERNS タグを使用して複数のワイルドカードパターンを指定することにより、 これらのディレクトリから特定のファイルを除外することができます。

EXAMPLE_PATH
EXAMPLE_PATH タグを使用すると、インクルードされているサンプルコード片を 含むファイルやディレクトリを、1つまたは複数、指定することができます (セクション \include の \include command を参照)。

EXAMPLE_PATTERNS
EXAMPLE_PATH タグの値にディレクトリが含まれている場合、 EXAMPLE_PATTERNS タグを使用して (*.cpp *.h のような) 複数のワイルドカードパターンを指定し、 ディレクトリ内のソースファイルを選別することができます。 ブランクのままだと、すべてのファイル (すなわち、* というワイルドカード) がインクルードされます。

IMAGE_PATH
IMAGE_PATH タグを使用すると、 ドキュメントにインクルードされるべき画像を格納する、 複数のファイルやディレクトリを指定することができます (\image コマンドを参照)。

INPUT_FILTER
INPUT_FILTER タグを使用すると、 入力ファイルをフィルタリングするプログラムを指定して、 doxygen に起動させることができます。 doxygen は、フィルタープログラムを起動するために、 次のコマンドを (popen() を介して) 実行します。
 <filter> <input-file>

ここで、<filter> は、INPUT_FILTER タグの値です。 また、<input-file> は、入力ファイルの名前です。 doxygen は、その後、フィルタープログラムが標準出力に書き出した出力を使用します。

FILTER_SOURCE_FILES
FILTER_SOURCE_FILESYES に設定されている場合、 ブラウジングのためのソースファイルを生成する際にも、 (INPUT_FILTER で設定されている) 入力フィルターを使用して、 入力ファイルをフィルタリングします。

アルファベット順インデックスのオプション

ALPHABETICAL_INDEX
ALPHABETICAL_INDEX タグが YES に設定されている場合、 すべての複合体 (compond) のアルファベット順インデックが生成されます。 プロジェクトに、数多くのクラス、構造体、共用体、インタフェースが含まれて いる場合は、このオプションを有効にしておくとよいでしょう。

COLS_IN_ALPHA_INDEX
アルファベット順インデックスが有効になっている (ALPHABETICAL_INDEX を参照) 場合、 COLS_IN_ALPHA_INDEX タグを使用して、このリストを分割するカラム数 (範囲は、[1..20]) を指定することが できます。

IGNORE_PREFIX
プロジェクト内のすべてのクラス名が共通の接頭辞で始まっている場合、 アルファベット順インデックスにおいて、すべてのクラスはひとつの見出しの下に まとめられてしまいます。 IGNORE_PREFIX タグを使用すると、 インデックスの見出しを生成している間は無視すべき接頭辞 (または、接頭辞のリスト) を指定することができます。

HTML に関連するオプション

GENERATE_HTML
GENERATE_HTML タグが YES (デフォルト) に設定されている場合、 doxygen は、HTML 出力を生成します。

HTML_OUTPUT
HTML_OUTPUT タグを使用すると、 HTML ドキュメントが出力される場所を指定することができます。 相対パスが指定された場合は、その前に OUTPUT_DIRECTORY が付加されます。 ブランクのままだと、デフォルトパスとして、`html' が使われます。

HTML_HEADER
HTML_HEADER タグを使用して、 生成される各 HTML ページの先頭に付加される、 ユーザ定義の HTML ヘッダーファイルを指定することができます。 HTML として正当なものにするには、そのヘッダーファイルは、 少なくとも <HTML> タグと <BODY> タグを含んでいる必要がありますが、 doxygen によって生成されるスタイルシートをインクルードするというのも 良い考えです。 最小の例:
  <HTML>
    <HEAD>
      <TITLE>My title</TITLE>
      <LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
    </HEAD>
    <BODY BGCOLOR="#FFFFFF">

タグがブランクのままだと、doxygen は標準的なヘッダーを生成します。

以下のコマンドは、ヘッダー内部では特別な意味を持ちます:
$title, $datetime, $date, $doxygenversion, $projectname, $projectnumber

doxygen は、これらを、それぞれ、以下のもので置換します:
ページタイトル、現在の日時、現在の日付、doxygen のバージョン、 プロジェクト名 (PROJECT_NAME 参照)、 プロジェクト番号 (PROJECT_NUMBER 参照)。

doxygen が通常使用するデフォルトのヘッダーをどのように生成するか、 ということに関しては、セクション Doxygen usage を参照してください。

HTML_FOOTER
HTML_FOOTER タグを使用して、 生成される各 HTML ページの末尾に付加される、 ユーザ定義の HTML フッターファイルを指定することができます。 HTML として正当なものにするには、そのフッターファイルは、 少なくとも </BODY> タグと </HTML> タグを含んでいる必要があります。 最小の例:
    </BODY>
  </HTML>

タグがブランクのままだと、doxygen は標準的なフッターを生成します。

以下のコマンドは、フッター内部では特別な意味を持ちます:
$title, $datetime, $date, $doxygenversion, $projectname, $projectnumber

doxygen は、これらを、それぞれ、以下のもので置換します:
ページタイトル、現在の日時、現在の日付、doxygen のバージョン、 プロジェクト名 (PROJECT_NAME 参照)、 プロジェクト番号 (PROJECT_NUMBER 参照)。

doxygen が通常使用するデフォルトのフッターをどのように生成するか、 ということに関しては、セクション Doxygen usage を参照してください。

HTML_STYLESHEET
HTML_STYLESHEET タグを使用して、各 HTML ページで用いられる、 ユーザ定義のカスケーディングスタイルシートを指定することができます。 それは、HTML 出力の見映えを微調整するのに使われます。 タグがブランクのままだと、doxygen は、デフォルトのスタイルシートを生成します。

doxygen が通常使用するスタイルシートをどのように生成するか、 ということに関しては、セクション Doxygen usage を参照してください。

HTML_ALIGN_MEMBERS
HTML_ALIGN_MEMBERS タグが YES に設定されている場合、 クラスやファイル、名前空間に属するメンバーは、HTML において、 テーブルを用いて整列させられます。 NO が設定されると、黒丸のリストが使われます。

注: このタグを NO に設定することは、将来においては廃れたものになっているでしょう。 というのも、作者は、整列した表現しか、サポートおよびテストをするつもりがないからです。

GENERATE_HTMLHELP
GENERATE_HTMLHELP タグが YES に設定されている場合、 doxygen は、さらに、3つの HTML インデックスファイルを生成します: index.hhp、\c index.hhc および index.hhk。 index.hhp は、Windows の Microsoft's HTML Help Workshop によって読み込まれるプロジェクトファイルです。

HTML Help Workshop は、doxygen によって生成された全 HTML 出力を 一つの圧縮 HTML ファイル (.chm) に変換することができるコンパイラを持っています。 圧縮 HTML ファイルは、 現在は Windows 98 のヘルプフォーマットとして使用されていますが、 将来においては、すべての Windows プラットフォーム上で、 旧来の Windows ヘルプフォーマットに取って代わるでしょう。 圧縮 HTML ファイルにはまた、インデックスと目次も含まれていて、 ドキュメント内で単語を探すことができます (それは、基本的に、doxysearch を Windows 上では廃れたものにしてしまいます)。 HTML workshop には、圧縮 HTML ファイルのビューアも含まれています。

GENERATE_CHI
GENERATE_HTMLHELP タグが YES に設定されている場合は、 GENERATE_CHI フラグによって、 別の .chi インデックスファイルを生成するか (YES)、 あるいは、マスターの .chm ファイルにインクルードさせるか (NO) を 制御します。

BINARY_TOC
GENERATE_HTMLHELP タグが YES に設定されている場合は、 BINARY_TOC フラグによって、 バイナリの目次を生成するか (YES)、 あるいは、.chm ファイルの中に通常の目次を生成するか (NO) を 制御します。

TOC_EXPAND
TOC_EXPAND フラグを YES に設定すると、 HTML ヘルプドキュメントの目次とツリービューに、 グループメンバーに対する拡張項目を追加することができます。

DISABLE_INDEX
生成される HTML ページのレイアウトを完全にコントロールしたいのであれば、 インデックスを抑制して、それをユーザ自身の手で置換することが必要に なるかもしれません。 DISABLE_INDEX タグを使用すると、各ページの上部にある簡約インデックスを オン/オフ することができます。 値 NO (デフォルト) はインデックスを生成し、 値 YES はインデックスを抑制します。

ENUM_VALUES_PER_LINE
このタグを使用すると、doxygen によって生成される HTML ドキュメントにおいて、 一行にまとめられる enum の値の数 (範囲は [1..20]) を設定することができます。

GENERATE_TREEVIEW
GENERATE_TREEVIEW タグが YES に設定されている場合、 (ちょうど HTML ヘルプに対して生成されるような) ツリー状のインデックス構造を格納しているサイドパネルが作成されます。 これが動作するためには、JavaScript とフレームをサポートしたブラウザ (たとえば、Netscape 4.0+ や Internet explorer 4.0+) が必要です。

TREEVIEW_WIDTH
ツリービューが有効になっている場合 (GENERATE_TREEVIEW 参照)、 このタグを使用して、 ツリーが表示されるフレームの幅の初期値を設定することができます。

LaTeX に関連するオプション

GENERATE_LATEX
GENERATE_LATEXYES (デフォルト) に設定されている場合、 doxygen は、 出力を生成します。

LATEX_OUTPUT
LATEX_OUTPUT を使用すると、 ドキュメントが出力される場所を指定することができます。 相対パスが指定された場合は、その前に OUTPUT_DIRECTORY が付加されます。 ブランクのままだと、デフォルトパスとして、`latex' が使われます。

COMPACT_LATEX
COMPACT_LATEX タグが YES に設定されている場合、 doxygen は、コンパクトな ドキュメントを生成します。 一般的には、これは、小さなプロジェクトにとって有用でしょう。 また、いくつかのツリーを省く助けにもなるでしょう。

PAPER_TYPE
PAPER_TYPE タグを使用すると、プリンタ用紙の種類を設定することができます。 可能な値は次のとおり: ブランクのままだと、a4wide が使われます。

EXTRA_PACKAGES
EXTRA_PACKAGES タグを使用すると、 出力に含まれるべき パッケージ名を、 1つまたはそれ以上、指定することができます。 たとえば、times フォントを得るには、次のように指定します:
EXTRA_PACKAGES = times
ブランクのままだと、追加パッケージは何も含まれません。

LATEX_HEADER
LATEX_HEADER を使用すると、 生成される ドキュメントに対して、 個人用の ヘッダーを指定することができます。 ヘッダーは、最初の章に至るまでの全てを含んでいる必要があります。

ブランクのままだと、doxygen は、標準的なヘッダーを生成します。 どのようにして doxygen に別ファイルのデフォルトヘッダーを出力させるか、 ということに関しては、セクション Doxygen usage を参照してください。

注:
自分が何をやろうとしているかを理解している場合にのみ、 ユーザ定義のヘッダーを使用するようにしてください! (訳注: ここは、素直に訳すと、 「自分が何をやろうとしているかを理解しているならば、 ユーザ定義のヘッダーを使用するだけにしてください」となりますが、 それでは意味が通らないと思われるので、上のような訳にしました。)
以下のコマンドは、ヘッダー内部では特別な意味を持ちます:
$title, $datetime, $date, $doxygenversion, $projectname, $projectnumber

doxygen は、これらを、それぞれ、以下のもので置換します:
ページタイトル、現在の日時、現在の日付、doxygen のバージョン、 プロジェクト名 (PROJECT_NAME 参照)、 プロジェクト番号 (PROJECT_NUMBER 参照)。

PDF_HYPERLINKS
PDF_HYPERLINKS タグが YES に設定された場合、 生成される には、 (ps2pdf を利用して) PDF に変換するための準備が施されます。 PDF ファイルには、ページリファレンスの代わりに (HTML 出力と同様) リンクが含まれます。 これは、PDF ビューアによってオンラインブラウジングをするのに適した出力を 作成します。

USE_PDFLATEX

LATEX_PDFLATEX タグが YES に設定された場合、 doxygen は pdflatex を使用して ファイルから直接に PDF ファイルを生成します。

LATEX_BATCHMODE
LATEX_BATCHMODEYES に設定された場合、 doxygen は、生成される ファイルに、 \batchmode コマンドを追加します。 これは、 に対して、エラーが発生しても、ユーザの指示を仰ぐことなく 動作し続けるよう、指令します。 このオプションはまた、HTML において式を生成する際にも使用されます。

RTF に関連するオプション

GENERATE_RTF
GENERATE_RTFYES に設定されている場合、 doxygen は、RTF 出力を生成します。 RTF 出力は、Word 97 に対して最適化されており、他のリーダやエディタでは、 あまりきれいに表示できないかもしれません。

RTF_OUTPUT
RTF_OUTPUT タグを使用すると、 RTF ドキュメントが出力される場所を指定することができます。 相対パスが指定された場合は、その前に OUTPUT_DIRECTORY が付加されます。 ブランクのままだと、デフォルトパスとして、rtf が使われます。

COMPACT_RTF
COMPACT_RTF タグが YES に設定されている場合、 doxygen は、よりコンパクトな RTF ドキュメントを生成します。 一般的には、これは、小さなプロジェクトにとって有用でしょう。 また、いくつかのツリーを省く助けにもなるでしょう。

RTF_HYPERLINKS
RTF_HYPERLINKS タグが YES に設定された場合、 生成される RTF は、ハイパーリンクフィールドが含まれます。 RTF ファイルには、ページリファレンスの代わりに (HTML 出力と同様) リンクが含まれます。 これは、Word もしくは、これらのフィールドをサポートしている Word 互換なリーダによってオンラインブラウジングをするのに適した出力を 作成します。
注:
WordPad (write) その他は、リンクをサポートしません。
RTF_STYLESHEET_FILE
ファイルから、スタイルシート定義をロードします。 構文は、doxygen の設定ファイルに似ている、つまり、 一連の代入文です。ユーザは、置換する値を提供するだけでよいのです。 定義のないものについては、デフォルトの値が設定されます。

doxygen が通常使用するデフォルトのスタイルシートをどのように生成するか、 ということに関しては、セクション Doxygen usage も参照してください。

RTF_EXTENSIONS_FILE
RTF ドキュメントの生成に際して使用されるオプション変数を設定します。 構文は、doxygen の設定ファイルに似ています。 ひな型の拡張ファイルは、
doxygen -e rtf extensionFile で生成することができます。

Man page に関連するオプション

GENERATE_MAN
GENERATE_MAN タグが YES (デフォルト) に設定されている場合、 doxygen は、クラスおよびファイルに対して man page を生成します。

MAN_OUTPUT
MAN_OUTPUT タグを使用すると、 man page が出力される場所を指定することができます。 相対パスが指定された場合は、その前に OUTPUT_DIRECTORY が付加されます。 ブランクのままだと、デフォルトパスとして、`man' が使われます。 MAN_OUTPUT で指定されたディレクトリの内部には、 man3 というディレクトリが作成されます。

MAN_EXTENSION
MAN_EXTENSION は、生成される man page に付加される拡張子を決定します (デフォルトは、サブルーチンのセクションである .3)。

MAN_LINKS
doxygen が man 出力を生成する際、MAN_LINKS タグが YES に設定されていると、 man page(s) 本体においてドキュメント化される各エンティティに対して、 一つの付加的な man ファイルが生成されます。 これらの付加ファイルは、man page 本体の単なるソースですが、それが無いと、 man コマンドは、正しいページを見つけることができないでしょう。デフォルトでは、 NO になります。

Preprocessor に関連するオプション

ENABLE_PREPROCESSING
ENABLE_PREPROCESSING タグが YES (デフォルト) に設定されている場合、 doxygen は、ソースやインクルードファイル内で見つかった、 すべての C プリプロセッサディレクティブを評価します。

MACRO_EXPANSION
MACRO_EXPANSION タグが YES に設定されている場合、 doxygen は、ソースコード内のすべてのマクロ名を展開します。 NO (デフォルト) の場合は、条件コンパイルのみを実行します。 EXPAND_ONLY_PREDEFYES に設定すると、マクロ展開を、 ある制御されたやり方で実行することができます。

EXPAND_ONLY_PREDEF
EXPAND_ONLY_PREDEF タグと MACRO_EXPANSION タグが両方とも YES に設定された場合、 マクロ展開は、PREDEFINED タグと EXPAND_AS_DEFINED タグで 指定されたものだけに制限されます。

SEARCH_INCLUDES
SEARCH_INCLUDES タグが YES に設定されている場合、 #include が見つかると、 INCLUDE_PATH (下記参照) 内のインクルードファイルが検索されます。

INCLUDE_PATH
INCLUDE_PATH タグを使用して、1つまたはそれ以上のディレクトリ ― 入力ファイルにはならないけれども、 プリプロセッサによって処理されるべきインクルードファイルを含むディレクトリ ― を指定することができます。

PREDEFINED
PREDEFINED タグを使用して、プリプロセッサの実行が始まる前に 1つまたはそれ以上の定義済みマクロ名指定することができます (gcc の -D オプションに類似)。 タグの引数は、次のような形式のマクロリストです: name または name=definition (空白なし)。 =definition が省略された場合は、=1 と なります。

EXPAND_AS_DEFINED
MACRO_EXPANSION タグと EXPAND_PREDEF_ONLY タグが両方とも YES に設定されている場合、 このタグを使用して、展開されるべきマクロ名のリストを指定することができます。 (展開には) ソース内で見つかるマクロ定義が使用されます。 それとは異なるマクロ定義を使いたい場合は、PREDEFINED を使用してください。

SKIP_FUNCTION_MACROS
SKIP_FUNCTION_MACROSYES (デフォルト) に設定された場合、 doxygen のプリプロセッサは、一行だけで記述されセミコロンで終わっていない 関数的なマクロをすべて削除します。 そのような関数的マクロは、典型的には画一的文言 (boiler-plate) として使用されるものであり、削除しないとパーサを混乱させます。

外部参照オプション

TAGFILES
TAGFILES タグを使用して、 1つまたはそれ以上のタグファイルを指定することができます。

タグファイルの使い方について、詳しくは、 セクション Doxytag usage を参照してください。

外部ドキュメントの初期位置は、各タグファイルに対して、 随意に付加することができます。 この位置を持たないタグファイルのフォーマットは次のとおり:

TAGFILES = file1 file2 ... 

タグファイルに位置を付加するやり方は、次のとおり:

TAGFILES = file1=loc1 "file2 = loc2" ... 

ここで、loc1loc2 は、相対パス、絶対パス、または URL です。 各タグに対して位置が存在している場合、リンクを正しいものにするために installdox ツール (詳しくは Installdox usage を参照) を実行する必要はありません。

注:
各タグファイルは、一意の名前 (名前にパスは含まれません) を持たなければなりません。 タグファイルが doxygen の起動されたディレクトリに無い場合、 ここで、タグファイルへのパスの指定もしなければなりません。
GENERATE_TAGFILE
GENERATE_TAGFILE の後にファイ名が指定された場合、 doxygen は、読み込む入力ファイルに基づいてタグファイルを生成します。 タグファイルの使い方について、詳しくは、 セクション Doxytag usage を参照してください。

ALLEXTERNALS
ALLEXTERNALS タグが YES に設定された場合、 すべての外部クラスがクラスインデックスにリストされます。 NO の場合は、継承された外部クラスだけがリストされます。

PERL_PATH
PERL_PATH は、perl インタプリタの絶対パス名 (すなわち、`which perl' の結果) です。

Dot オプション

HAVE_DOT
HAVE_DOT タグが YES に設定されている場合、 doxygen は、コマンドパスから dot ツールを起動できると想定します。 このツールは、AT&T および Lucent Bell 研のグラフ可視化ツールキットである、 Graphviz の一部です。このセクションで説明される他のオプションは、 このオプションが NO (デフォルト) に設定された場合は無効となります。

CLASS_GRAPH
CLASS_GRAPH タグ と HAVE_DOT タグが YES に設定されている場合、 doxygen は、ドキュメント付けされた各クラスに対して、 直接または間接的な継承関係を示すグラフを生成します。 このタグを YES に設定すると、CLASS_DIAGRAMS タグは、 強制的に NO になります。

COLLABORATION_GRAPH
COLLABORATION_GRAPH タグと HAVE_DOT タグが YES に設定されている場合、 doxygen は、ドキュメント付けされた各クラスに対して、 ドキュメント付けされた他のクラスとの、 直接または間接的な実装依存 (継承、所有、クラス参照変数) を示すグラフを生成します。

TEMPLATE_RELATIONS
TEMPLATE_RELATIONSHAVE_DOT タグが YES に設定されている場合、 doxygen は、テンプレートとそのインスタンスの間の関係を表示します。 If the TEMPLATE_RELATIONS and HAVE_DOT tags are set to YES then doxygen will show the relations between templates and their instances.

INCLUDE_GRAPH
ENABLE_PREPROCESSING、\c SEARCH_INCLUDES、INCLUDE_GRAPH および HAVE_DOT の各タグが YES に設定されている場合、 doxygen は、ドキュメント付けされた各ファイルに対して、 ドキュメント付けされた他のファイルとの、 直接または間接的なインクルード依存を示すグラフを生成します。

INCLUDED_BY_GRAPH
ENABLE_PREPROCESSING、\c SEARCH_INCLUDES、INCLUDED_BY_GRAPH および HAVE_DOT の各タグが YES に設定されている場合、 doxygen は、ドキュメント付けされた各ヘッダーファイルに対して、 このファイルを直接または間接的にインクルードしている、 ドキュメント付けされたファイルを示すグラフを生成します。

GRAPHICAL_HIERARCHY
GRAPHICAL_HIERARCHY タグと HAVE_DOT タグが YES に設定されている場合、 doxygen は、テキスト形式の代わりに、グラフ化された全クラス階層図を生成します。

DOT_PATH
このタグを使用すると、dot ツールの存在するパスを指定することができます。 ブランクのままだと、dot ツールはコマンドパスから見つけられるものと想定されます。

DOTFILE_DIRS
このタグを使用すると、ドキュメントに含まれる dot ファイルを格納する、 1つまたはそれ以上のディレクトリを指定することができます (\dotfile コマンドを参照)。

MAX_DOT_GRAPH_HEIGHT
MAX_DOT_GRAPH_HEIGHT タグを使用すると、 dot によって生成されるグラフの可能な高さの最大値 (ピクセル単位) を設定することができます。 もし、グラフがこの値よりも大きくなってしまった場合、 doxygen は、指定された制限内に収まるように、グラフを切り詰めようとします。 たいていのブラウザは、巨大な画像を扱うことができない、ということにご注意。

MAX_DOT_GRAPH_WIDTH
MAX_DOT_GRAPH_WIDTH タグを使用すると、 dot によって生成されるグラフの可能な幅の最大値 (ピクセル単位) を設定することができます。 もし、グラフがこの値よりも大きくなってしまった場合、 doxygen は、指定された制限内に収まるように、グラフを切り詰めようとします。 たいていのブラウザは、巨大な画像を扱うことができない、ということにご注意。

GENERATE_LEGEND
GENERATE_LEGEND タグが YES に設定されている場合、 doxygen は、 dot の生成するグラフで使用されている様々なボックスや矢印の意味を説明する、 凡例のページを生成します。

DOT_CLEANUP
このタグを使用すると、取り残された DOT のゴミをきれいに片付けてくれます。 空白のままにした場合は、"NO" が設定されていると仮定されます。

検索エンジンオプション

SEARCHENGINE
SEARCHENGINE タグは、検索を使用するかどうかを指定します。 可能な値は、YSENO です。 NO が設定されるか、あるいはブランクのままだと、 このセクションの残りのタグは、すべて無視されます。

CGI_NAME
CGI_NAME タグは、正しいパラメータとともに検索エジン (doxysearch) を起動する CGI スクリプトの名前です。 この名前を持つスクリプトは、doxygen によって生成されます。

CGI_URL
CGI_URL タグは、cgi バイナリが存在するディレクトリへの絶対 URL です。 詳しくは、HTTP デーモンのドキュメントを参照してください。

DOC_URL
DOC_URL タグは、ドキュメントが存在するディレクトリへの絶対 URL です。 ブランクのままだと、ドキュメントへの絶対パスに、 file:// を前接させたものが使われます。 これは、ローカルな閲覧でのみ正しいものとなります。

DOC_ABSPATH
DOC_ABSPATH タグは、ドキュメントが存在するディレクトリへの絶対パスです。 ブランクのままだと、ローカルマシン上のディレクトリが使われます。

BIN_ABSPATH
BIN_ABSPATH タグは、doxysearch バイナリがインストールされているディレクトリを 指していなければなりません。

EXT_DOC_PATHS
EXT_DOC_PATHS タグを使用すると、 他のプロジェクト用に生成されたドキュメントへのパスを、1つまたはそれ以上、 指定することができます。 これによって、doxysearch は、それらのプロジェクトについてもドキュメントを 検索することができるようになります。 すべてのパスは絶対パスでなければなりません。

以下の二つのファイルからなる、単純なプロジェクトがあると思ってください: ソースファイル example.cc とヘッダーファイル example.h。 そのとき、最小の設定ファイルは、 次のような単純なものになります:

INPUT            = example.cc example.h

この例が Qt クラスを使用し、perl が /usr/bin にあると仮定すると、 より現実的な設定ファイルは、次のようななるでしょう:

PROJECT_NAME     = Example
INPUT            = example.cc example.h
WARNINGS         = YES
TAGFILES         = qt.tag
PERL_PATH        = /usr/bin/perl
SEARCHENGINE     = NO

QdbtTabular パッケージのドキュメントを生成するために、作者は、 以下のような設定ファイルを使用しています:

PROJECT_NAME     = QdbtTabular
OUTPUT_DIRECTORY = html
WARNINGS         = YES
INPUT            = examples/examples.doc src
FILE_PATTERNS    = *.cc *.h
INCLUDE_PATH     = examples
TAGFILES         = qt.tag
PERL_PATH        = /usr/local/bin/perl
SEARCHENGINE     = YES
CGI_NAME         = search.cgi
CGI_URL          = http://www.stack.nl/~dimitri/cgi-bin
DOC_URL          = http://www.stack.nl/~dimitri/qdbttabular
DOC_ABSPATH      = /home/dimitri/.html/qdbttabular
BIN_ABSPATH      = /home/dimitri/bin

ソースから Qt-1.44 のドキュメントを再生成するには、 以下のような設定ファイルを使用することができます:

PROJECT_NAME         = Qt
OUTPUT_DIRECTORY     = qt_docs
HIDE_UNDOC_MEMBERS   = YES
HIDE_UNDOC_CLASSES   = YES
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION      = YES
EXPAND_ONLY_PREDEF   = YES
SEARCH_INCLUDES      = YES
FULL_PATH_NAMES      = YES
STRIP_FROM_PATH      = $(QTDIR)/
PREDEFINED           = USE_TEMPLATECLASS Q_EXPORT= \
                       QArrayT:=QArray \
                       QListT:=QList \
                       QDictT:=QDict \
                       QQueueT:=QQueue \
                       QVectorT:=QVector \
                       QPtrDictT:=QPtrDict \
                       QIntDictT:=QIntDict \
                       QStackT:=QStack \
                       QDictIteratorT:=QDictIterator \
                       QListIteratorT:=QListIterator \
                       QCacheT:=QCache \
                       QCacheIteratorT:=QCacheIterator \
                       QIntCacheT:=QIntCache \
                       QIntCacheIteratorT:=QIntCacheIterator \
                       QIntDictIteratorT:=QIntDictIterator \
                       QPtrDictIteratorT:=QPtrDictIterator
INPUT                = $(QTDIR)/doc \
                       $(QTDIR)/src/widgets \
                       $(QTDIR)/src/kernel \
                       $(QTDIR)/src/dialogs \
                       $(QTDIR)/src/tools
FILE_PATTERNS        = *.cpp *.h q*.doc
INCLUDE_PATH         = $(QTDIR)/include 
RECURSIVE            = YES

Qt-2.1 のソース用には、以下のような設定をお勧めします:

PROJECT_NAME          = Qt
PROJECT_NUMBER        = 2.1
HIDE_UNDOC_MEMBERS    = YES
HIDE_UNDOC_CLASSES    = YES
SOURCE_BROWSER        = YES
INPUT                 = $(QTDIR)/src
FILE_PATTERNS         = *.cpp *.h q*.doc
RECURSIVE             = YES
EXCLUDE_PATTERNS      = *codec.cpp moc_* */compat/* */3rdparty/*
ALPHABETICAL_INDEX    = YES
COLS_IN_ALPHA_INDEX   = 3
IGNORE_PREFIX         = Q
ENABLE_PREPROCESSING  = YES
MACRO_EXPANSION       = YES
INCLUDE_PATH          = $(QTDIR)/include
PREDEFINED            = Q_PROPERTY(x)= \
                        Q_OVERRIDE(x)= \
                        Q_EXPORT= \
                        Q_ENUMS(x)= \
                        "QT_STATIC_CONST=static const " \
                        _WS_X11_ \
                        INCLUDE_MENUITEM_DEF
EXPAND_ONLY_PREDEF    = YES
EXPAND_AS_DEFINED     = Q_OBJECT_FAKE Q_OBJECT ACTIVATE_SIGNAL_WITH_PARAM \
                        Q_VARIANT_AS

通常なら C プリプロセッサで置換されるいくつかのマクロ名を、 ここでは、doxygen のプリプロセッサを使用して置換しています。 ただし、完全なマクロ展開は行われていません。


Doxygen manualに対してTue Oct 16 12:04:38 2001に生成されました。 doxygen1.2.11.1 の開発者: Dimitri van Heesch, © 1997-2001