無いので建てた
公式
http://www.doxygen.jp/
探検
【コメント】doxygen【コンソメ】
■ このスレッドは過去ログ倉庫に格納されています
2008/05/30(金) 19:50:27
285283
2009/08/23(日) 19:42:34 >>284
それは試してないのでわかりません。
以前のバージョンから、「@」は利かなくて「\」なら利く局面もありましたから、
(例えば @dot 内の URL パラメータに \ref を使うとか)
もしかすると問題ないかもしれません。
なお、「"」の代わりに「"」を使えば、「@a」も機能しました。
ソースコメントでの視認性を考えるとやりたくないですが。
それは試してないのでわかりません。
以前のバージョンから、「@」は利かなくて「\」なら利く局面もありましたから、
(例えば @dot 内の URL パラメータに \ref を使うとか)
もしかすると問題ないかもしれません。
なお、「"」の代わりに「"」を使えば、「@a」も機能しました。
ソースコメントでの視認性を考えるとやりたくないですが。
287282
2009/08/23(日) 20:21:51288283
2009/08/24(月) 02:03:19 補足です。
>>283 のような状況になっているということはつまり、
二重引用符で囲まれている部分が区別されるようになったということで、
いままで単純に1文字として「"」を使ってた部分や、
うっかり片方の引用符を忘れていた部分でエラーが出ます。
>>283 のような状況になっているということはつまり、
二重引用符で囲まれている部分が区別されるようになったということで、
いままで単純に1文字として「"」を使ってた部分や、
うっかり片方の引用符を忘れていた部分でエラーが出ます。
289どxyげん
2009/08/24(月) 10:56:52 doxygenで生成される、
左側の目次(ツリービュー)を自分が好きに
並べる方法している方いらっしゃいませんか?
誰か教えてください。
左側の目次(ツリービュー)を自分が好きに
並べる方法している方いらっしゃいませんか?
誰か教えてください。
290デフォルトの名無しさん
2009/08/25(火) 22:33:39 Doxygen 1.6.1 age
291デフォルトの名無しさん
2009/08/29(土) 14:36:45 Windows XP SP2, doxygen 1.6.1です。
ttp://loda.jp/uploader_nrnrnr/?id=10
このhoge.hを同じくこのDoxyfileで
HTMLドキュメント化したのですが、
クラスの構成のところで説明の最初の文字が
http://imagepot.net/view/125152409985.gif
の様に大文字になってしまいます。
自動的に大文字にしてくれるこの仕様を回避したいのですが、
どうすればよろしいでしょうか?
よろしくお願い申し上げます。
なお、doxygen 1.5.9でも同様の現象でした。
ttp://loda.jp/uploader_nrnrnr/?id=10
このhoge.hを同じくこのDoxyfileで
HTMLドキュメント化したのですが、
クラスの構成のところで説明の最初の文字が
http://imagepot.net/view/125152409985.gif
の様に大文字になってしまいます。
自動的に大文字にしてくれるこの仕様を回避したいのですが、
どうすればよろしいでしょうか?
よろしくお願い申し上げます。
なお、doxygen 1.5.9でも同様の現象でした。
292デフォルトの名無しさん
2009/09/01(火) 09:31:19 >>291
lodaの方にコメントついてる。
lodaの方にコメントついてる。
293291
2009/09/01(火) 18:05:12 2chの方ばかり見ておりました。
ありがとうございます。
ありがとうございます。
294291
2009/09/01(火) 20:42:47 と思いましたら解決しませんでした。
\ mynamesp::hogeクラスです。とすると、不要な半角の\が入ってしまいます。
! mynamesp::hogeクラスです。とすると、不要な半角の!が入ってしまいます。
mynamesp::hogeクラスです。とすると、doxygenの抱えるバグ(*)により、mynamesphogeとなってしまいます。
(*)全角文字に半角英数が続き、スコープ解決演算子である::がその後ろに来たとき、::が無視されるというバグです。
どうしたらいいでしょうか?
http://loda.jp/uploader_nrnrnr/?id=10&dsq=15701579#comment-15701579
で質問させていただいている者です。
\ mynamesp::hogeクラスです。とすると、不要な半角の\が入ってしまいます。
! mynamesp::hogeクラスです。とすると、不要な半角の!が入ってしまいます。
mynamesp::hogeクラスです。とすると、doxygenの抱えるバグ(*)により、mynamesphogeとなってしまいます。
(*)全角文字に半角英数が続き、スコープ解決演算子である::がその後ろに来たとき、::が無視されるというバグです。
どうしたらいいでしょうか?
http://loda.jp/uploader_nrnrnr/?id=10&dsq=15701579#comment-15701579
で質問させていただいている者です。
295デフォルトの名無しさん
2009/09/02(水) 01:21:01296291
2009/09/02(水) 06:54:56297デフォルトの名無しさん
2009/09/04(金) 08:46:55 プログラミング言語によっては全角文字も識別子に使えることを考えると、
文中に空白で区切られずに書かれてる識別子を正しく認識して欲しいというのは、
日本語の構文を理解する必要のある無茶な要求じゃないかな。
文中に空白で区切られずに書かれてる識別子を正しく認識して欲しいというのは、
日本語の構文を理解する必要のある無茶な要求じゃないかな。
298デフォルトの名無しさん
2009/09/04(金) 12:51:33 そうか?
別に煽りたい訳じゃ無いけど、消えてしまうのは文字コードの問題だと
考えるのが普通では?
だって構文解析いらないでしょ。
別に煽りたい訳じゃ無いけど、消えてしまうのは文字コードの問題だと
考えるのが普通では?
だって構文解析いらないでしょ。
299297
2009/09/05(土) 01:43:17 >>298
消えてしまうのはバグだと思うけど、
クラスメンバを認識して自動的にリンクを張る機能があるんだから、
その過程で「::」を特別扱いしてると思うのよ。
ていうかごめん、言葉が足りなかったわ。
言いたかったのは、バグが起きにくい書き方をするように
歩み寄ってもいいんじゃないかということなんで。
消えてしまうのはバグだと思うけど、
クラスメンバを認識して自動的にリンクを張る機能があるんだから、
その過程で「::」を特別扱いしてると思うのよ。
ていうかごめん、言葉が足りなかったわ。
言いたかったのは、バグが起きにくい書き方をするように
歩み寄ってもいいんじゃないかということなんで。
300デフォルトの名無しさん
2009/09/10(木) 14:47:25 1.6.1を入れたのだけど、doxywizardで項目名が赤くなるのはどういう意味?
301デフォルトの名無しさん
2009/09/10(木) 19:41:01302300
2009/09/10(木) 20:03:13303デフォルトの名無しさん
2009/09/14(月) 00:04:39 Javaで使っているのですが、クラス階層図や関数の呼び出し図などで、
クラス名がパッケージ名を含む長い名前になるのを避ける方法はあるでしょうか?
例えば、以下のサンプルですと、図からorg.byteml.の部分を取り除きたいです。
http://byteml.sourceforge.net/html/classorg_1_1byteml_1_1serialize_1_1ByteMLBuilder.html
クラス名がパッケージ名を含む長い名前になるのを避ける方法はあるでしょうか?
例えば、以下のサンプルですと、図からorg.byteml.の部分を取り除きたいです。
http://byteml.sourceforge.net/html/classorg_1_1byteml_1_1serialize_1_1ByteMLBuilder.html
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 にすることでしょうか。
そうすれば、コメントの付いている部分だけがドキュメント化されます。
素直な方法は、ドキュメント化したい部分に一通り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ドキュメントに出て来てしまうのが
ちょっと気持ち悪いので、悩んでおります。
ありがとうございます。
私は
> EXTRACT_ALL は NO にして、
> HIDE_UNDOC_MEMBERS を YES に
まではしているのですが、
HIDE_UNDOC_CLASSES
はNOにしています。
というのも、YESにするとドキュメント化したいクラスが
標準ライブラリや他人のライブラリ(doxygenコメント化されていない)
の中のあるクラスを継承しているクラスであった場合、
継承関係がグラフ化されなくなってしまうからです。
かといってこのままでは実装用のクラスまでも
HTMLドキュメントに出て来てしまうのが
ちょっと気持ち悪いので、悩んでおります。
307デフォルトの名無しさん
2009/09/17(木) 01:10:31309307
2009/09/17(木) 16:45:15 >>308
後で見返してよく考えたら「NO_DOXYGEN」だと意味逆でしたね。
まあそれはともかく、この方法を使うと、
たとえば利用者マニュアル用 doxyfile と
内部開発者用 doxyfile とかを使い分けて
(それぞれ別々の PREDEFINED を設定しておく)、
コード内では #ifndef を使ってマニュアルに出したいものを制御
なんてこともできます。
後で見返してよく考えたら「NO_DOXYGEN」だと意味逆でしたね。
まあそれはともかく、この方法を使うと、
たとえば利用者マニュアル用 doxyfile と
内部開発者用 doxyfile とかを使い分けて
(それぞれ別々の PREDEFINED を設定しておく)、
コード内では #ifndef を使ってマニュアルに出したいものを制御
なんてこともできます。
311306
2009/09/18(金) 00:20:10 #ifndef DOXYGEN
実装用クラス
#endif
としてみましたが、
クラス一覧に相変わらず実装用クラスが出力されます。
doxygen 1.6.1, Windows XP SP2
Doxyfileは
ttp://loda.jp/uploader_nrnrnr/?id=11
です。
恐れ入りますが、>>307さんのdoxygenのバージョンはいくらでしょうか?
実装用クラス
#endif
としてみましたが、
クラス一覧に相変わらず実装用クラスが出力されます。
doxygen 1.6.1, Windows XP SP2
Doxyfileは
ttp://loda.jp/uploader_nrnrnr/?id=11
です。
恐れ入りますが、>>307さんのdoxygenのバージョンはいくらでしょうか?
312306
2009/09/18(金) 00:20:56 ちなみにちゃんと
#ifndef DOXYGEN
になっています。
#ifdef DOXYGEN
だったりはしません。
よろしくお願いいたします。
#ifndef DOXYGEN
になっています。
#ifdef DOXYGEN
だったりはしません。
よろしくお願いいたします。
313307
2009/09/18(金) 01:26:34 >>311-312
doxyfile 拝見しました。
1312 行目の EXPAND_AS_DEFINED の方にマクロ名が記述されて
いるようなんですが、これを 1305 行目の PREDEFINED の方に
記述して試してもらえますか?
ちなみに、私が使用している環境は 1.6.1 で
OS は主に Mac OS X と FreeBSD です。
(一昨日くらいまで 1.5.9 使ってましたけど。)
あ、でも doxyfile は 1.5.8 の時につくったものでした。
doxyfile 拝見しました。
1312 行目の EXPAND_AS_DEFINED の方にマクロ名が記述されて
いるようなんですが、これを 1305 行目の PREDEFINED の方に
記述して試してもらえますか?
ちなみに、私が使用している環境は 1.6.1 で
OS は主に Mac OS X と FreeBSD です。
(一昨日くらいまで 1.5.9 使ってましたけど。)
あ、でも doxyfile は 1.5.8 の時につくったものでした。
314デフォルトの名無しさん
2009/09/18(金) 09:44:38315306
2009/09/18(金) 11:12:07316デフォルトの名無しさん
2009/09/18(金) 12:01:39 ttp://codepad.org/ACEXhsw8
これをdoxygenに食わせると、
クラス->構成のところで
exception
NS::hoge
となります。
画像:ttp://imagepot.net/image/125324281122.jpg
つまり何故かstd::が出力されません。
(解説本文にはstd::が出力されるのですが。)
これを
std::exception
NS::hoge
と表示させたいのですが、何か方法はありますでしょうか?
よろしくお願いいたします。
これをdoxygenに食わせると、
クラス->構成のところで
exception
NS::hoge
となります。
画像:ttp://imagepot.net/image/125324281122.jpg
つまり何故かstd::が出力されません。
(解説本文にはstd::が出力されるのですが。)
これを
std::exception
NS::hoge
と表示させたいのですが、何か方法はありますでしょうか?
よろしくお願いいたします。
317307
2009/09/18(金) 12:08:01318デフォルトの名無しさん
2009/09/18(金) 12:25:36 doxygen 1.5.8を使っているんだけど、例えばstd::vector<std::vector<int>>が通らないのね。
きちんと> >にしないといけないらしい。
きちんと> >にしないといけないらしい。
319デフォルトの名無しさん
2009/09/18(金) 12:55:10320デフォルトの名無しさん
2009/09/18(金) 12:57:05321デフォルトの名無しさん
2009/09/18(金) 13:47:50322デフォルトの名無しさん
2009/09/18(金) 17:00:22 ttp://www.doxygen.jp/grouping.html#memgroup
これで生成した
ttp://www.stack.nl/~dimitri/doxygen/examples/memgrp/html/class_test.html
ですが、
今のdoxygen 1.6.1で実行しますと
Public Member Functions
や
Group2
等のグループ名が改行の余白無く上にくっついて表示されませんか?
ttp://www.doxygen.jp/grouping.html#memgroupに限らず任意のファイルを
htmlにしても起こると思うのですが、皆様はどうでしょうか?
これで生成した
ttp://www.stack.nl/~dimitri/doxygen/examples/memgrp/html/class_test.html
ですが、
今のdoxygen 1.6.1で実行しますと
Public Member Functions
や
Group2
等のグループ名が改行の余白無く上にくっついて表示されませんか?
ttp://www.doxygen.jp/grouping.html#memgroupに限らず任意のファイルを
htmlにしても起こると思うのですが、皆様はどうでしょうか?
323デフォルトの名無しさん
2009/09/19(土) 12:08:12324322
2009/09/19(土) 13:07:25 >>323
ありがとうございます。
私は同じsourceで
Doxygen1.5.9→1.6.1のアップグレードで症状が発生したため、おそらく仕様変更に伴う不具合だと思っています。
じき直ると期待しています。
ありがとうございます。
私は同じsourceで
Doxygen1.5.9→1.6.1のアップグレードで症状が発生したため、おそらく仕様変更に伴う不具合だと思っています。
じき直ると期待しています。
325デフォルトの名無しさん
2009/09/20(日) 11:44:49 > BUILTIN_STL_SUPPORTオプションをオンにしない限り、doxygen は STL クラス
を認識しません。
> STLクラス (std::string, std::vector など) を使っていても、STLソース (そ
のタグファイル) を入力としてインクルードしたくない場合は、このタグを YES
にしてください。 するとdoxygenは、STLクラスを引数に含む関数宣言と定義 (た
とえば、func(std::string); と func(std::string) {}) をマッチングします。
また、STLクラスを含む継承・コラボレーション図をより完璧で正確にすることも
できます。
といった説明がDoxygen日本語マニュアルにあるのですが、いまひとつ意味がわか
りません。
要するにBUILTIN_STL_SUPPORTはデフォルトでYESにしてしまえば良いわけでしょうか?
それとも何がデメリットがあるのでしょうか?
を認識しません。
> STLクラス (std::string, std::vector など) を使っていても、STLソース (そ
のタグファイル) を入力としてインクルードしたくない場合は、このタグを YES
にしてください。 するとdoxygenは、STLクラスを引数に含む関数宣言と定義 (た
とえば、func(std::string); と func(std::string) {}) をマッチングします。
また、STLクラスを含む継承・コラボレーション図をより完璧で正確にすることも
できます。
といった説明がDoxygen日本語マニュアルにあるのですが、いまひとつ意味がわか
りません。
要するにBUILTIN_STL_SUPPORTはデフォルトでYESにしてしまえば良いわけでしょうか?
それとも何がデメリットがあるのでしょうか?
326デフォルトの名無しさん
2009/09/23(水) 01:46:24 >>325
Doxywizard で、 BUILTIN_STL_SUPPORT にカーソルを持っていったときに
表示される説明は、もう少し分かりやすいです。
STL のクラスを使ってるけど STL のソースをインクルードしたくない場合に
YESにするようにと書いてます。
ファイルの読み込みを抑えたいような場合でしょうか。
逆に処理系付属のヘッダも読み込む設定にしていて、 BUILTIN_STL_SUPPORT も
YES にすると、二重定義のような状況になるんじゃないかと思います。
Doxywizard で、 BUILTIN_STL_SUPPORT にカーソルを持っていったときに
表示される説明は、もう少し分かりやすいです。
STL のクラスを使ってるけど STL のソースをインクルードしたくない場合に
YESにするようにと書いてます。
ファイルの読み込みを抑えたいような場合でしょうか。
逆に処理系付属のヘッダも読み込む設定にしていて、 BUILTIN_STL_SUPPORT も
YES にすると、二重定義のような状況になるんじゃないかと思います。
327325
2009/09/23(水) 11:39:21 >>326
ありがとうございます。
ちなみに
Yahoo!検索 - BUILTIN_STL_SUPPORT
ttp://search.yahoo.co.jp/search?p=BUILTIN_STL_SUPPORT&search_x=1&tid=top_ga1_sa&ei=UTF-8&pstart=1&fr=top_ga1_sa&b=11&qrw=0
こんな感じになりました。
どうやら大半の方がデフォルト値のNOにしているようです。
ありがとうございます。
ちなみに
Yahoo!検索 - BUILTIN_STL_SUPPORT
ttp://search.yahoo.co.jp/search?p=BUILTIN_STL_SUPPORT&search_x=1&tid=top_ga1_sa&ei=UTF-8&pstart=1&fr=top_ga1_sa&b=11&qrw=0
こんな感じになりました。
どうやら大半の方がデフォルト値のNOにしているようです。
329デフォルトの名無しさん
2009/09/26(土) 19:33:05331316
2009/09/27(日) 10:43:25332デフォルトの名無しさん
2009/09/27(日) 13:24:58 /** \page hojodocs 補助ドキュメント
*/
としますと
ttp://uploader.rgr.jp/src/up1067.gif
の様に
「メインページ」「クラス」「ファイル」というタブと並んで「関連ページ」というタブが出来て
その中に補助ドキュメントというページが出来ます。
これを
「メインページ」「クラス」「ファイル」というタブと並んで「補助ドキュメント」というタブが
出来るようにする方法はありませんでしょうか?
単純に/pageを何か適当な物に変えれば良いのではないかと探ってみたのですが
どうしても分かりませんでした。
よろしくお願いします。
*/
としますと
ttp://uploader.rgr.jp/src/up1067.gif
の様に
「メインページ」「クラス」「ファイル」というタブと並んで「関連ページ」というタブが出来て
その中に補助ドキュメントというページが出来ます。
これを
「メインページ」「クラス」「ファイル」というタブと並んで「補助ドキュメント」というタブが
出来るようにする方法はありませんでしょうか?
単純に/pageを何か適当な物に変えれば良いのではないかと探ってみたのですが
どうしても分かりませんでした。
よろしくお願いします。
333デフォルトの名無しさん
2009/09/27(日) 21:39:45 >>331 うちではexceptionクラスそのものが出なかった。
334316
2009/09/27(日) 22:56:11 >>333
左様でございましたか。失礼いたしました。
私の環境は
doxygen 1.6.1, Windows XP SP2
で, Doxyfile, hoge.h, 成果物htmlは
ttp://loda.jp/uploader_nrnrnr/?id=15
です。
お手数おかけ致しますが、こちらでいかがでしょうか?
左様でございましたか。失礼いたしました。
私の環境は
doxygen 1.6.1, Windows XP SP2
で, Doxyfile, hoge.h, 成果物htmlは
ttp://loda.jp/uploader_nrnrnr/?id=15
です。
お手数おかけ致しますが、こちらでいかがでしょうか?
335デフォルトの名無しさん
2009/10/01(木) 01:53:57 >>304-315
今更だけど、別の方法があったので。
@cond と @endcond で囲んだ範囲は、
@cond につけたラベルを ENABLED_SECTIONS に含めるかどうかで、
ドキュメント化するかどうかを設定できるようです。
今更だけど、別の方法があったので。
@cond と @endcond で囲んだ範囲は、
@cond につけたラベルを ENABLED_SECTIONS に含めるかどうかで、
ドキュメント化するかどうかを設定できるようです。
336デフォルトの名無しさん
2009/10/01(木) 10:49:27 >>335
こりゃいいやと試してみた。
@condと@endcondは独立したコメントブロックにないと巧く認識しないみたいで、ちょっと悩んだ。
# つまり、前後の空行を詰めるとダメっぽい。
それと、処理させないだけならセクションラベルは要らないのだけれどundocumentedにしたのは深謀遠慮。
--
/// \file foo.h
///
/// \cond undocumented
/// \brief Dummy.
/// あーだこーだ
class dummy {
public:
dummy() {}
};
/// \endcond
/// \brief Foo.
/// どーでこーで
class foo {
public:
foo() {}
};
--
# どうでもいいけど、JAVADOC_AUTOBRIEFはyesなので念の為。
こりゃいいやと試してみた。
@condと@endcondは独立したコメントブロックにないと巧く認識しないみたいで、ちょっと悩んだ。
# つまり、前後の空行を詰めるとダメっぽい。
それと、処理させないだけならセクションラベルは要らないのだけれどundocumentedにしたのは深謀遠慮。
--
/// \file foo.h
///
/// \cond undocumented
/// \brief Dummy.
/// あーだこーだ
class dummy {
public:
dummy() {}
};
/// \endcond
/// \brief Foo.
/// どーでこーで
class foo {
public:
foo() {}
};
--
# どうでもいいけど、JAVADOC_AUTOBRIEFはyesなので念の為。
337304
2009/10/01(木) 10:51:57 ありがとうございます。
プリプロセッサを使った方法はエディタで対応する最初と最後をすぐ見つけらられるという利点がありますが、
@condと@endcondを使った方法はコメントだけで解決する->ソースに手を加えてはいないという点が利点ですね。
プリプロセッサを使った方法はエディタで対応する最初と最後をすぐ見つけらられるという利点がありますが、
@condと@endcondを使った方法はコメントだけで解決する->ソースに手を加えてはいないという点が利点ですね。
338デフォルトの名無しさん
2009/10/06(火) 16:41:43 Windowsでいろんなコンパイラに対応できるライブラリを書いてるんだけど,VC++だと
クラスのコンストラクタには呼び出し規約 __fastcall が使えないので,ヘッダファイルに
以下のような定義を書きました(コンストラクタの先頭に書いておくために)。
#if defined(_MSC_VER) //VC++の場合空文字
#define __FASTCALL
#elif //その他のコンパイラの場合は__fastcall
#define __FASTCALL __fastcall
#endif
これをDoxygen(1.6.1)でドキュメント化するとき,_MSC_VERが定義されている時と定義されていない
時の説明が両方出るようにしようと思って,いろいろやってみたけどうまく行きません。
上の例はDoxygen用のコメント付けはしていませんが,Doxyfileで PREDEFINEDに_MSC_VER と
!_MSC_VER の両方を書いておくと,両方の #define__FASTCALL がドキュメント化されるところまでは
良かったのですが,行末に ///> で異なる説明を書いても両方の説明に同じものが(マージされて)
出てきてしまいます。
良い方法があったら教えてください。
クラスのコンストラクタには呼び出し規約 __fastcall が使えないので,ヘッダファイルに
以下のような定義を書きました(コンストラクタの先頭に書いておくために)。
#if defined(_MSC_VER) //VC++の場合空文字
#define __FASTCALL
#elif //その他のコンパイラの場合は__fastcall
#define __FASTCALL __fastcall
#endif
これをDoxygen(1.6.1)でドキュメント化するとき,_MSC_VERが定義されている時と定義されていない
時の説明が両方出るようにしようと思って,いろいろやってみたけどうまく行きません。
上の例はDoxygen用のコメント付けはしていませんが,Doxyfileで PREDEFINEDに_MSC_VER と
!_MSC_VER の両方を書いておくと,両方の #define__FASTCALL がドキュメント化されるところまでは
良かったのですが,行末に ///> で異なる説明を書いても両方の説明に同じものが(マージされて)
出てきてしまいます。
良い方法があったら教えてください。
339338
2009/10/06(火) 16:59:07 >>338
ちょっと間違い。上の例で #else のところが #elif になってしまっているので
修正したら,_MSC_VER と !MSC_VER を両方 PREDEFINED に書いておく
という手は使えませんでした。結局 PREDEFINED にどう書くかで,
片方のドキュメントしか作成されません。
ちょっと間違い。上の例で #else のところが #elif になってしまっているので
修正したら,_MSC_VER と !MSC_VER を両方 PREDEFINED に書いておく
という手は使えませんでした。結局 PREDEFINED にどう書くかで,
片方のドキュメントしか作成されません。
340304
2009/10/06(火) 18:24:02 >>339
PREDEFINEDでできませんか?
つまり
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
とすれば
#ifndef DOXYGEN_SHOULD_SKIP_THIS
#if defined(_MSC_VER) //VC++の場合空文字
#define __FASTCALL
#elif //その他のコンパイラの場合は__fastcall
#define __FASTCALL __fastcall
#endif
#elif /* DOXYGEN_SHOULD_SKIP_THIS */
/*! 説明を入れる。
*/
#define __FASTCALL
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
PREDEFINEDでできませんか?
つまり
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
とすれば
#ifndef DOXYGEN_SHOULD_SKIP_THIS
#if defined(_MSC_VER) //VC++の場合空文字
#define __FASTCALL
#elif //その他のコンパイラの場合は__fastcall
#define __FASTCALL __fastcall
#endif
#elif /* DOXYGEN_SHOULD_SKIP_THIS */
/*! 説明を入れる。
*/
#define __FASTCALL
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
341339
2009/10/06(火) 18:54:46 >>340
さすがに両方の説明を個別に表示することは出来ませんが,それで事足りますね。
ありがとうございました。
この方法使うと,Doxygenがスキップしない部分には,
#define __FASTCALL "" or __fastcall
とかメチャクチャ書けますねw
さすがに両方の説明を個別に表示することは出来ませんが,それで事足りますね。
ありがとうございました。
この方法使うと,Doxygenがスキップしない部分には,
#define __FASTCALL "" or __fastcall
とかメチャクチャ書けますねw
342デフォルトの名無しさん
2009/10/07(水) 04:18:00343デフォルトの名無しさん
2009/10/07(水) 04:18:44 __FASTCALL は C++ では予約識別子だな。やめといたほうがいいぞ。
344デフォルトの名無しさん
2009/10/07(水) 06:37:33 確かに。
予約されているから規格的に言えば未定義の動作になるな。
予約されているから規格的に言えば未定義の動作になるな。
345339
2009/10/07(水) 10:26:51 >>342
それだけだと,#define __FASTCALL あるいは #define __FASTCALL __fastcall のどちらかしか
ドキュメント化されないので...>>340の方法だと,>>341のようにコンパイラでコンパイルされると
困るようなメチャクチャな説明をドキュメント化できるのでわかりやすい。
理想的には,
#define __FASTCALL
VC++ではコンストラクタに__fastcallが使えないので空文字として定義される
#define __FASTCALL __fastcall
VC++以外では__fastcallとして定義される
みたいにドキュメント化されるといいんだけど,難しそうなので>>341に書いたように
#define __FASTCALL (null string) or __fastcall
VC++ではコンストラクタに__fastcallが使えないので空文字として定義される。VC++以外では__fastcallとして定義される。
のようにドキュメント化されれば実用上は問題ないと思う。
>>343
大文字の方も予約されてるとは知らなかった。ありがと〜。
それだけだと,#define __FASTCALL あるいは #define __FASTCALL __fastcall のどちらかしか
ドキュメント化されないので...>>340の方法だと,>>341のようにコンパイラでコンパイルされると
困るようなメチャクチャな説明をドキュメント化できるのでわかりやすい。
理想的には,
#define __FASTCALL
VC++ではコンストラクタに__fastcallが使えないので空文字として定義される
#define __FASTCALL __fastcall
VC++以外では__fastcallとして定義される
みたいにドキュメント化されるといいんだけど,難しそうなので>>341に書いたように
#define __FASTCALL (null string) or __fastcall
VC++ではコンストラクタに__fastcallが使えないので空文字として定義される。VC++以外では__fastcallとして定義される。
のようにドキュメント化されれば実用上は問題ないと思う。
>>343
大文字の方も予約されてるとは知らなかった。ありがと〜。
346デフォルトの名無しさん
2009/10/07(水) 10:48:29347340
2009/10/07(水) 18:07:29 >>346
別にメチャクチャはまあ言葉のあやなんじゃないですかね。
オフィシャルでも
ttp://www.stack.nl/~dimitri/doxygen/
> You can even `abuse' doxygen for creating normal documentation (as I did for this manual).
と言っているぐらいですし
多少の奇怪な書き方は許容範囲では?
タダの宗教論争になってしまいますが。
別にメチャクチャはまあ言葉のあやなんじゃないですかね。
オフィシャルでも
ttp://www.stack.nl/~dimitri/doxygen/
> You can even `abuse' doxygen for creating normal documentation (as I did for this manual).
と言っているぐらいですし
多少の奇怪な書き方は許容範囲では?
タダの宗教論争になってしまいますが。
348デフォルトの名無しさん
2009/10/07(水) 18:58:23 >>347
それを指摘するのは無粋。つーか、間抜け。
それを指摘するのは無粋。つーか、間抜け。
349デフォルトの名無しさん
2009/10/08(木) 01:46:49 >>347
許容範囲なんだろうけど、ここでは奇怪な書き方をする必要がない、という話。
許容範囲なんだろうけど、ここでは奇怪な書き方をする必要がない、という話。
350デフォルトの名無しさん
2009/10/10(土) 07:47:27 >3
ttp://stackoverflow.com/questions/165451/suggest-a-good-doxygen-stylesheet
なさそうだね
ttp://stackoverflow.com/questions/165451/suggest-a-good-doxygen-stylesheet
なさそうだね
351デフォルトの名無しさん
2009/10/13(火) 10:41:56 寧ろ、doxygen.cssをカスタマイズしている人には紹介してほしいなぁ。
ソースを公開しろとまでは言わないから。
後は、こんなのが欲しいなんてリクエストでもあれば創造意欲が沸くかも知れない。
ソースを公開しろとまでは言わないから。
後は、こんなのが欲しいなんてリクエストでもあれば創造意欲が沸くかも知れない。
352デフォルトの名無しさん
2009/10/13(火) 21:08:49 しかしデフォルトのにしておかないと
将来のバージョンアップに毎回追随するのが
結構つらくなるのではと予感。
将来のバージョンアップに毎回追随するのが
結構つらくなるのではと予感。
353デフォルトの名無しさん
2009/10/17(土) 13:41:17 バージョンアップでかっこよくなったりするし
354デフォルトの名無しさん
2009/10/18(日) 10:45:33 ttp://www.doxygen.jp/manual.html
このサイト死んだね。
このサイト死んだね。
355デフォルトの名無しさん
2009/10/18(日) 11:55:33 う、うん……(´・ω・`)
356デフォルトの名無しさん
2009/10/18(日) 22:36:09357デフォルトの名無しさん
2009/10/28(水) 15:51:53 privateなメンバのうち、(純粋)仮想関数だけをドキュメントに出力する方法ってないものでしょうか
EXTRACT_PRIVATE = YESとすると、見せたくないprivate変数や非仮想関数まで出てきてしまうのがイヤで・・・
EXTRACT_PRIVATE = YESとすると、見せたくないprivate変数や非仮想関数まで出てきてしまうのがイヤで・・・
358デフォルトの名無しさん
2009/10/28(水) 23:24:18359デフォルトの名無しさん
2009/11/10(火) 14:57:36 Doxygen 1.6.1 をソースパッケージから VC8 でビルドしようとしたのですが src/translator_*.h
が言語毎にいろいろなエンコーディングで保存されていて文字列リテラルの部分でエラーが大量発生する
(おそらく多バイト文字に '\' や '"' が含まれる) のですが、Windows でビルドするときは特別な
手続きがいるのでしょうか?
が言語毎にいろいろなエンコーディングで保存されていて文字列リテラルの部分でエラーが大量発生する
(おそらく多バイト文字に '\' や '"' が含まれる) のですが、Windows でビルドするときは特別な
手続きがいるのでしょうか?
360デフォルトの名無しさん
2009/12/05(土) 01:55:28 クラスメソッドの詳細の、“コンストラクタ・デストラクタ”のセクションに
デストラクタが入らないのはdoxygenのバグだよね?
あと、@nameコマンドで1つのクラスに同じ名前のメンバグループを
複数作った場合、それぞれが別のグループとして吐き出されるのは仕様?
あ、どっちも1.6.1の話ね
デストラクタが入らないのはdoxygenのバグだよね?
あと、@nameコマンドで1つのクラスに同じ名前のメンバグループを
複数作った場合、それぞれが別のグループとして吐き出されるのは仕様?
あ、どっちも1.6.1の話ね
361デフォルトの名無しさん
2009/12/05(土) 12:30:58363360
2009/12/07(月) 16:44:48 >>362
ソースはマニュアル内のこのページ(ttp://www.doxygen.jp/docblocks.html)の
サンプルをそのまま使用
本体のバグでないならヘッダの問題かと思い、いろいろ試してみた結果、
INPUT_ENCODING=Shift_JISにした時に問題が起きた(CP932なら問題無し)
ちなみに、出力されないわけじゃなくて、通常の関数と同じセクションに
デストラクタが入ってる
デストラクタ名がチルダでなくオーバーバーで表示されてたので、
doxygenがデストラクタと認識してくれないのが原因か?
ソースはマニュアル内のこのページ(ttp://www.doxygen.jp/docblocks.html)の
サンプルをそのまま使用
本体のバグでないならヘッダの問題かと思い、いろいろ試してみた結果、
INPUT_ENCODING=Shift_JISにした時に問題が起きた(CP932なら問題無し)
ちなみに、出力されないわけじゃなくて、通常の関数と同じセクションに
デストラクタが入ってる
デストラクタ名がチルダでなくオーバーバーで表示されてたので、
doxygenがデストラクタと認識してくれないのが原因か?
364デフォルトの名無しさん
2009/12/07(月) 23:10:54 >>363
CP932
にしろってオフィシャルでどっかに書いてあったような気がする。
> デストラクタ名がチルダでなくオーバーバーで表示されてたので、
> doxygenがデストラクタと認識してくれないのが原因か?
その可能性が高そうだ。
CP932
にしろってオフィシャルでどっかに書いてあったような気がする。
> デストラクタ名がチルダでなくオーバーバーで表示されてたので、
> doxygenがデストラクタと認識してくれないのが原因か?
その可能性が高そうだ。
365デフォルトの名無しさん
2009/12/14(月) 10:46:24366デフォルトの名無しさん
2009/12/14(月) 14:13:25367デフォルトの名無しさん
2009/12/17(木) 02:23:51 >>365-366
Qtのマニュアルは開発元内製の非公開のツールで作られているそうです。
doxygenが作られたのもそれが理由だそうで。
ttp://lists.trolltech.com/qt-interest/2007-07/thread00457-0.html
Qtのマニュアルは開発元内製の非公開のツールで作られているそうです。
doxygenが作られたのもそれが理由だそうで。
ttp://lists.trolltech.com/qt-interest/2007-07/thread00457-0.html
368デフォルトの名無しさん
2009/12/18(金) 13:27:05 素敵なcssがほしい。
369デフォルトの名無しさん
2009/12/24(木) 13:46:58 EXTRACT_PRIVATE = NO の設定で一部の private 関数を文書化する方法はあるでしょうか?
やりたいことは、ある基底クラスに private の仮想関数を定義して (派生クラスでその仮想関数
をオーバーライドするユーザーのために) その関数の仕様を Doxygen で出力することです。
やりたいことは、ある基底クラスに private の仮想関数を定義して (派生クラスでその仮想関数
をオーバーライドするユーザーのために) その関数の仕様を Doxygen で出力することです。
370デフォルトの名無しさん
2009/12/24(木) 21:33:52371デフォルトの名無しさん
2009/12/29(火) 09:09:16 ttp://uploader.rgr.jp/src/up1598.png
このように、ソース中の'が'と表示されてしまうんですが、
対策をご存じの方いらっしゃいますか?
また、他の方がたはこの問題が再現しますか?
サンプルソースは
ttp://uproda.2ch-library.com/lib200801.zip.shtml
DLキーはdoxygen
です。
ここのget_widechar.hをDoxygenにかけてhtmlを出力させると
上述の画像のようになります。
このように、ソース中の'が'と表示されてしまうんですが、
対策をご存じの方いらっしゃいますか?
また、他の方がたはこの問題が再現しますか?
サンプルソースは
ttp://uproda.2ch-library.com/lib200801.zip.shtml
DLキーはdoxygen
です。
ここのget_widechar.hをDoxygenにかけてhtmlを出力させると
上述の画像のようになります。
372デフォルトの名無しさん
2009/12/29(火) 09:40:19 html4ではなくxml1の読めるブラウザを使えばいいんでない?
# 根本は解決していないけど。
例えば、IE6がこれに該当するからIE8を入れるとか。
どうしても根本的に解決したいなら、ソースを修正するとか出力を加工するとか。
つーか、手元のソースとDoxygenでは再現しないしzipをダウンロードするのは嫌なんだけど、
再現できる状態でここに貼れる程度に短くできない? それと、Doxygenのバージョンも宜しく。
# 根本は解決していないけど。
例えば、IE6がこれに該当するからIE8を入れるとか。
どうしても根本的に解決したいなら、ソースを修正するとか出力を加工するとか。
つーか、手元のソースとDoxygenでは再現しないしzipをダウンロードするのは嫌なんだけど、
再現できる状態でここに貼れる程度に短くできない? それと、Doxygenのバージョンも宜しく。
373デフォルトの名無しさん
2009/12/29(火) 12:07:45 >>372
確かにIE6で見ていたらだめでしたが、
Firefoxなら正しく表示されました。
ソースは
ttp://codepad.org/7giB9nil
で、Doxygenは1.6.1です。
設定は
DOXYFILE_ENCODING = CP932
OUTPUT_LANGUAGE = Japanese
このぐらいです。
確かにIE6で見ていたらだめでしたが、
Firefoxなら正しく表示されました。
ソースは
ttp://codepad.org/7giB9nil
で、Doxygenは1.6.1です。
設定は
DOXYFILE_ENCODING = CP932
OUTPUT_LANGUAGE = Japanese
このぐらいです。
374デフォルトの名無しさん
2009/12/29(火) 13:06:29 手元の1.5.9じゃ再現できないや。1.6.1持ちか詳しい人待ちだな。
375デフォルトの名無しさん
2009/12/29(火) 16:06:24 >>374
意外に1.5.9って1.6.1より動作安定してたりしますよね。
ちなみに画像
ttp://uploader.rgr.jp/src/up1598.png
を出力したhtmlファイル(の一部)は
ttp://codepad.org/OijY25xj
こんな感じで、この中にある
'
となっている部分を単純に
'
に置換してしまえば
IE6, Firefoxともに問題無く表示出来る様です。
・・・ってこんな対策でいいのでしょうか?
'を単純に'に置換してしまってまずい場合とかありますでしょうか?
意外に1.5.9って1.6.1より動作安定してたりしますよね。
ちなみに画像
ttp://uploader.rgr.jp/src/up1598.png
を出力したhtmlファイル(の一部)は
ttp://codepad.org/OijY25xj
こんな感じで、この中にある
'
となっている部分を単純に
'
に置換してしまえば
IE6, Firefoxともに問題無く表示出来る様です。
・・・ってこんな対策でいいのでしょうか?
'を単純に'に置換してしまってまずい場合とかありますでしょうか?
376デフォルトの名無しさん
2009/12/29(火) 16:51:13 html4.01にはaposがないんだからしょうがないんじゃない?
377デフォルトの名無しさん
2009/12/29(火) 17:23:37378デフォルトの名無しさん
2010/01/03(日) 02:55:32 Doxygen 1.6.2 age
379デフォルトの名無しさん
2010/01/03(日) 21:21:40380379
2010/01/03(日) 23:52:47 仕様 変わりすぎだよチクショー!!!!!
381デフォルトの名無しさん
2010/01/04(月) 00:08:12 doxygen.css
の仕様が変わりすぎでございますorz
バージョンが0.01違いなのに、こんなに変わるものだとは。
Doxygenって後方互換性という言葉には興味ないの?
の仕様が変わりすぎでございますorz
バージョンが0.01違いなのに、こんなに変わるものだとは。
Doxygenって後方互換性という言葉には興味ないの?
382>>379-381
2010/01/04(月) 21:42:35 俺以外に
Doxygen 1.6.2
を使ってる人 居ないの?
なんだか、
1. C++0xが公式仕様策定されて
2. ちゃんと各種コンパイラで実装されて
3. 現実的にC++0xを使っても大丈夫だと思うくらいになって
4. Doxygen がC++0xに対応完了
このくらいの条件を満たさないかぎり、別にアップデートしなくてもいい気がしてきた。
ブラウザとか中核ソフトとは違ってセキュリティもクソもない・・・しね?
Doxygen 1.6.2
を使ってる人 居ないの?
なんだか、
1. C++0xが公式仕様策定されて
2. ちゃんと各種コンパイラで実装されて
3. 現実的にC++0xを使っても大丈夫だと思うくらいになって
4. Doxygen がC++0xに対応完了
このくらいの条件を満たさないかぎり、別にアップデートしなくてもいい気がしてきた。
ブラウザとか中核ソフトとは違ってセキュリティもクソもない・・・しね?
383デフォルトの名無しさん
2010/01/06(水) 14:43:02■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「おこめ券は米以外の食品も買える。効果的な活用を」 地元で農水相 [山形県] [少考さん★]
- 【速報】「女芸人No.1決定戦 THE W」9代目女王にニッチェ! 7年ぶり3度目で悲願の優勝 [牛丼★]
- 【芸能】『女芸人No.1決定戦THE W』 粗品が最後にバッサリ「優勝賞金1000万円にしてはレベル低い大会」 [冬月記者★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★11 [蚤の市★]
- 今年の流行語大賞 『働いて働いて働いてまいります』が受賞で不快感… 過労自殺の遺族らが会見「家族にむち打つような行為だ」 [冬月記者★]
- 【沖縄】開業4ヵ月でこれは…“国民の税金”投入の『ジャングリア沖縄』で見た衝撃的な光景と、モチベーションが低い一部スタッフの現状 [ぐれ★]
- クズ「勉強頑張らなかった奴は一生DQNと一緒に肉体労働しろ」☚勉強頑張れるのも環境と巡り合わせなんだが? [783475554]
- インド料理屋に抗議に行った
- 【正論】検察「山上よ、どんな事情があろうと暴力が許されない」 [442080748]
- 熱はないけど倦怠感があるんやが
- 若いころパパカツしてカリカリ女になって適当な男と結婚したほうが大体は幸せになるというじじつ
- 年末年始にしか会わない親戚
