前回の記事でドキュメントの生成に目処が立ったので、ちょっと欲張って複数言語のドキュメントを生成してみることにした。とりあえず、英語版ドキュメントと日本後版ドキュメントを出力できるようなコメントの書き方を考えてみる。
何らかの方法で条件付き解釈ができればいいと考えてドキュメントを眺めていると、やっぱり"if"と"endif"がいるじゃないか。doxygen設定のENABLE_SECTIONに定義があるかどうかで条件分岐ができるようだ。しかも例として複数言語で分ける書き方が載っている。まさに求めていたものそのものだ。
とりあえず、ドキュメントの勧めにしたがい"\english = if english"、"\endenglish = endif"、"\japanese = if japanese"、"\endjapanese = endif"というエイリアスを作成した。
さっそくこいつらを使ってコメントを書き換えてみると、要約説明が長くなりすぎる。かといって改行すると詳細説明として解釈されてしまう。困ったときはドキュメントとばかりにドキュメントを調べていると、"\brief"コマンドを使って要約説明を指定できるようだ。そんなこんなでたどり着いた記述方法はこんな感じ。
/**
\english
\brief 英語の要約説明
英語の詳細説明
\warning 警告があればその英語の説明
\param 引き数名 英語の説明
\param 引き数名 英語の説明
\return 戻り値の英語の説明
\endenglish
\japanese
\breif 日本後の要約説明
日本後の詳細説明
\warning 警告があればその日本後の説明
\param 引き数名 日本後の説明
\param 引き数名 日本後の説明
\return 戻り値の日本後の説明
\endjapanese
*/
英語の出力用にはENABLE_SECTIONにenglishを定義し設定をdoxyfile_enとして保存しておく。同じように日本後の設定にはENABLE_SECTIONにjapaneseを定義し、前回のTeX日本語対策として設定した"LATEX_CMD_NAME : platex -kanji=utf8"とPDFLATEXのチェックを外しdoxyfile_jaとして保存しておく。
それぞれを出力した結果はこんな感じ。
PDFはこんな感じになる。
この調子で他のものにもコメントをつけていくことにする。
コメント