2014年8月21日木曜日

【コメント】doxygen【コンソメ】

1 :デフォルトの名無しさん:2008/05/30(金) 19:50:27
無いので建てた

公式
http://www.doxygen.jp/

61 :デフォルトの名無しさん:2008/08/26(火) 16:11:52
今までdoxygenの事を全く考えずにC++で開発していたんですが、
突然思い立ってdoxygenで出力することにしました。
当然、対応形式のコメントでないので一切出力されません。
一から書き直そうと思うんですが、せめてソースを静的に解析して
関数やファイルの頭に定型のテンプレートを追記してくれるようなツールがあればと
探してるんですが、何かないですかね?

63 :61:2008/08/26(火) 18:34:24
はい。その設定で関数は出るんですが、クラスとメンバが
何をしているかの簡単な説明も表示したいと思っています。
既に大量のソースが存在する為、少しでも手間をかけずに実現したいと試行錯誤中です。
自分の様にプロジェクトの途中からdoxygenの使用を考える人間が、
どのようにこの問題を解決しているのか知りたいところです。

65 :デフォルトの名無しさん:2008/08/26(火) 19:53:17
>>63
とりあえず、説明文を付けるのは名前だけで中身を判断できないようなクラスやメンバだけに限定しようぜ。

64 :デフォルトの名無しさん:2008/08/26(火) 18:39:07
努力と根性じゃね?

102 :デフォルトの名無しさん:2008/12/23(火) 01:27:13
ちょっとメモ。
doxygenで出力したRTFがどうも文字化けするので調べてみたら、\\'を\\\'に変換することで解消することが判った。
要は\を表すのにそれ自身をエスケープして\\とする必要があると言うことなのだろうか。もうちょい調べる必要はありそう。

123 :デフォルトの名無しさん:2008/12/30(火) 03:40:46
問題分かったかも。

id 437346 のバグレポートで日本語対応の議論がされてるんだけど、
報告者の人が提案した、
x080より大きいバイトが来たらマルチバイト判別フラグON、
次のバイトでフラグOFF、というのをそのまま採用してくれたらよかったのに、
0x80より大きいかの判断をそのままフラグに入れちゃってるから、
2バイト目が0x80より大きい場合に、その次のバイトまでエスケープされて、
それがエスケープされたら困るものの場合に不幸になってるということかと。

131 :デフォルトの名無しさん:2009/01/10(土) 14:59:07
1.5.8 のrtfのエスケープバグのソースって
どのファイルなのかな?

132 :102:2009/01/10(土) 15:17:25
ちょっとLinuxに1.5.8をインストールしたので出力してみたが、これは酷いw
2バイト文字を全てコード出力しているのはいいが、>123のように無関係なコマンド文字まで巻き添えにしてしまっている。
おまけに、コマンド文字列を何故か\commentで括ってしまっているので収拾がつかない状態。

そうそう、html出力のツリービューも、(UTF-8)指定なのにも関わらずプロジェクト名がEUCで出力されるので化け化け。
誰かなんとかして〜w
# ってことで、>131に期待♪

134 :デフォルトの名無しさん:2009/01/12(月) 00:56:25
>>131
rtfgen.cpp の void RTFGenerator::postProcess(QByteArray &a) です。
こちらを参考に。
http://bugzilla.gnome.org/show_bug.cgi?id=437346

>>132
そういや最近プロジェクト名を日本語にしてなかったけど、これは…

どうやらDoxywizardのバグのようです。
テキストエディタでDoxyfile開いてプロジェクト名を修正して、
コマンドラインでDoxygenを実行したら、文字化けしませんでした。

138 :デフォルトの名無しさん:2009/01/14(水) 22:11:56
バグ修正版バイナリ出来たよん。
http://www1.axfc.net/uploader/He/so/182473&key=doxygen
T.Matsuyama氏パッチそのままです。
ばっちりっぽいです。
102さん、134さんありがとw

174 :デフォルトの名無しさん:2009/05/13(水) 22:00:48
doxygenって使ったこと無いんだけど、
ぶっちゃけて言うと、オススメですかい?


186 :デフォルトの名無しさん:2009/05/24(日) 14:01:52
doxygenであるライブラリのドキュメントを作った時、
そのライセンスってどこにどうやって記載すればいいの?

ドキュメント内に表示されるようにしたいんだけど。


196 :デフォルトの名無しさん:2009/05/30(土) 12:54:18
#defineマクロ定義をドキュメント(html)に出力させたくて
http://www.doxygen.jp/commands.html#cmddef
ここを見て

C++ code - 19 lines - codepad
http://codepad.org/mUM77yZO

こんなの書いてみたんですが、
全然#defineマクロ定義が出力されません。

どうすれば良いでしょうか?


197 :デフォルトの名無しさん:2009/05/30(土) 17:17:56
>>196
define_test.h のファイルのページ自体は出来てる?
実際のファイル名と @file の後ろに書いたファイル名が合ってないとかはないかな、と思ったもので。

217 :デフォルトの名無しさん:2009/06/03(水) 03:43:33
質問です。

いままでのプログラムは以下のようにコメントしていたのですが、
doxygenでは/** */の形式にしないとドキュメント作成はできないのでしょうか?
コメント部分を目立たせたいので、できれば今までのコメント形式を維持したいのですが・・

今までのコメント例
//********************************************************
// Test.cpp
// 2009.09 by Tester
// テスト用のクラス
//********************************************************

これを
/**
*
*
*
*/
形式にするのは少し抵抗があります

242 :デフォルトの名無しさん:2009/06/07(日) 12:54:49
Use built-in class diagram generator
だと継承に関するクラス階層図がうまく表示されますが、
Use dot tool from the GraphViz package
だとうまく表示されません。

このようなHTMLになってしまいます。
http://loda.jp/uploader_nrnrnr/?id=4
(これには再現する簡単なソースとDoxyfile、出来上がったHTMLが含まれています。)

環境はWindows XP SP2で、
doxygenはdoxygen-1.5.9-setup.exeを使ってインストールしました。
GraphVizはgraphviz-2.22.2.msiを使ってインストールしました。

GraphVizの問題だとしたら若干スレ違いかもしれませんが、
よろしくお願いいたします。

244 :デフォルトの名無しさん:2009/06/07(日) 23:01:58
>>242-243
DOT_FONTSIZEが小さい(デフォルト値は10)のが気になりますが、
正直なところデフォルト設定と余りに違いすぎて、それだけなのかどうかは何とも。

もしこだわって作りこんだ設定でないのなら、一度デフォルト設定に戻して、
最低限必要なところだけ変えるようにしてみてはどうでしょう?

デフォルト設定にはメニューから[Settings]→[Reset to factory defaults]で戻せます。

250 :デフォルトの名無しさん:2009/06/08(月) 22:09:14
http://appleloader.bbsnow.net/pic_loader/nomal/html/1_11.html
Exportタブに何も表示されないのですがバグですか・・・?

ノートPCでは表示されました

両方 WinXP 32bit SP3 です

282 :デフォルトの名無しさん:2009/08/22(土) 16:54:46
Doxygen 1.6.0で何か変わったことある?
設定とかは変わってないよね?
また設定しなおしとか嫌よ。

283 :デフォルトの名無しさん:2009/08/23(日) 04:04:54
>>282
二重引用符で囲っていた中で @a とか使ってたのが利かなくなってましたorz
まんま " @a hogehoge "な具合に表示されてます。

バグなのか仕様変更なのかは知りません。

291 :デフォルトの名無しさん:2009/08/29(土) 14:36:45
Windows XP SP2, doxygen 1.6.1です。
http://loda.jp/uploader_nrnrnr/?id=10

このhoge.hを同じくこのDoxyfileで
HTMLドキュメント化したのですが、
クラスの構成のところで説明の最初の文字が
 http://imagepot.net/view/125152409985.gif
の様に大文字になってしまいます。

自動的に大文字にしてくれるこの仕様を回避したいのですが、
どうすればよろしいでしょうか?
よろしくお願い申し上げます。

なお、doxygen 1.5.9でも同様の現象でした。

304 :デフォルトの名無しさん:2009/09/16(水) 00:28:43
doxygenで、C++でhtmlドキュメントを作りたい時、
 ここからここまでの範囲のソースはドキュメントしないでね
あるいは
 このクラスはドキュメント化しないでね(ドキュメントに載せないでね)
といった指示はできるのでしょうか?

よろしくお願いいたします。

305 :デフォルトの名無しさん:2009/09/16(水) 03:34:57
>>304
素直な方法は、ドキュメント化したい部分に一通りdoxygen用のコメントをつけて、
EXTRACT_ALL は NO にして、
HIDE_UNDOC_MEMBERS と HIDE_UNDOC_CLASSES を YES にすることでしょうか。

そうすれば、コメントの付いている部分だけがドキュメント化されます。

306 :デフォルトの名無しさん:2009/09/16(水) 07:05:22
>>305
ありがとうございます。
私は
> EXTRACT_ALL は NO にして、
> HIDE_UNDOC_MEMBERS を YES に
まではしているのですが、
HIDE_UNDOC_CLASSES
はNOにしています。
というのも、YESにするとドキュメント化したいクラスが
標準ライブラリや他人のライブラリ(doxygenコメント化されていない)
の中のあるクラスを継承しているクラスであった場合、
継承関係がグラフ化されなくなってしまうからです。

かといってこのままでは実装用のクラスまでも
HTMLドキュメントに出て来てしまうのが
ちょっと気持ち悪いので、悩んでおります。


307 :デフォルトの名無しさん:2009/09/17(木) 01:10:31
>>306

doxyfile で
PREDEFINED = NO_DOXYGEN
としておいて、ヘッダの方で

#ifndef NO_DOXYGEN
実装用クラス

0 件のコメント:

コメントを投稿