2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

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

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

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

2 :デフォルトの名無しさん:2008/05/30(金) 21:01:14 .net
このスレはアイちゃんがうんたらかんたら

3 :デフォルトの名無しさん:2008/05/30(金) 23:18:24 .net
標準のスタイルシートも見飽きてきたんだけどなんか格好いいdoxygen用のスタイルシート
配布してるサイトってないの?

4 :デフォルトの名無しさん:2008/05/30(金) 23:19:18 .net
          ,r-、 l l l /:/
         ,.ノ-'、,!l ,! ,!:/"
  ..-''''~`'ーy'⌒`;'"ヾ,.`,r''"`:,
  '"`'ー-,,r____i';';';';';';';';';'; -j. ゙;
  --....i',.tノ;';';';':'..:::::..':';';';'(.λ
  -_.=/t-';';';';'..::::::. .:::::..';';';  ,!-ー''
  " _!_..>;';';';';'; ::::::::: ;';';';';r'〈ー--
  ,r'",>,i、'r;';';';';';';';';';';';';';' ,!イヽt-''
   ,r'" `t-,ッヽ、;';';';'.'.' i" ヽ ヽ,
  /    `''j   ーπ-'゙`'ー'r'~
        `ー、,__/ ':,

5 :デフォルトの名無しさん:2008/05/31(土) 11:13:21 .net
>>3
そういえば見ないな
Java風とかw

6 :デフォルトの名無しさん:2008/06/02(月) 15:25:50 .net
このスレは大器晩成型

7 :デフォルトの名無しさん:2008/06/04(水) 13:17:22 .net
これだけ使われていてなんで今まで無かったんだろう。

8 :デフォルトの名無しさん:2008/06/04(水) 21:34:38 .net
>>7
>>2-6見てわかんないの?

9 :デフォルトの名無しさん:2008/06/05(木) 11:54:36 .net
Doxygenってやたらデグレ多くない?
やっとバグが直ったと思ったら今まで動いていた部分がおかしくなったり。
いつまでたっても満足のいく出力ができない。

10 :デフォルトの名無しさん:2008/06/05(木) 12:29:52 .net
最新版はツリーが文字化けしたりしないか?


11 :デフォルトの名無しさん:2008/06/05(木) 21:06:31 .net
output japaneseでやってるけど、左のツリーが化けてる
検証はしてない

12 :デフォルトの名無しさん:2008/06/06(金) 00:15:15 .net
おまいら Javadoc 風と Qt 風のどっちでコメント書いてる?

13 :デフォルトの名無しさん:2008/06/06(金) 12:28:19 .net
///

14 :デフォルトの名無しさん:2008/06/06(金) 13:18:08 .net
ようやくスレが出来たから聞ける
「doxygen」って何て読むの?読んでる?


15 :デフォルトの名無しさん:2008/06/06(金) 13:23:32 .net
>>14
doxygenの公式ページのFAQに書いてある

16 :デフォルトの名無しさん:2008/06/06(金) 13:40:56 .net
うは。こんな過疎スレで即レスサンキュー
でも、英語読めませーん

---------------------------------
doxygenはどのように名前を持っていましたか?
Doxygenは単語ドキュメンテーションとジェネレータで遊ぶのから名前を得ました。
ドキュメンテーション - 医者 - dox
発電機 - 情報を得てください。
当時、私が法とyaccを調べていたので、事態は、「y」で、発音可能につけ加えて、なりました(適切な宣告はDocs-ee情報を得ています、長い「e」があるそう)。(そこでは、多くのものが"yy"から始まります)。
---------------------------------
翻訳したけど意味わかりませーん

「ドキシゲン」でいいのかな?


17 :デフォルトの名無しさん:2008/06/06(金) 13:55:55 .net
ドキシジェンだろ

オキシジェンデストロイヤーから連想して

18 :デフォルトの名無しさん:2008/06/06(金) 14:11:10 .net
documentation-generator → docs-ee-gen だから
カタカナ表記ならドキシジェンかドクシジェンじゃないかな
俺もドキシジェンって言ってる

19 :デフォルトの名無しさん:2008/06/06(金) 15:53:35 .net
どくしげんって脳内発音してた

20 :デフォルトの名無しさん:2008/06/06(金) 18:23:18 .net
げんしけん

21 :デフォルトの名無しさん:2008/06/07(土) 00:02:59 .net
やっぱ読み方わからない奴結構いるんだな

22 :デフォルトの名無しさん:2008/06/07(土) 00:38:33 .net
d + oxygen に見えるからドキシジェンだろ。

23 :デフォルトの名無しさん:2008/06/07(土) 03:42:43 .net
ドキシゲンって読んでたお

HTMLでは、文字化けしないのに
chm作ると、左側の一覧文字化けする
どうしたらいいんだ

24 :デフォルトの名無しさん:2008/06/07(土) 06:03:46 .net
Goo辞書でoxygenの発音
http://dictionary.goo.ne.jp/voice/o/00060383.wav
これにdをつけて読むだろ条項

25 :デフォルトの名無しさん:2008/06/07(土) 14:19:08 .net
doxygenうまいこと使ってる
日本語の人って

Seleneの人以外に居る?
http://selene-lue.halfmoon.jp/

26 :デフォルトの名無しさん:2008/06/07(土) 14:46:47 .net
>>25
「うまいこと」の意味がわからんな。
何か変わった使い方してるの?

27 :デフォルトの名無しさん:2008/06/07(土) 19:16:40 .net
>>25
日本語の使い方が(ry

28 :デフォルトの名無しさん:2008/06/08(日) 01:04:30 .net
チョンでごめんなさい
>うまいこと
俺と比べて、丁寧に利用している意味。
というか、普通に活用してるって意味。

29 :デフォルトの名無しさん:2008/06/08(日) 01:29:52 .net
>>28
じゃぁ、居るよ、ってことで。

30 :デフォルトの名無しさん:2008/06/08(日) 02:37:06 .net
>>29
氏ね

31 :デフォルトの名無しさん:2008/06/10(火) 22:40:18 .net
まだ30レスにしか達していないのかよ!!

32 :デフォルトの名無しさん:2008/06/11(水) 00:36:37 .net
>>7
今まで単独スレが無かっただけで、話すら無かったわけではないぞ。

良いドキュメント・マニュアル・仕様書を書くスレ
http://pc11.2ch.net/test/read.cgi/tech/1065364445/l50

33 :デフォルトの名無しさん:2008/06/14(土) 14:49:17 .net
Doxygen が吐き出す XML のフォーマットってどっかに仕様書ある?

34 :デフォルトの名無しさん:2008/06/14(土) 18:14:58 .net
XMLなら名前空間のところにURLがあるんじゃないの?

35 :デフォルトの名無しさん:2008/06/15(日) 09:05:34 .net
名前空間のURLのところにスキーマがあるとは限らない

36 :デフォルトの名無しさん:2008/06/15(日) 18:25:33 .net
スキーマって意味まで定義しているんだったっけ。

37 :デフォルトの名無しさん:2008/06/15(日) 18:28:10 .net
隙間って何ですか

38 :デフォルトの名無しさん:2008/06/18(水) 21:45:54 .net
C 言語のソースから HTML 文書を生成するときにモジュールのページに
1つの関数に対して func() と Struct::func() のような2つの名前が表示
されてしまうのですが func() だけにできないでしょうか?

39 :デフォルトの名無しさん:2008/06/19(木) 00:03:43 .net
>>38
OPTIMIZE_OUTPUT_FOR_C はどうしてる?

40 :デフォルトの名無しさん:2008/06/19(木) 12:11:02 .net
もちろん YES です。

41 :デフォルトの名無しさん:2008/06/20(金) 03:07:40 .net
doxygenのlicenseの以下の文章の意味がよく分かりません。

Documents produced by doxygen are derivative works derived from the input used in their production; they are not affected by this license.

42 :デフォルトの名無しさん:2008/06/20(金) 03:19:30 .net
>>41
doxygen で生成した文書は生成に使われた入力の派生物、つまり、この( doxygen の)ライセンスに影響されない。

43 :デフォルトの名無しさん:2008/06/20(金) 07:56:23 .net
>>42
どうもありがとうございます。

44 :デフォルトの名無しさん:2008/06/24(火) 14:33:52 .net
C++ のクラスの中の using 宣言は文書化されないのでしょうか?

45 :デフォルトの名無しさん:2008/06/26(木) 11:37:10 .net
インハウスのCライブラリにコメントつけてDoxygenしたら、
100ページ超のrefman.pdfが出来上がってたまげた。

調子に乗ってデベロッパーズマニュアルまでDoxygenで書いてる。
細かいところでアレな事はあるけど、まだ後悔はしていない。
リファレンスマニュアルやサンプル実装と相互参照できていい感じ。
こういうのは、Docbookとかだとめんどくさくて。


46 :デフォルトの名無しさん:2008/07/06(日) 09:53:21 .net
グラフ中のフォントサイズが変更できないんですが、cssを直接弄るしかないんでしょうか

47 :デフォルトの名無しさん:2008/07/11(金) 02:25:54 .net
doxygen使えるな

48 :デフォルトの名無しさん:2008/07/11(金) 20:05:04 .net
VBのコードvbfilter.pyでをdoxygenで出力するとき、一部の宣言の説明が出力されません。
下の例だと、「関数の説明1」が出力されません。
どなたかVBでdoxygenしてる人助言下さい。お願いします。

'*
'*@class cTest
'*@brief テストクラス
'*@author me
'*@version 1.0
'*

'*@fn Function fncTest(obj as Variant)
'*関数の説明1
Public Function fncTest(obj as Variant) As Variant
fncTest = Nullpo
End Function

'*@fn Function fncTest2(obj as Variant)
'*関数の説明2
Public Function fncTest2(obj as Variant) As Variant
fncTest2 = obj.Nullpo
End Function


49 :デフォルトの名無しさん:2008/07/11(金) 21:27:54 .net
>>48
vbfilter.pyの出力を晒してみそ


50 :デフォルトの名無しさん:2008/07/13(日) 02:15:19 .net
>>48
vbfilter.py は、空行を捨ててしまうんですが、
cTest のドキュメントブロックと fncTest のドキュメントブロックがくっついててもいいんでしたっけ?
私も自信ないので…
自分で使う分は空行を通すようにしたりとか、色々と手を加えて使ってます。

なお、 vbfilter.py の説明に、クラスの説明用のコメントは「'*」じゃなくて「'!」で始めるとあります。

それと、doxygen のマニュアルに書いてますが、説明する対象の直前に置くなら、 @fn コマンドはいりませんよ。

51 :50:2008/07/13(日) 02:33:51 .net
>>48
もうひとつ思い出した。

vbfilter.py は分割行には対応してないので、
実際の fncTest の1行目の宣言が複数の行に分割されてたら認識してくれません。

52 :デフォルトの名無しさん:2008/07/14(月) 04:02:29 .net
>>50
ありがとうございます!
おかげで正常に出力できました。
ちなみに、関数の前に@fnをつけないとやはり出力されませんでした。
仕方なくつけることにします。

'*@class cTest
'!@brief テストクラス
'!@author me
'!@version 1.0

'*@fn fncTest(obj as Variant)
'*@brief 関数の説明1
Public Function fncTest(obj as Variant) As Variant
fncTest = Nullpo
End Function

'*@fn fncTest2(obj as Variant)
'*@brief 関数の説明2
Public Function fncTest2(obj as Variant) As Variant
fncTest2 = obj.Nullpo
End Function


53 :50:2008/07/14(月) 20:30:08 .net
クラス名は、ファイル名やフォーム名から vbfilter.py が勝手に付けるので、
@class コマンドもいりませんよ。

@fn コマンドをつけないと出力されないのは、
1行目の @class コマンドの行頭が「'*」になっているために、
fncTest のドキュメントブロックとくっついてしまって
おかしな事になっているのではないでしょうか。

「'*」で始まる行と「'!」で始まる行は違うタイミングで処理されます。
最初に「'!」で始まる行が検出されて、クラス用のドキュメントブロックが出力され、
対応するc++形式のクラス定義が開始されます。
次にファイルの先頭から1行ずつパターンマッチングされて、
関数の1行目や変数定義や「'*」で始まるコメントがc++の書式に変換されます。
この段階では「'!」で始まる行は飛ばされます。
最後に「}」が出力されて、最初のクラス定義が閉じられます。

なお、関数の中身は全部捨てられてます。
中身の変換の機能追加も一時考えたんですが、挫折しました……。

54 :デフォルトの名無しさん:2008/08/01(金) 22:14:18 .net
ツリー部分の日本語が文字化けしてしまうんですが、どうやったら解決できるでしょう?
今のところ手動で変更してますが、Doxygenの設定でどうにかしたいです。

55 :デフォルトの名無しさん:2008/08/01(金) 23:03:48 .net
doxygenのバージョンと動かしているOS、食わせているファイルのエンコードとDoxyfileの設定などの情報をどうぞ。
私のところでは文字化けしていないので。
# 尤も、日本語のファイル名なんて使ってないからファイル名が化けない保証はないが。

56 :デフォルトの名無しさん:2008/08/02(土) 01:33:38 .net
>>54
バージョン1.5.6 なら、Doxygen自体のバグっぽいです。
公式のバグレポートには、ポーランドの人からも
ポーランド語特有の文字が化けると報告されてます。

1.5.5と1.5.6でツリービューの処理が変わってるので、
そこでエンコーディングの処理をミスしたまま、
作者様はラテン1な国の人なので気付いてないってとこではないかと。

57 :デフォルトの名無しさん:2008/08/02(土) 08:56:42 .net
>>54
1.5.5を使う


58 :55:2008/08/02(土) 09:09:18 .net
お、私が使っているのはCygwinのインストーラで入れた1.5.5だ。

59 :デフォルトの名無しさん:2008/08/02(土) 09:13:10 .net
>>56
thx! (54じゃないけど)

60 :54:2008/08/05(火) 21:35:07 .net
ありがとうございます!バージョンの違いってのは気づきませんでした・・・・
これでキー一つでビルド&ビルド後処理ができるようになりました。

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

62 :デフォルトの名無しさん:2008/08/26(火) 16:27:23 .net
>>61
そんなことしなくても、コメントの付いてない関数も含めて無理矢理出力させるオプションがあったはず。
DoxyfileのEXTRACT_ALLの項目をNOからYESに変えてみたら?

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

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

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

66 :61:2008/08/26(火) 23:15:44 .net
>>64 >>65
先ほどgccxmlを使用して自宅の環境で関数の位置と引数の情報を取得することができました。
ここからコメントを挿入していけばよさそうです。
お二人はdoxygen以外に勉強しなきゃいけないことがあるように思いますよ。
本当にありがとうございました。

67 :65:2008/08/26(火) 23:33:51 .net
>>66
四行目が蛇足すぐるwww
でもまあ、健闘を祈る。
あと、無理するなよ。形だけのドキュメント作業なら特に。

68 :61:2008/08/26(火) 23:56:08 .net
>>67
大丈夫ですよ、あなたみたいにひ弱じゃありませんから。

69 :61:2008/08/27(水) 00:18:56 .net
名無しに戻ろうと思ったのですが偽者が湧いたので。
>>66は私本人ですが、>>68はどこぞの馬の骨です。

>>67
ありがとうございます。
"努力と根性"という言葉に何故かカチンときてしまい棘のある文章になってしまいました。
プログラマやその上司が気軽に使っていい言葉ではないと考えます。
たかが2chの戯言なのに、と自分でも驚いていますが。
ドキュメントはネット上で一般公開予定なので、なるべく解りやすいものを心がけます。

これ以降、私が>>61で書き込むことはありません。
書き込みがあったとしたら、それは私以外の誰かです。

70 :61:2008/08/27(水) 00:21:13 .net
いいえ、>69こそがどこぞの馬の骨です。
そもそも、まともな神経をしていたらレスをつけてくれた人に馬の骨なんて使うわけないじゃないですか。

71 :65:2008/08/27(水) 00:41:27 .net
ワロタw

72 :デフォルトの名無しさん:2008/09/13(土) 10:38:25 .net
>>61もその程度で躓くレベルでしかもきもいときた

73 :デフォルトの名無しさん:2008/09/25(木) 11:13:21 .net
word出力したら途中までしかクラスが出てこないのは何故?

74 :デフォルトの名無しさん:2008/09/25(木) 12:25:23 .net
>>73
htmlでも出ない?
なんか変な記述があるとそれ以降が出ないことがあった。なんだかは忘れた。

75 :デフォルトの名無しさん:2008/09/25(木) 13:04:40 .net
>>74
htmlだと全部出てるだけど、途切れてる部分見直してみる
ありがと

76 :73:2008/09/25(木) 13:26:05 .net
>>74
確認してみたけど、特に変な記述は見当たらなかった
でも、たまに出力先のwordでカタカナ部分が文字化けしているとこがあった
OUTPUT_LANGUAGEがJapaneseだと全く表示されず、Japanese-enだと途中まで表示されて
今Englishに変えたら文字化けだらけだけど全部出てきた

INPUTもOUTPUTもcp932でしてるんだけど、どうすりゃ文字化けせずに日本語だせるかな…

77 :73:2008/09/26(金) 15:47:20 .net
追加報告です。
doxygenのVer1.54使っていましたが、1.47でword出力すると問題なくできました
ご迷惑おかけしました

78 :デフォルトの名無しさん:2008/09/27(土) 08:34:51 .net
doxyはバージョンあげると劣化することもあるからなあ
最新版のツリー表示の日本語化け直らないかなあ


79 :デフォルトの名無しさん:2008/10/03(金) 00:09:52 .net
1.5.7 age

80 :デフォルトの名無しさん:2008/10/09(木) 12:07:46 .net
v1.5.7.1 age

81 :デフォルトの名無しさん:2008/10/12(日) 12:08:52 .net
>>78
1.5.6でchm形式でインデックスのエンコーディングを選べるようになって文字化けが解消されたから、それで我慢すれ

82 :デフォルトの名無しさん:2008/10/21(火) 20:34:18 .net
C言語の構造体で、gccのattributeがメンバ「関数」扱いされてしまう
これどうにかならないかな?
OPTIMIZE_OUTPUT_FOR_CはYESになってる

struct Foo
{
    int Bar __attribute__((aligned(32)));

83 :デフォルトの名無しさん:2008/10/21(火) 22:37:43 .net
>>82
Cにない構文は、INPUT_FILTERにsedかなにかのスクリプトを指定して事前に取り除くしか。

84 :デフォルトの名無しさん:2008/10/22(水) 01:29:05 .net
>>82 http://www.google.co.jp/search?q=doxygen+%5f%5fattribute%5f%5f

85 :82:2008/10/22(水) 10:40:25 .net
>83-84
ありがとう、ただそれだとattributeが消えちゃうよね
なんとか残したまま正しく動作させたいんですよ

86 :デフォルトの名無しさん:2008/10/22(水) 12:17:14 .net
1.5.x で enum EnumName に対して @relatesalso StructName を書くと StructName のページに
EnumName が出るようになるのですが、enum のメンバーのリストが表示されなってしまいました。
1.4.x ではできていた記憶があるのですが、1.5.x で正常にする方法はあるでしょうか?

OPTIMIZE_OUTPUT_FOR_C は YES です。

87 :デフォルトの名無しさん:2008/10/22(水) 12:57:19 .net
>>85 情報後出しキター

88 :デフォルトの名無しさん:2008/10/22(水) 13:22:05 .net
>>85
あんたの言う正しい動作って何なの?

89 :デフォルトの名無しさん:2008/10/24(金) 09:34:27 .net
正しく=attributeを残したまま、メンバ変数はメンバ変数として認識だろjk

90 :デフォルトの名無しさん:2008/10/24(金) 09:39:03 .net
正しくって……
そんな拡張に一一対応しろってのか?
ソースあるんだろうから自分でやれよと思うのだが。

91 :デフォルトの名無しさん:2008/10/24(金) 10:10:38 .net
いちいちソース書き換えとかコスト見合わないでしょ
だからそれ以外でなんとかする方法を探してるんじゃないか?

まあattributeは確かに独自拡張だが、gccだし割とよく使われてるんで対応してても良いと思う

92 :デフォルトの名無しさん:2008/10/24(金) 10:15:31 .net
汎用的に
構文解析時だけ指定キーワードを無視するオプションがあればいい
つか、ないのかな?

93 :デフォルトの名無しさん:2008/10/24(金) 18:10:58 .net
>>91
あなた流に言うと、コストに見合わないので対応しません

94 :デフォルトの名無しさん:2008/10/25(土) 00:44:08 .net
作者かよww

95 :デフォルトの名無しさん:2008/10/25(土) 17:40:51 .net
そもそもC言語にメンバ関数は無いんだからdoxygenのバグとも言えるだろ
想定外の構文には警告なりエラーなり出して欲しいよな

96 :デフォルトの名無しさん:2008/10/26(日) 00:08:33 .net
例えば@paramとかって変えられないの?

97 :デフォルトの名無しさん:2008/11/08(土) 17:25:21 .net
mac osx 10.5.5
doxygen 1.5.7.1

で実行しようとすると、Failed to run doxygen と言われて一切実行できません。
対処法知っている方、教えて下さい。

98 :デフォルトの名無しさん:2008/11/19(水) 23:51:11 .net
クラス関連図って作れますか?
1クラスの構造を図にはできるみたいですが・・・
C++です。

99 :デフォルトの名無しさん:2008/11/20(木) 00:02:36 .net
graphvizがあればできるよ。

100 :デフォルトの名無しさん:2008/12/17(水) 20:18:15 .net
@dateの後ろに付ける日付をsubversionが自動更新してくれるように
$Date$にしたら、出来たhtmlで日付の見出しが2重になってました。
もしかしてバージョン管理システムのキーワードをdoxygenが認識して
適当に見出し付きで整形してくれるんでしょうか。
マニュアルにそれらしい説明を見た覚え無いんですが。

101 :デフォルトの名無しさん:2008/12/21(日) 21:45:55 .net
公式とかで、きちんとした例が*.hしかないと思うのは気のせい?

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

103 :デフォルトの名無しさん:2008/12/27(土) 23:00:37 .net
日本語がうまく通らない原因ってどこにあるの?

104 :デフォルトの名無しさん:2008/12/28(日) 00:28:11 .net
>>100
doxygenは$date$を認識するみたいだね。だから@dateは書かなくていい


105 :デフォルトの名無しさん:2008/12/28(日) 04:51:23 .net
Doxygen 1.5.8 age

106 :デフォルトの名無しさん:2008/12/28(日) 05:06:03 .net
アップデートコネーから自分で作るか…

107 :デフォルトの名無しさん:2008/12/28(日) 09:17:52 .net
>>101
ヘッダーに書けば十分だからじゃないかな。

でも、詳細をヘッダーに長々と書いてヘッダーが読みにくくなりそうなときは、詳細だけcppに分けて書くことはあるよ。それでもdoxygenはちゃんとまとめてくれる


108 :101:2008/12/28(日) 15:47:03 .net
>>107 thx

十分かとも思えてきた。
概要かけばいいんだもんな。
漏れは最近doxygen向けのコメント付けはじめたからもうちょい使って慣れてみるわ

109 :デフォルトの名無しさん:2008/12/28(日) 19:40:09 .net
>>103
Shift-JISコードの2バイト目に\を割り当てたマイクロソフトに原因がある。


110 :102:2008/12/29(月) 14:53:28 .net
更に追加。他にも、エスケープすべき文字をエスケープしていない箇所を発見。
xyzzyの場合の正規表現置換でこれを行なうとかなり改善する。
(query-replace-regexp "\\(\\\\'..\\)\\([{}][^
][^t]\\)" "\\1\\\\\\2")
# 場当たり的だなぁ……

111 :102:2008/12/29(月) 14:56:31 .net
あー、済まない、補足。

文字列中に出てくる「{」も「}」も、どちらもエスケープしなければならないと言うのが>110の対応。
但し、文字列中かどうかの判断を厳密に行ないたくないので手元のファイルで場当たり的に対応してある。

誰か、ソース拾ってきて対策してくれる奇特な人はいないもんかのぉ。

112 :デフォルトの名無しさん:2008/12/29(月) 16:04:40 .net
>>111
文字列として表示されるべき「{」や「}」がエスケープされてないってこと?

いつもHTMLしか出してなかったんだけど、試しに手元にあるソースでRTF出してみたら、
こちらではリストをネストさせてるところで、上の階層の行末の書式文字の「{」が
普通の文字として扱われたりして、「{」と「}」の対応が崩れてエラーになってるっぽいです。
(いや、ネストされて表示はされてるから、書式文字以外に余分に「{」が付いてる?)

行末が特定の文字(「定」とか「得」とか)の場合になるみたいだけど、
条件がよくわかりません…

113 :102:2008/12/29(月) 16:16:27 .net
>>112
2バイト文字の2バイト目に{}\のいずれかが来るケースで、エスケープされないようです。
# 「定」「得」どちらも該当しないようですが……

処が文字列を明示的に区切らないのがRTFの仕様らしくて、キーワードとしての{や}と区別が難しいのですよ。
実は>102の対策だけだと{}の対応が崩れてしまってrtfの一部だけしか読み込まれないことが判って気づいたんですが。
# 客先に実態の1/3程度しか分量がない資料を提出しちゃったのは内緒w

念のため確認したら、手元のDoxygenはCygwin同梱の1.5.5でした。
# さて、rtfを変換するツールを真面目に作るのとdoxygenそのものを修正するのとどっちが楽だろかw

114 :デフォルトの名無しさん:2008/12/29(月) 16:26:38 .net
>>113
だいぶ前からエンコーディング指定して全部一旦 UTF-8 に変換されるようになったから
その手の問題は解決済みだと思ってるんだけど、何かバージョン上げれない理由でもあるの?

115 :デフォルトの名無しさん:2008/12/29(月) 17:54:50 .net
cygwinの最新は1.5.5-1だね。
つまり、解決済みではないらしい。

116 :デフォルトの名無しさん:2008/12/29(月) 18:19:03 .net
cygwinは使ってないので、それが理由かどうかは知りませんが、
1.5.6から1.5.7.1まではフレーム付きHTMLのツリービューで
英数字以外が文字化けするという問題がありました。
2日前に出たばかりの1.5.8でやっと解決されました。

117 :デフォルトの名無しさん:2008/12/29(月) 19:13:27 .net
>>115
Windows ネイティブ版を使えない理由があるの?

118 :デフォルトの名無しさん:2008/12/29(月) 20:15:40 .net
全部一旦 UTF-8 に変換されるようになったのは、1.5.2以降だから、
>>113, >>115 の cygwin版も UTF-8 に変換されるバージョンです。

最新版でも日本語RTFはかなり駄目な感じです。
手元のソースを処理させてみたら、目次の見出しの「目次」の後ろとか、
あちらこちらに見えてはいけない「\par」や「{」が見えて、
本文数ページで破綻します。

119 :デフォルトの名無しさん:2008/12/29(月) 20:53:32 .net
HTML だと問題ないってことかな? HTML しか使ってないからよくわかんないや。

120 :118:2008/12/29(月) 22:31:08 .net
昔、1.4.6でRTFを作ったことのあるソースを、設定をほとんど変えずに1.5.8に掛けても駄目でした。
1.4.6で作ったRTFの半分ぐらいしかファイルサイズがありません。
むしろ内部処理が UTF-8 になってから、おかしくなったんじゃないかという気がしてきました。

121 :デフォルトの名無しさん:2008/12/29(月) 23:06:51 .net
折角色々対応してあったのを、UTF-8にしたのを機に捨ててしまったような感じだな。
この正月休みの間に暇があるようならソースでも見てみるか。

122 :デフォルトの名無しさん:2008/12/30(火) 01:23:34 .net
過去のバージョンを取ってきて順に試してみました。
1.5.0までは日本語の RTF が生成できて
(おかしなところが無いかまではチェックしてませんが)、
1.5.1で、
"Warning: Output language Japanese not supported! Using English instead."
と表示され、日本語が表示できませんでした。
ここで一旦無かったことにされたようです。

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

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

124 :デフォルトの名無しさん:2008/12/30(火) 03:58:34 .net
repopかければいいのに。

rtfって何で読めるんだろう。AbiWord?ooo?

125 :デフォルトの名無しさん:2008/12/30(火) 08:55:13 .net
>>123
事はそう単純じゃない。というか、もっと単純。
内部UTF-8をcp932に変換して、必要ならエスケープすべきなのにそれをしていないと言うのが>102=113の観測だろ。
例えば「ソソ」が「\'83\\\'83\\」にならないといけないのに「\'83\\'83\」になると。

それとも、二種類の問題が独立して存在しているのか?

126 :123:2008/12/30(火) 10:22:07 .net
>>125
ああ、すいません。
>>123で書いたのは、1.5.8の場合の問題です。
>>102,,>>113の、.1.5.5の問題はエスケープされてないというので合ってると思います。
1.5.8でそれに対する対応が入れられたけど、方法がまずく、
今度は逆にエスケープすべきでないところまでされたという話。

127 :デフォルトの名無しさん:2008/12/30(火) 11:17:38 .net
>>78
1.5.8で直った

128 :デフォルトの名無しさん:2009/01/08(木) 07:49:37 .net
とりあえず保守ですが、あけおめ。

日本語rtf使えるようになるといいですね

自分はまだ皆様のようにハックに参加できるほど技術がないので、精進したいと思います。

129 :102:2009/01/08(木) 09:55:41 .net
又更につまらない問題に遭遇。
折角修正したrtfがWordだと読めるのにOpenOfficeだと文字化けする。
例えば、「\'83\\」のような>125が指摘した例だと、「\'83\'5c」のようにしないといけないらしい。
あーもう、rtfを解析するしかないのかなぁ。
# doxygen1.5.8で変わっているらしいからそっちに手を出すのは避けたいし。

130 :デフォルトの名無しさん:2009/01/08(木) 22:19:22 .net
解決しました。ありがとうございました。

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

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

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

133 :デフォルトの名無しさん:2009/01/11(日) 01:06:49 .net
うはw ぼくとしては>102さんに期待してるんだけどっw

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

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

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

135 :デフォルトの名無しさん:2009/01/12(月) 02:36:31 .net
>>134 ソース位置ありがとう。
これって、よくわかってないけど、postProcess()で、ファイル全体を
エスケープしてるのかな。
もしそうなら、rtfでの表示される文字列以外も全部エスケープされて
しまい、上のバグが症状がでてるんじゃないかな?
rtf表示文字列だけをエスケープするようにするには、postProcess()
の中でやってちゃだめで、rtfgen.cpp(にあるか知らないけど)
で表示文字列をrtfタグ中に埋め込む時コード当たりでやらないといけなそう?

とりあえず、doxygenをWindowsでコンパイル出来る環境作り
からやらないといけないのが辛いorz


136 :デフォルトの名無しさん:2009/01/12(月) 08:13:44 .net
>>135
頑張れw
Cygwinなら協力する。
# つーか、ソース拾ってきて自分でやれ>自分

137 :134:2009/01/12(月) 21:40:12 .net
>>135
0x80より大きい値とmb_flagが1のときだけエスケープされるはずです。
1.5.7.1以前のバージョンではmb_flagが無くて、0x80より大きい値という条件しかなかったので、
マルチバイト文字の2バイト目が「{」や「\」などの場合におかしくなってました。

mb_flagをマルチバイト文字の1バイト目で1にすれば、
次のバイトが0x80以下でもエスケープされるという仕組みのはずですが、
mb_flagの設定方法がまずくて、2バイト目でクリアされなくて
さらに次のバイトまでエスケープされる場合がある、という状況です。

ttp://bugzilla.gnome.org/show_bug.cgi?id=437346
で、T.Matsuyama氏が提示したコードが正しく動くはずです。

#そこまで分かってるな自分でやれ、と言われそうだ……
すいません、環境作りが荷が重いですorz

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

139 :デフォルトの名無しさん:2009/01/14(水) 22:17:06 .net
おー、これは凄い。後で試してみるか。

140 :デフォルトの名無しさん:2009/01/27(火) 01:28:30 .net
てか、>>137のURLが示すバグをreopenして開発者に教えてあげればいいんじゃないの?
アカウント持ってないから誰でもreopenできる設定なのかはわからないけど

141 :デフォルトの名無しさん:2009/01/27(火) 07:49:20 .net
いかん、未だ試せてない……

142 :デフォルトの名無しさん:2009/01/30(金) 01:55:55 .net
コメントが一切ついてないソースに
関数の定義部分だけ自動的に
タグを生成してくれるツールないですか?

143 :デフォルトの名無しさん:2009/01/30(金) 02:14:58 .net
>>142 ctags?

144 :デフォルトの名無しさん:2009/01/30(金) 07:39:05 .net
>>142
このスレ的には、タグというとDoxyfileのタグのことになるのだがそれでいいのかい?

145 :デフォルトの名無しさん:2009/01/30(金) 07:42:20 .net
@が付くやつがいい

146 :デフォルトの名無しさん:2009/01/30(金) 08:23:53 .net
ドキュメントつけしてない関数も出力するオプション?

147 :139:2009/02/15(日) 17:55:27 .net
やっと>138を試せた。取り敢えず、cygwinからでも使えることと日本語が化けないことは確認した。
但し、OpenOffice(3.0)では{comment[^{}]}を取り除く必要があったこととTITLEなどのフィールドは
巧く変換できなかったけれど、これは元からそうなのかもしれない。
今度機会があれば、素直にMSwordに食わせてみるとしよう。

148 :139:2009/02/17(火) 18:58:43 .net
cygwinで>138を動かし、できたRTFをWORD2000に食わせた。
全選択してフィールドの更新、画像アンリンクのマクロを動かして、
docに名前を変えて保存。一応、スタンダロンで使える資料になるようだ。

で、画像アンリンクのマクロって需要あるかな。あるようならどっかで公開するけど。

149 :デフォルトの名無しさん:2009/02/28(土) 05:29:11 .net
doxygenのライセンスってGPLですよね。
doxygenのコメントを書いたソースって公開しないと駄目ですか?

150 :デフォルトの名無しさん:2009/02/28(土) 05:39:00 .net
ならないよ
GPLのお絵かきソフトで絵を描いたようなもん

151 :149:2009/02/28(土) 05:50:38 .net
>>150
ありがとうございます

152 :デフォルトの名無しさん:2009/03/03(火) 10:33:16 .net
DoxyfileもGPLに該当しないのかな。
それとも、コメント部分は削除しておいた方が無難?

153 :デフォルトの名無しさん:2009/03/03(火) 22:08:28 .net
ソフトのドキュメントを作るのにDoxygenを利用してもGPLにする必要なし。
ソフトの機能としてDoxygenを利用する場合はGPL。

154 :デフォルトの名無しさん:2009/04/06(月) 21:16:11 .net
@a と @p ってどう使い分けてる?
どっちも文中の引数のフォントを変えるために使うものみたいだけど。

155 :デフォルトの名無しさん:2009/04/08(水) 12:32:53 .net
\aは「特殊なフォント」ということで一般的にはItalicかな。
\pは\cと等価で「タイプライタフォント」ということで等幅フォントが使われる。
後は、実際の出力を見て検討したら?

156 :154:2009/04/09(木) 00:04:14 .net
普通はどうする、ということは特になくて、見た目の好みで使えばいいのですか。
ヘルプを見ると、@aは "refer to member arguments" 、
@pは "refer to member function parameters" と書かれてて、
微妙に使い分けがあるようなないような、よく分からなかったもので。

157 :デフォルトの名無しさん:2009/04/09(木) 07:14:32 .net
意味で使い分ければいいと思う。
フォントとかの体裁はCSSで変えられるんじゃなかったかな?やったこと無いけど。

158 :デフォルトの名無しさん:2009/04/09(木) 08:11:53 .net
@a の argument が実引数で @p の parameter が仮引数なわけだけど、
コメント中では仮引数しか現れない気がする。実引数が現れることなんてあるか?

159 :デフォルトの名無しさん:2009/04/09(木) 09:06:56 .net
恣意的に使い分ければいいんじゃね?

>>157
出力するものによって指定するスタイルシートや指定方法は違うけど、htmlならcss,だね。
やったことないけどw

160 :デフォルトの名無しさん:2009/04/10(金) 04:10:58 .net
member argumentがクラスのメンバー変数ってことはないかな。

161 :デフォルトの名無しさん:2009/04/10(金) 23:50:56 .net
>>158
@p param1 の値が @a xxx だったら〜
みたいな説明を書くのに使うとか?

162 :デフォルトの名無しさん:2009/04/25(土) 21:37:10 .net
メソッドのコメントは、戻り値がなくても「@return なし」と明示的に書くべきでしょうか?
引数がない場合も同様に「@param なし」と書くでしょうか?

163 :デフォルトの名無しさん:2009/04/25(土) 21:38:20 .net
前者はお好きにどうぞ。
後者は「なし」なんて引き数はないぞって警告が出るんじゃないかな?

164 :162:2009/04/25(土) 21:45:11 .net
>>163
レスありがとうございました。
確認したら「@param なし」ではwarning argumentと出ましたのでこれは書かないようにします。

165 :デフォルトの名無しさん:2009/04/30(木) 13:43:57 .net
今の大会は、開発環境の違いによる面白さもあると思う。
共通スペックでやるなら別に大会をおこせばよいと思う。

166 :デフォルトの名無しさん:2009/04/30(木) 13:45:15 .net
>>165
誤爆しました。すみません。

167 :デフォルトの名無しさん:2009/04/30(木) 23:56:10 .net
Doxygen 1.5.9 age

168 :デフォルトの名無しさん:2009/05/01(金) 00:16:08 .net
さっきまでは1.5.8だったのに。早速試すぜ。

169 :デフォルトの名無しさん:2009/05/12(火) 10:55:11 .net
ソースの先頭のコメントの 理想的なサンプル を教えて。
言語は問わないけど、出来ればCで。

170 :デフォルトの名無しさん:2009/05/12(火) 18:22:26 .net
理想的かどうか知らんが、私の典型。
--
////////////////////////////////////////////////////////////////
/// \file foo.c
/// \brief あーたらこーたら
///
/// あーたらこーたらをあーたらこーたらするとかなんとか。
/// \date 2009/3-4
/// \author bar\@site
/// \attention なんだかんだ
/// \version hage.hige.hoge
//
--

171 :デフォルトの名無しさん:2009/05/13(水) 04:06:28 .net
>>169
とりあえず最小限はこうだろ。 JAVADOC_AUTO_BRIEF オンで。

/** @file
* 簡単な説明.
* 詳細な説明
*/

170 のやつだと、ファイル名はどうせ名前変更したときに更新し忘れるし、
日付や作者やバージョンはバージョン管理ソフトに任せればいい。
詳細な説明も attention も必要に応じて、だな。とにかく書かないで済むものは
書かないのが一番。

172 :デフォルトの名無しさん:2009/05/13(水) 09:19:41 .net
>>170
ありがとうございます。

>>171
そのバージョン管理ソフトに書かせるので心配ゴム用です。

173 :デフォルトの名無しさん:2009/05/13(水) 16:20:47 .net
表書くのってtableタグ使うしかないんでしたっけ?
それだとソース上で見づらいんで、
リストみたいに簡易記法があればいいんですけど。

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


175 :デフォルトの名無しさん:2009/05/13(水) 23:26:06 .net
>>174
おすすめとは言えない

でも面白い使い道がある事は確か

実際に走らせてみて「おー」とか言って楽しむものだと思う

176 :デフォルトの名無しさん:2009/05/14(木) 09:55:19 .net
>>174
クラス関連図とか、煩いクライアント向けのコーリングツリーを作るのに便利。
# 余程酷いソフトハウスに当たった経験があるのか、関数の依存関係を知りたがるクライアントがいるのよ。

177 :174:2009/05/14(木) 22:16:15 .net
>>175-176
ほっほー。
ありがとう。
「ある程度習熟するために勉強を要してめんどくさそうだ」
と思っていたが、試してみようかなあ。

178 :デフォルトの名無しさん:2009/05/14(木) 23:43:40 .net
>>177
コメント付いてないのも全部出力する設定で、
とりあえず手持ちのソースそのまま掛けてみたらいいよ。

それで出来上がるものが気に入れば、それから書き方に慣れていったらいいし。

179 :デフォルトの名無しさん:2009/05/14(木) 23:50:13 .net
Graphvizの使い方が秀逸だと思う
これは出力結果を印刷してじっくり眺めたい

180 :177:2009/05/15(金) 06:46:11 .net
>>178
ありがとう。分かった、そうしてみるわ。

181 :デフォルトの名無しさん:2009/05/15(金) 09:37:18 .net
客先から小汚いソースを受け取ったら、取り敢えずDoxygenに掛けて
静的解析するのは基本だな。

182 :デフォルトの名無しさん:2009/05/15(金) 10:09:23 .net
>>171
subversionとかの置き換えキーワードもdoxygenは認識してドキュメント化してくれる。

183 :デフォルトの名無しさん:2009/05/21(木) 13:35:09 .net
ちょっと詳しい説明を箇条書きで入れたいんだけど、
空白行が入るとパラグラフが終わってしまうので、空白行を一切入れないで
長い文章を書かなきゃいけなくなり、なんていうか
ソースコードのコメントが非常に見づらい。本末転倒な気がするんだけど、
空白行を無視してくれる方法とか、ない?

184 :デフォルトの名無しさん:2009/05/23(土) 02:32:07 .net
>>183
ソースコード上でだけ行間が空いてればいいのなら、
全角スペースを入れておけばどうでしょう?
ドキュメント上で行が連結されたときに、余分な空白が入りますが。

ドキュメントでも行間が空くようにしたいのなら、
行頭の邪魔にならないところにでも「@n」を入れておくぐらいしか思いつきません。

185 :デフォルトの名無しさん:2009/05/24(日) 13:15:10 .net
doxygenの文字化け対策
ttp://d.hatena.ne.jp/kmt-t2/20090403/1238718375
ここに救われた俺がいる。

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

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


187 :174:2009/05/24(日) 16:39:03 .net
doxygen気に入ってきた。


C++とdoxygen最新版にて。

ドキュメント作ると名前解決に使う::がドキュメントにもりこまれたり盛り込まれなかったりする。
例えばNameS::MyClassが、
ドキュメントの100行目ではNameS::MyClassになっているのに
101行目ではNameSMyClassになっていたりする。

これはどう解決すればいい?


188 :デフォルトの名無しさん:2009/05/25(月) 10:31:42 .net
>>187
このレスの流れを見ても分かるように、Doxygenは文字コードの扱いが未だ未だ不安定だったりする。
あんたの言う、「ドキュメント」がrtf出力ならこのスレにある対策版を使ってみた方がいいかもしれないし、
chm出力なら>185を参考にするといいかもしれない。

189 :デフォルトの名無しさん:2009/05/25(月) 20:01:17 .net
>>186
@mainpageコマンドでメインページに入れるか、
@pageコマンドで独立したページにすればどう?

190 :174:2009/05/25(月) 23:27:45 .net
>>188
ありがとう。
説明不足だったね。
ドキュメントはフツーのHTMLなんだよね〜。chmじゃなくて。

>185をやってみたら文字化けは解消したんだけど
>> ドキュメントの100行目ではNameS::MyClassになっているのに
>> 101行目ではNameSMyClassになっていたりする。
この現象は解決しないのだ。。。



191 :186:2009/05/25(月) 23:41:59 .net
>>189
@pageコマンド
なんて初めて知ったわ。

どこかいい解説サイトとか紹介してくれる
お方、いらしたらお願い!


192 :デフォルトの名無しさん:2009/05/27(水) 12:59:53 .net
>>191
doxygenに付いてくるサンプルも参考になるよ。
当然全部英語だけど、記述例のソースと
それを使って出力されたドキュメントがある。
コマンドの説明が知りたかったら、
>>1 のサイトの日本語版マニュアルを見ればいいし。

193 :186:2009/05/27(水) 19:11:01 .net
>>192
そうか、ありがとう。
見てみるよ。

194 :デフォルトの名無しさん:2009/05/28(木) 03:59:47 .net
いつの間にかDoxywizardもだいぶ使いやすくなったんだな

195 :186:2009/05/28(木) 06:28:18 .net
俺は最近doxygenを使い始めて、
最初に
Doxywizard
を使ってかなり直感的に操作できたから知らなかったが、
そうなのか。前は使いづらかったのか。

grach

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

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

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

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


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

198 :196:2009/05/30(土) 23:13:55 .net
>>197
ttp://loda.jp/uploader_nrnrnr/?id=2
こんなHTMLが生成されました。

どうなんでしょう。。。?

199 :197:2009/05/31(日) 00:25:04 .net
>>198
define_test.h ファイルのドキュメントのページができてないね。
>>196 のソースをコピペして同じ名前で保存してみたけど、
こっちじゃちゃんと出力されてるよ。

Doxyfile 晒してもらえるなら、何が違うか比べてみるけど。

200 :197:2009/05/31(日) 00:31:38 .net
>>198
もしかして、SHOW_FILESがOFFになってない?
Doxywizard使ってるなら、ExpartのBuildの下の方。

201 :196:2009/05/31(日) 04:59:33 .net
>>200
丁寧にありがとうございます。
Doxyfileは以下です。
C++ code - 1503 lines - codepad
ttp://codepad.org/aNCHcRW3
お願いします。

202 :196:2009/05/31(日) 05:04:41 .net
追記:
  SHOW_FILES=NOになっていましたが、
  YESにしても変わりませんでした。
  私の環境は
  windows xp sp2
  doxygen 1.5.9です。

203 :197:2009/05/31(日) 05:45:10 .net
>>201
WARN_IF_DOC_ERROR を ON にしたら判明した。
ENABLE_PREPROCESSING が OFF だとマクロは見てくれないらしい。

204 :197:2009/05/31(日) 05:51:37 .net
補足

WARN_IF_DOC_ERROR を ON にしたら、
「マクロにコメント書いてるけど、ENABLE_PREPROCESSINGがOFFだからスキップしたよ」
というようなメッセージが表示された。

205 :196:2009/05/31(日) 14:59:44 .net
>>204
ありがとうございます。
WARN_IF_DOC_ERRORとENABLE_PREPROCESSINGをYESにしてみましたが、
結果は代わりありませんでした。
Doxyfileはこちらです。
ttp://codepad.org/rsH3deU0
設定を読み込み直していないなどということはなく。
doxygenのウィンドウに表示される情報は
ttp://codepad.org/bqYOU7ug
の通りです。

すみませんがよろしくお願い申し上げます。

206 :196:2009/05/31(日) 22:27:30 .net
追記:
  テキストエディタでDoxyfileを開き、
  = NO
  を検索して全て
  = YES
  に置換してみました。
  それでdoxygenを走らせたところ、見事#defineは出力されました。
  やはり設定が問題な様です。



207 :196:2009/05/31(日) 22:43:14 .net
どこの設定が問題なのか探るために
Doxyfileにて二分木法的にNOをYESに置換してみました。

ファイルのど真ん中の行を基準に上だけないし下だけを
全部NO→YES置換を行いました。

しかし、このどちらも#defineが出力されません。
やはり複数の設定項目が関わっているようです。

208 :196:2009/05/31(日) 22:56:12 .net
解決しました。

正解は
・ENABLE_PREPROCESSINGをYESにする。
・SHOW_FILESをYESにする。
でした。両方が同時に満たされていないとだめなようです。

お手数をおかけ致しました!

209 :197:2009/06/01(月) 01:23:37 .net
>>205-208
解決したようなのでもういいかもしれないけど、
WARN〜系の設定は、出力状態を変更させるためのものではなくて、
コメント付けてるのに出力されない設定になってるとか、
記述漏れがあるとか、そういうエラーメッセージを表示するためのもの。

今後何かうまくいかないときに参考になるかもしれないので念のため。

210 :196:2009/06/01(月) 05:54:55 .net
>>209
はい、WARN〜系の設定に関して、よく頭に入れておきます。

ありがとうございました。

211 :デフォルトの名無しさん:2009/06/01(月) 23:20:24 .net
Windows XP SP2, doxygen 1.5.9です。
htmlドキュメントを生成すると、
本文中のstd::coutのようなスコープ解決演算子が消えてしまい、
stdcoutになってしまうことが多々あります。
再現するソースやその結果のhtml, Doxyfileは以下の様です。
ttp://loda.jp/uploader_nrnrnr/?id=3

具体的にはこのソースにて
 Test::foo()は
 numをstd::coutに出力します。
になるはずが
 Test::foo()は
 numをstdcoutに出力します。
になってしまいます。

再現条件は絞れておりません。
どうかお知恵をおかしください。
よろしくお願い申し上げます。


212 :デフォルトの名無しさん:2009/06/02(火) 02:54:51 .net
>>211
理由はよく分からないけど、std::coutの前後に空白を入れたら正しくなりました。
識別子っぽいものに非ASCII文字がくっついてたらおかしくなるってことじゃないかと思うんですが。

213 :211:2009/06/02(火) 06:08:56 .net
>>212
たしかに、前後に空白で正しく表示されます。
本当に適用したいソース(再現用ソースでない)でもうまく表示されます。
ありがとうございました。

214 :デフォルトの名無しさん:2009/06/02(火) 23:53:16 .net
>>195
今のdoxywizardはver.1.5.8(去年の暮れ頃)からですね。

基本的な設定項目だけのwizardモードと、
設定可能な項目が全部表示されるexpertモードの2本立てというのは
昔も今も変わりませんが、
設定を変えたら保存しないと実行できなかったとか、
設定項目のセクション切り替えがタブで、expertモードだと
たくさん並んでるのをぐるぐるスクロールさせる必要があったとか、
細かいところで少し不便でした。

マニュアルに載ってるスクリーンショットは旧バージョンのような気がします。

215 :デフォルトの名無しさん:2009/06/02(火) 23:58:29 .net
doxygenで、1カ所に書いたコメントを複数箇所で参照する方法はありますか?

例えば、
hoge.h内で@version 1.1.1
という記述が同じhoge.h内で他にも複数箇所に登場する場合、
全部に@version 1.1.1と書いてしまうとバージョンを上げる時に
全箇所を手動で修正する羽目になってしまいます。

どうにかする手段はありますか?



216 :デフォルトの名無しさん:2009/06/03(水) 02:07:50 .net
>>215
設定ファイルのALIASESで@version 1.1.1に別名をつければ、
バージョンを上げるときはそこだけ変えればOK

というのはどうでしょう?

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

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

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

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

218 :デフォルトの名無しさん:2009/06/03(水) 08:40:05 .net
>>217
特定の形式にしないと、ドキュメントにしないコメントと区別できないですからね……

使えるコメント形式はマニュアルの「Documenting the code」にいろいろ例があります。
(日本語マニュアルは古くて少し情報が少ないです)

今までのに比較的近いのは
/*****************************************************//**
* Test.cpp
* 2009.09 by Tester
* テスト用のクラス
*********************************************************/
でしょうか。

219 :デフォルトの名無しさん:2009/06/03(水) 10:41:33 .net
>>217
最初と最後の //****** はそのままで、途中の行だけ先頭の//を3文字にすればいい

220 :デフォルトの名無しさん:2009/06/03(水) 10:48:32 .net
つまり、こうだな。
//********************************************************
/// \file Test.cpp
/// \date 2009.09
/// \author Tester
/// \brief テスト用のクラス
//********************************************************


221 :デフォルトの名無しさん:2009/06/03(水) 16:06:28 .net
>>217
俺も抵抗があったけど、
変えてみたら意外と平気だったよ。
要は見慣れるかどうか。

222 :デフォルトの名無しさん:2009/06/03(水) 16:09:51 .net
>>216
ALIASES
なんてものがあるのですね。
ありがとうございます、試してみます。

223 :デフォルトの名無しさん:2009/06/03(水) 22:23:44 .net
>>218-221 thanks

ですが、ファイルの最初のコメントを
//********************************************************
/// \file Test.cpp
/// @file TEST.cpp
//********************************************************

と色々やってみたのですがうまくいきませんでした・・
ファイルの最初だと///ではドキュメント化されないのでしょうか
クラス宣言前や関数前では///で書いたコメントはちゃんとドキュメント
のコメントとなっておりました。

ちなみに、ファイル一覧からコードを見るとなぜか明朝体?で表示されてしまいます。
以下のドキュメントのようにゴシック表示をしたいのですが、Font設定はどのようにすればよいでしょうか?
http://www.ee.t-kougei.ac.jp/tuushin/lecture/technicalWriting/euclid/html/euclid_8c-source.html



224 :デフォルトの名無しさん:2009/06/03(水) 22:57:41 .net
追加で質問失礼。

Player.hの内容↓

/** @brief クラスの簡易説明
 * このクラスの使用目的・使用方法など詳しい情報を書く。
 * @todo 必要であれば記述
 * @bug バグがあれば記述
*/

#if !defined (__PLAYER_H__)
#define __PLAYER_H__

class CPlayer
{
...
}


というプログラムだと、インクルードガードのほうに

マクロ定義
#define __PLAYER_INFO_BASE_H__
クラスの簡易説明  * このクラスの使用目的・使用方法など詳しい情報を書く。

というドキュメントが付いてしまうのですが、
インクルードガードは一番上に書かなければいけないのでしょうか?

できればファイルに関するコメントを一番上に記述したいのですが・・・

225 :デフォルトの名無しさん:2009/06/03(水) 23:10:52 .net
さらに追加質問ですいませんorz


出力されたドキュメントは任意の名前のフォルダに作成されますが、
index.htmlが他の細かいファイルと一緒のフォルダにあるため探しづらいです。
そのため、index.htmlだけ残して他のファイルを別のフォルダに押し込む
というようなフォルダ構成を構築したいのですが、そういったことは可能でしょうか?

226 :デフォルトの名無しさん:2009/06/03(水) 23:33:53 .net
>>223
ファイルの最初のコメント:
ファイル名の大文字・小文字の問題かもしれません。
ファイル名無しで @file だけにしてみてはどうでしょうか。

フォント:
フォントはデフォルトのスタイルシートで、
font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
と設定されてるので、
特にカスタマイズしてなければゴシックで表示されるはずなんですが。

>>224
対象を指定しないドキュメントは、直後にあるものに関連づけられます。
ファイルに関するコメントにしたいなら、@file が必須です。

227 :デフォルトの名無しさん:2009/06/04(木) 08:53:01 .net
>>224
本題とは直接関係ないと思いますが、ドキュメントに「 * 」が入ってるのが気になりました。
コメント行頭の「 * 」のところ、全角スペース使ってませんか?

228 :デフォルトの名無しさん:2009/06/04(木) 23:00:02 .net
>>226-227
thanks.

一度doxygenを全削除して再インストールしたら
なんとかファイル要約関連のコメントはでるようにできました。

229 :デフォルトの名無しさん:2009/06/05(金) 00:21:06 .net
また質問なのですが、
以下のような複数行について同じコメントをつけたい場合は
何かうまい記述法はありますか?

例:

/// 3D座標を示す値.
int nX;
int nY;
int nZ;

このままですと、nXだけにコメントがついてしまうため、
3つの変数全てに同じコメントを出すようにしたいのですが・・・

int nX;///< 3D座標を示す値x.
int nY;///< 3D座標を示す値y.
int nZ;///< 3D座標を示す値z.

これだと冗長な感じでちょっと抵抗があります

230 :デフォルトの名無しさん:2009/06/05(金) 02:50:49 .net
っ nameタグ

231 :デフォルトの名無しさん:2009/06/05(金) 09:01:35 .net
>>229
普通は、一つのコメントで括られるような変数は構造体に入れるもんじゃね?

232 :デフォルトの名無しさん:2009/06/05(金) 19:33:13 .net
>>231
おお、良いこと言った!

233 :デフォルトの名無しさん:2009/06/05(金) 22:02:00 .net
>>231
座標とかだと、配列の方が扱いやすいかも
構造体の方が見やすいけどね

234 :デフォルトの名無しさん:2009/06/06(土) 08:55:20 .net
C++ code - 50 lines - codepad
ttp://codepad.org/imFgWQsK
これからdoxygenでhtmlドキュメントを生成させると、
メンバ一覧のページの上にある目次の部分は
すべてのメンバ一覧
Public メソッド
void foo (bool)
void foo (short)
void foo (int)
void foo (long)
void foo (double)
void bar (bool)
void bar (short)
void bar (int)
void bar (long)
void bar (double)
となります。このように並ぶと微妙に見づらいので
すべてのメンバ一覧
Public メソッド
foo系のメンバは
 void foo (bool)
 void foo (short)
 void foo (int)
 void foo (long)
 void foo (double)
bar系のメンバは
 void bar (bool)
 void bar (short)
 void bar (int)
 void bar (long)
 void bar (double)
の様にコメントをこの場所に入れたいしたいのですが、可能でしょうか?

235 :デフォルトの名無しさん:2009/06/06(土) 09:13:44 .net
>>234
マニュアルの「Grouping」(日本語版マニュアルだと「グループ化」)のページを見てください

236 :デフォルトの名無しさん:2009/06/06(土) 09:55:14 .net
>>235
それで出来るのですね。
ありがとうございます。見てきます。

237 :デフォルトの名無しさん:2009/06/06(土) 11:53:22 .net
doxygenで作ったthtmlドキュメントの
若干ながらフォントサイズが小さすぎると感じます。

このフォントサイズを大きくすることはできますか?


238 :234:2009/06/06(土) 20:44:39 .net
C++ code - 17 lines - codepad
ttp://codepad.org/vf7DFqYq
とりあえずこの様にしてみました。
/** document former */
がメンバ関数全部について、
/** document latter */
がメンバ関数void func_1_InGroup1()だけにつくかと期待したのですが、
結果は
void Test::func_1_InGroup1に
document former document latter
と付いただけでした。
どこが誤っているでしょうか?
よろしくお願いいたします。

239 :234・238:2009/06/06(土) 20:56:51 .net
C++ code - 26 lines - codepad
ttp://codepad.org/wOT4IAlv
とりあえずこれで行けそうです。
・・・法則性がわからない。

240 :デフォルトの名無しさん:2009/06/06(土) 22:29:27 .net
法則性はその>>238>>239の違いの@nameの有無の部分ですよ。

マニュアルより:

ブロックの開標識の前に、独立したコメント・ブロックを置くこともできます。
このブロックは、@name (または、\name) コマンドを含む必要があり、
グループのヘッダーを指定します。
そうしたければ、グループに関するより詳しい情報をコメント・ブロックに
含めることもできます。

241 :239:2009/06/06(土) 22:36:14 .net
>>240
doxygen用語の理解が今ひとつ足りなかったようです。
親切にありがとうございました。


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

このようなHTMLになってしまいます。
ttp://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の問題だとしたら若干スレ違いかもしれませんが、
よろしくお願いいたします。

243 :242:2009/06/07(日) 13:43:31 .net
C++ code - 25 lines - codepad
サンプルソースが腐ってたので
ttp://codepad.org/AwsZMCHk
これでお願いします。

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

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

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

245 :デフォルトの名無しさん:2009/06/08(月) 00:35:20 .net
>>242
どこを問題視したいのか判らんが、HAVE_DOTがNOだからクラス階層図が出ないのは当たり前なんだが。
つーか、>>244も含めて
Doxyfile位真面目に読んでくれ。

246 :242:2009/06/08(月) 06:55:17 .net
>>244-245
ありがとうございます。
教えを頼りに読んできます。

247 :244:2009/06/08(月) 08:39:21 .net
>>242, >>245
>>242のドキュメントではdotファイルが吐かれてるし、
クラス階層図はdotファイルの内容どおりに生成されてます。
文字が読めないのはフォントサイズが4のためです。
コラボレーション図はdotにノードがなぜか出力されてませんが、
画像ファイル自体は真っ白なのが存在していて、
dotファイルの内容どおりには生成されているといえます。

なので、これらはHAVE_DOT=YESの状態で生成されたはずです。
DoxyfileはHAVE_DOT=YESにする前に保存したものと思われます。
dotの中身が異常なので、ほかに問題があると思います。

248 :デフォルトの名無しさん:2009/06/08(月) 15:59:54 .net
Doxygenて
__declspec(dllexport) int WINAPI MyFunc(int arg);
とか、それを簡略化して
#define API(type) __declspec(dllexport) type WINAPI
とした場合に
API(int) MyFunc(int arg);
みたいな宣言もちゃんと処理してくれる?


249 :242:2009/06/08(月) 16:17:43 .net
>>247
ありがとうございます。
全然こだわって作りこんだ設定ではありませんので、
デフォルトに戻すことに抵抗はありません。

いろいろ教えの通り試してみます!


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

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

両方 WinXP 32bit SP3 です

251 :デフォルトの名無しさん:2009/06/08(月) 22:48:53 .net
>>248
__declspec()は関数と誤認識されるので、
PREDEFINED で __declspec(x)= を定義するなどして、
プリプロセス時に取り除いてやる必要があります。
(マニュアルの「Preprocessing」に書かれてます)

252 :デフォルトの名無しさん:2009/06/08(月) 23:24:43 .net
>>250
eeepc + winxp でやってるけど、ウチも全く同じ現象になるよ。

253 :250:2009/06/09(火) 19:08:32 .net
レスありがとう。

じゃあエクスポートタブの設定はできないのですかね・・・?

日本語マニュアルを作成したいので以下の設定をしたいのですが

設定する箇所は2箇所です。まずProject内にある「OUTPUT_LANGUAGE」をJapaneseにします。これで日本語マニュアルが作成されます。ただ、このままだと文字化けが起こります。

 続いて、Inputの中にあるINPUT_ENCODINGに「CP932」と文字を打ちます。CP932というのはMicrosoftなどが拡張したShift-JIS文字コードです。Visual Studioなどのソースコードはこの文字コードを指定するとDoxygenでうまく読み込んでくれます。

改善方法分かる人いたらアドバイスください よろしくお願いします

254 :デフォルトの名無しさん:2009/06/09(火) 19:38:26 .net
>>253
設定内容を保存したファイルはテキストなので、直接編集できますよ。

255 :250:2009/06/09(火) 19:54:02 .net
>>254
お!
ありがとうございます

256 :デフォルトの名無しさん:2009/06/09(火) 21:16:16 .net
>>255
念のため。
PROJECT_NAME 等に日本語を使ってる場合、UTF-8で保存されてるので気を付けて。

257 :デフォルトの名無しさん:2009/06/11(木) 21:35:53 .net
doxygen20090611.zip - uploader_nrnrnr
ttp://loda.jp/uploader_nrnrnr/?id=5
このaaaaaa.hとDoxyfileからdoxygenでhtmlドキュメントを生成させると、
 aaaaaa.h
 ソースコードを見る。
 マクロ定義
 #define ABS(x)
 #define MAX(x, y)
 #define MIN(x, y)
 #define MYMACRO "表示されたくない。"
このように表示されるのですが、私は最後の
 #define MYMACRO "表示されたくない。"

 #define MYMACRO
の様にしたいと思っております。
また、各マクロの説明文にある
 値:〜〜
というのも非表示にしたいと思います。

どうすればよろしいでしょうか?


258 :デフォルトの名無しさん:2009/06/11(木) 22:23:30 .net
関数テンプレートなどの
テンプレート引数を出力する項目は作れませんか?

259 :デフォルトの名無しさん:2009/06/12(金) 01:24:59 .net
>>257
MAX_INITIALIZER_LINES を 0 にするのはどうでしょう?
変数の初期値なども全部表示されなくなりますが。

260 :デフォルトの名無しさん:2009/06/12(金) 01:58:14 .net
>>258
@tparamで出来るらしいです。

261 :258:2009/06/12(金) 08:02:39 .net
>>260
ありがとうございます。
助かります。

262 :257:2009/06/12(金) 19:21:47 .net
>>259
MAX_INITIALIZER_LINESを0にする方法でいけそうです。
ありがとうございます。

263 :デフォルトの名無しさん:2009/06/12(金) 19:54:28 .net
doxygenの公式サイト(英語版)
が見たいのだが、リンクが死んでいる気がする。

それとも単に落ちただけだろうか?

264 :263:2009/06/12(金) 23:59:05 .net
単に落ちただけだったようだ。
勝手に騒いでスマソ。

265 :デフォルトの名無しさん:2009/06/20(土) 18:37:54 .net
保守


266 :デフォルトの名無しさん:2009/06/20(土) 21:38:29 .net
Windows XP SP2, doxygen 1.5.9です。
Sample.h
ttp://codepad.org/Fijir9gC
これでhtmlドキュメントを生成させますと、
クラス階層図(継承関係)
が表示されません。
class Sample は std::runtime_error をpublic継承しているので
この継承の様子をGraphVizでグラフ表示させたいと思っているのですが、
どうすればよろしいでしょうか?

ソースとDoxyfile、出来上がったHTMLは
ttp://loda.jp/uploader_nrnrnr/?id=7
です。
同じDoxyfileを使っても、関数の呼び出し関係は
うまくGraphVizでグラフ化されて表示されています。

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

267 :デフォルトの名無しさん:2009/06/20(土) 22:08:18 .net
>>266
HIDE_UNDOC_RELATIONS が YES だからじゃないかと思いますが、
NO にしてもライブラリからの継承まで図に含めてくれるかどうか。
INCLUDE_PATH にコンパイラのヘッダファイルのパスの設定もして試してみてください。

268 :266:2009/06/20(土) 23:31:56 .net
>>267
HIDE_UNDOC_RELATIONS
をNOにしたところ、
> INCLUDE_PATH にコンパイラのヘッダファイルのパスの設定
これをしなくても希望通りになりました。

ttp://imagepot.net/view/124550817681.jpg

感謝感激です。
どうもありがとうございました。

269 :デフォルトの名無しさん:2009/06/26(金) 21:24:59 .net
保守

270 :デフォルトの名無しさん:2009/07/02(木) 07:40:28 .net
>>250
どうもパネル作成時のミス?のようです。
Exportタブの中身はWizardタブと同じように左右分割されているらしく、
「左側の何も無いパネル」「右側の設定パネル」という風になっています。
それで「左側の何も無いパネル」の幅が最大になっているため、
何も表示されていないように見えるようです。

マウスを右端に移動させるとカーソル形状が変化しますので、
そのまま左にドラッグすると設定内容のパネルが見えるようになりました。

271 :270:2009/07/03(金) 02:55:10 .net
少し訂正
左右分割だけではなく左側が上下に分割された3ペイン方式でした。
「左側の何も無いパネル」のように見えるますが下のほうに移動してるだけでした。
270と同じように下から上にドラッグすると表示物が見えるようになります。

272 :デフォルトの名無しさん:2009/08/08(土) 18:05:25 .net
保守

273 :デフォルトの名無しさん:2009/08/08(土) 18:32:18 .net
Windows XP SP2, doxygen 1.5.9です。

ttp://loda.jp/uploader_nrnrnr/?id=9
このSample.hを同じくこのDoxyfileで
HTMLドキュメント化したのですが、
文字サイズが小さくて困っております。
DOT_FONTSIZE = 100
FORMULA_FONTSIZE = 100
の様にしてみても、フォントサイズが変わりません。

sakura-editor: クラス CDlgCancel
ttp://sakura-editor.sourceforge.net/doxygen/classCDlgCancel.html
ここにあるような
文字サイズにしたいのですが、どうすればよろしいでしょうか?
よろしくお願い申し上げます。




274 :デフォルトの名無しさん:2009/08/08(土) 20:32:24 .net
>>273
ドキュメント見てみたけど普通の文字サイズだと思うけど。
そういえば最近のバージョンはちょっと前のより文字サイズ小さいかも。

DOT_FONTSIZE はグラフの文字サイズ、FORMULA_FONTSIZE は式の文字サイズです。

文字サイズを変えるにはスタイルシートをカスタマイズすることになると思う。
やったことないけど、マニュアルによると、

doxygen -w html header.html footer.html stylesheet.css
でデフォルトのファイルを出力して、それを書き換えて

Doxyfile の HTML_STYLESHEET でそのファイルを指定するらしいです。

275 :273:2009/08/08(土) 21:27:14 .net
>>274
その方法で解決できました。
文字サイズは見る人によって好みがあると思っていましたので、
stylesheet.cssのフォントサイズ指定の部分を削除しました。
これにより人によって好みの文字サイズにブラウザ側で変更できるようになりました。
(前はブラウザ側でも文字サイズの変更が(通常操作の範囲では)できませんでした。)

どうもありがとうございました。


276 :デフォルトの名無しさん:2009/08/12(水) 12:31:12 .net
Doxygen
で表を表示する方法を教えてください。

ttp://www.doxygen.jp/htmlcmds.html
ここの<table>タグ以外にはありますか?

277 :デフォルトの名無しさん:2009/08/12(水) 12:45:02 .net
Doxygenはドキュメント生成ツールであってドキュメント記述言語ではないから
適宜表は表示されるよ。例えば関数一覧とかファイル一覧とか。

任意の表を記述したいと言うことなら話は別で。
元々html自体に表を記述するタグはtable以外にはないに等しいからねぇ。
横方向に高々2カラムしかないなら<ul>などで代用できなくもないけれど。

278 :276:2009/08/12(水) 13:14:58 .net
>>277
ありがとうございます。
良さそうなのでもうすこしマニュアルを読み込んできます。

279 :デフォルトの名無しさん:2009/08/14(金) 02:53:06 .net
>>276-278
私も任意の表をお手軽に作る方法はないかなと思ってました。

今ふと思いついたんですが、関連のタグの組み合わせをALIASESで簡略化したらちょっとはマシかも。

280 :デフォルトの名無しさん:2009/08/21(金) 00:30:09 .net
保守

281 :デフォルトの名無しさん:2009/08/22(土) 01:18:19 .net
Doxygen 1.6.0 age

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

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

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

284 :282:2009/08/23(日) 11:47:44 .net
>>283
ありがとうございます。
私は@ではなく\で書いているので問題ないですかね。

285 :283:2009/08/23(日) 19:42:34 .net
>>284
それは試してないのでわかりません。

以前のバージョンから、「@」は利かなくて「\」なら利く局面もありましたから、
(例えば @dot 内の URL パラメータに \ref を使うとか)
もしかすると問題ないかもしれません。

なお、「"」の代わりに「"」を使えば、「@a」も機能しました。
ソースコメントでの視認性を考えるとやりたくないですが。

286 :283:2009/08/23(日) 19:45:40 .net
>>285
あ、「”」の代わりに「&quot;」です。
(今度はちゃんと表示されるかな)

287 :282:2009/08/23(日) 20:21:51 .net
>>285-286
なるほど。
詳細 誠にありがとうございます。

今のdoxygenで問題がないので、
念のためdoxygenバージョンアップするのは
控えておこうかと思います。


288 :283:2009/08/24(月) 02:03:19 .net
補足です。

>>283 のような状況になっているということはつまり、
二重引用符で囲まれている部分が区別されるようになったということで、
いままで単純に1文字として「"」を使ってた部分や、
うっかり片方の引用符を忘れていた部分でエラーが出ます。

289 :どxyげん:2009/08/24(月) 10:56:52 .net
doxygenで生成される、
左側の目次(ツリービュー)を自分が好きに
並べる方法している方いらっしゃいませんか?

誰か教えてください。

290 :デフォルトの名無しさん:2009/08/25(火) 22:33:39 .net
Doxygen 1.6.1 age

291 :デフォルトの名無しさん:2009/08/29(土) 14:36:45 .net
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でも同様の現象でした。

292 :デフォルトの名無しさん:2009/09/01(火) 09:31:19 .net
>>291
lodaの方にコメントついてる。

293 :291:2009/09/01(火) 18:05:12 .net
2chの方ばかり見ておりました。
ありがとうございます。


294 :291:2009/09/01(火) 20:42:47 .net
と思いましたら解決しませんでした。
\ 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:01 .net
>>294
lodaのコメントは、行頭に「\」や「!」を入れるのが
大文字化されないための書き方という意味じゃなくて、
文の先頭にクラス名がこない書き方を工夫すればという意味だと思う。

# 一覧表以外のところでは大文字化してないから、個人的にはバグじゃないかと思うけど。

「::」が消える件は >>211-213 を参照。

296 :291:2009/09/02(水) 06:54:56 .net
>>295
私もバグではなく仕様だとは思っています。

::が無視されるのはバグですが。
最速で>>187さんが触れてますね。

どうもありがとうございました。

297 :デフォルトの名無しさん:2009/09/04(金) 08:46:55 .net
プログラミング言語によっては全角文字も識別子に使えることを考えると、
文中に空白で区切られずに書かれてる識別子を正しく認識して欲しいというのは、
日本語の構文を理解する必要のある無茶な要求じゃないかな。

298 :デフォルトの名無しさん:2009/09/04(金) 12:51:33 .net
そうか?
別に煽りたい訳じゃ無いけど、消えてしまうのは文字コードの問題だと
考えるのが普通では?
だって構文解析いらないでしょ。

299 :297:2009/09/05(土) 01:43:17 .net
>>298
消えてしまうのはバグだと思うけど、
クラスメンバを認識して自動的にリンクを張る機能があるんだから、
その過程で「::」を特別扱いしてると思うのよ。

ていうかごめん、言葉が足りなかったわ。
言いたかったのは、バグが起きにくい書き方をするように
歩み寄ってもいいんじゃないかということなんで。

300 :デフォルトの名無しさん:2009/09/10(木) 14:47:25 .net
1.6.1を入れたのだけど、doxywizardで項目名が赤くなるのはどういう意味?


301 :デフォルトの名無しさん:2009/09/10(木) 19:41:01 .net
>>300
1.6.1前からでも赤くなかった?
おそらくデフォルト値から変更された物が赤いんじゃないかと思われる。

302 :300:2009/09/10(木) 20:03:13 .net
>>301
どうもありがとう。確かに入力すると赤くなり、消すと黒くなるから変更されたところだ。
前は1.5.6を使っていただけど赤くはならなかったので、最初はエラーかと思った。

303 :デフォルトの名無しさん:2009/09/14(月) 00:04:39 .net
Javaで使っているのですが、クラス階層図や関数の呼び出し図などで、
クラス名がパッケージ名を含む長い名前になるのを避ける方法はあるでしょうか?
例えば、以下のサンプルですと、図からorg.byteml.の部分を取り除きたいです。
http://byteml.sourceforge.net/html/classorg_1_1byteml_1_1serialize_1_1ByteMLBuilder.html

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

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

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

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

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

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


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

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

#ifndef NO_DOXYGEN
実装用クラス
#endif

とか私はやってます。

308 :306:2009/09/17(木) 06:59:25 .net
>>307
ありがとうございます。
そんな方法があったんですね。

309 :307:2009/09/17(木) 16:45:15 .net
>>308

後で見返してよく考えたら「NO_DOXYGEN」だと意味逆でしたね。
まあそれはともかく、この方法を使うと、
たとえば利用者マニュアル用 doxyfile と
内部開発者用 doxyfile とかを使い分けて
(それぞれ別々の PREDEFINED を設定しておく)、
コード内では #ifndef を使ってマニュアルに出したいものを制御
なんてこともできます。


310 :306:2009/09/17(木) 21:03:18 .net
>>309
なるほど、深いですね。
面白そうです。
ありがとうございます。

311 :306:2009/09/18(金) 00:20:10 .net
#ifndef DOXYGEN
実装用クラス
#endif
としてみましたが、
クラス一覧に相変わらず実装用クラスが出力されます。

 doxygen 1.6.1, Windows XP SP2
Doxyfileは
 ttp://loda.jp/uploader_nrnrnr/?id=11
です。

恐れ入りますが、>>307さんのdoxygenのバージョンはいくらでしょうか?


312 :306:2009/09/18(金) 00:20:56 .net
ちなみにちゃんと
#ifndef DOXYGEN
になっています。
#ifdef DOXYGEN
だったりはしません。
よろしくお願いいたします。

313 :307:2009/09/18(金) 01:26:34 .net
>>311-312

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:38 .net
>>312
お前、馬鹿だろw
>307を読めば判ることで何とち狂ってるんだか。

315 :306:2009/09/18(金) 11:12:07 .net
>>313
申し訳ございません。
ご指摘の通り大変みっともない間違いをしでかしており、
恥ずかしいかぎりです。

うまく動きました。
ありがとうございました。


316 :デフォルトの名無しさん:2009/09/18(金) 12:01:39 .net
ttp://codepad.org/ACEXhsw8
これをdoxygenに食わせると、
クラス->構成のところで
 exception
 NS::hoge
となります。
 画像:ttp://imagepot.net/image/125324281122.jpg
つまり何故かstd::が出力されません。
(解説本文にはstd::が出力されるのですが。)

これを
 std::exception
 NS::hoge
と表示させたいのですが、何か方法はありますでしょうか?

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

317 :307:2009/09/18(金) 12:08:01 .net
>>314

まあまあ。
マニュアル読むと、PREDEFINED と EXPAND_AS_DEFINED の説明は
確かにかなり紛らわしいのよ。試行錯誤の過程で勘違いしても仕方がない。
私もかつては戸惑った口。

>>315

お役に立てて何よりです。


318 :デフォルトの名無しさん:2009/09/18(金) 12:25:36 .net
doxygen 1.5.8を使っているんだけど、例えばstd::vector<std::vector<int>>が通らないのね。
きちんと> >にしないといけないらしい。

319 :デフォルトの名無しさん:2009/09/18(金) 12:55:10 .net
>>318
C++はC++0xになるまではそうでしょ?
コメント文でもそうだってことかい?

320 :デフォルトの名無しさん:2009/09/18(金) 12:57:05 .net
>>319
いやいや、会社でほたえちょる阿呆がおったからソースを見たら、>>で書いていたってことで。
それで気づいたんだが、VC++はエラーにしてくれないんだね。

321 :デフォルトの名無しさん:2009/09/18(金) 13:47:50 .net
>>320
そうなのか。
まあどうせC++0xでは認められるんだから
VC++もエラーじゃなくていいんじゃね。



322 :デフォルトの名無しさん:2009/09/18(金) 17:00:22 .net
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にしても起こると思うのですが、皆様はどうでしょうか?


323 :デフォルトの名無しさん:2009/09/19(土) 12:08:12 .net
>>322
私の方でも同じ現象が出てます。
自分の書き方が悪いのかもと思いつつ、
ほとんど追求してませんでしたけど。

324 :322:2009/09/19(土) 13:07:25 .net
>>323
ありがとうございます。
私は同じsourceで
Doxygen1.5.9→1.6.1のアップグレードで症状が発生したため、おそらく仕様変更に伴う不具合だと思っています。
じき直ると期待しています。

325 :デフォルトの名無しさん:2009/09/20(日) 11:44:49 .net
> 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にしてしまえば良いわけでしょうか?
それとも何がデメリットがあるのでしょうか?

326 :デフォルトの名無しさん:2009/09/23(水) 01:46:24 .net
>>325
Doxywizard で、 BUILTIN_STL_SUPPORT にカーソルを持っていったときに
表示される説明は、もう少し分かりやすいです。
STL のクラスを使ってるけど STL のソースをインクルードしたくない場合に
YESにするようにと書いてます。

ファイルの読み込みを抑えたいような場合でしょうか。

逆に処理系付属のヘッダも読み込む設定にしていて、 BUILTIN_STL_SUPPORT も
YES にすると、二重定義のような状況になるんじゃないかと思います。

327 :325:2009/09/23(水) 11:39:21 .net
>>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にしているようです。


328 :316:2009/09/26(土) 18:13:55 .net
どなたか>>316の解決策をご教示いただける有識者はいらっしゃいませんでしょうか?

どうかよろしくお願い申し上げます。

329 :デフォルトの名無しさん:2009/09/26(土) 19:33:05 .net
>>316
その参照してるだけで定義の無いexceptionをエントリとして出せるオプションがあるの?


330 :316:2009/09/27(日) 01:04:43 .net
>>329
HIDEUNDOCMEMBERSをNoにして、出力させるとこうなりました。

331 :316:2009/09/27(日) 10:43:25 .net
>>329
EXTRACT_ALL は NO
HIDE_UNDOC_MEMBERS は YES
HIDE_UNDOC_CLASSES は NO
でした。



332 :デフォルトの名無しさん:2009/09/27(日) 13:24:58 .net
/** \page hojodocs 補助ドキュメント
*/
としますと
ttp://uploader.rgr.jp/src/up1067.gif
の様に
「メインページ」「クラス」「ファイル」というタブと並んで「関連ページ」というタブが出来て
その中に補助ドキュメントというページが出来ます。

これを
「メインページ」「クラス」「ファイル」というタブと並んで「補助ドキュメント」というタブが
出来るようにする方法はありませんでしょうか?

単純に/pageを何か適当な物に変えれば良いのではないかと探ってみたのですが
どうしても分かりませんでした。

よろしくお願いします。


333 :デフォルトの名無しさん:2009/09/27(日) 21:39:45 .net
>>331 うちではexceptionクラスそのものが出なかった。


334 :316:2009/09/27(日) 22:56:11 .net
>>333
左様でございましたか。失礼いたしました。

私の環境は
 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 .net
>>304-315
今更だけど、別の方法があったので。
@cond と @endcond で囲んだ範囲は、
@cond につけたラベルを ENABLED_SECTIONS に含めるかどうかで、
ドキュメント化するかどうかを設定できるようです。

336 :デフォルトの名無しさん:2009/10/01(木) 10:49:27 .net
>>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なので念の為。

337 :304:2009/10/01(木) 10:51:57 .net
ありがとうございます。
プリプロセッサを使った方法はエディタで対応する最初と最後をすぐ見つけらられるという利点がありますが、
@condと@endcondを使った方法はコメントだけで解決する->ソースに手を加えてはいないという点が利点ですね。



338 :デフォルトの名無しさん:2009/10/06(火) 16:41:43 .net
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 がドキュメント化されるところまでは
良かったのですが,行末に ///> で異なる説明を書いても両方の説明に同じものが(マージされて)
出てきてしまいます。

良い方法があったら教えてください。

339 :338:2009/10/06(火) 16:59:07 .net
>>338
ちょっと間違い。上の例で #else のところが #elif になってしまっているので
修正したら,_MSC_VER と !MSC_VER を両方 PREDEFINED に書いておく
という手は使えませんでした。結局 PREDEFINED にどう書くかで,
片方のドキュメントしか作成されません。

340 :304:2009/10/06(火) 18:24:02 .net
>>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 */



341 :339:2009/10/06(火) 18:54:46 .net
>>340
さすがに両方の説明を個別に表示することは出来ませんが,それで事足りますね。
ありがとうございました。

この方法使うと,Doxygenがスキップしない部分には,

#define __FASTCALL "" or __fastcall

とかメチャクチャ書けますねw

342 :デフォルトの名無しさん:2009/10/07(水) 04:18:00 .net
>>338
/// @def __FASTCALL
/// ここに両方の場合の説明を書けばいいんじゃないの?

343 :デフォルトの名無しさん:2009/10/07(水) 04:18:44 .net
__FASTCALL は C++ では予約識別子だな。やめといたほうがいいぞ。

344 :デフォルトの名無しさん:2009/10/07(水) 06:37:33 .net
確かに。
予約されているから規格的に言えば未定義の動作になるな。


345 :339:2009/10/07(水) 10:26:51 .net
>>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
大文字の方も予約されてるとは知らなかった。ありがと〜。

346 :デフォルトの名無しさん:2009/10/07(水) 10:48:29 .net
>>345
メチャクチャな説明がわかりやすいとか、おかしなことを言うね。
実用上問題なければ奇怪な書き方しないほうがいいだろうと思うし。

347 :340:2009/10/07(水) 18:07:29 .net
>>346
別にメチャクチャはまあ言葉のあやなんじゃないですかね。

オフィシャルでも
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 .net
>>347
それを指摘するのは無粋。つーか、間抜け。

349 :デフォルトの名無しさん:2009/10/08(木) 01:46:49 .net
>>347
許容範囲なんだろうけど、ここでは奇怪な書き方をする必要がない、という話。

350 :デフォルトの名無しさん:2009/10/10(土) 07:47:27 .net
>3
ttp://stackoverflow.com/questions/165451/suggest-a-good-doxygen-stylesheet
なさそうだね

351 :デフォルトの名無しさん:2009/10/13(火) 10:41:56 .net
寧ろ、doxygen.cssをカスタマイズしている人には紹介してほしいなぁ。
ソースを公開しろとまでは言わないから。
後は、こんなのが欲しいなんてリクエストでもあれば創造意欲が沸くかも知れない。

352 :デフォルトの名無しさん:2009/10/13(火) 21:08:49 .net
しかしデフォルトのにしておかないと
将来のバージョンアップに毎回追随するのが
結構つらくなるのではと予感。


353 :デフォルトの名無しさん:2009/10/17(土) 13:41:17 .net
バージョンアップでかっこよくなったりするし

354 :デフォルトの名無しさん:2009/10/18(日) 10:45:33 .net
ttp://www.doxygen.jp/manual.html
このサイト死んだね。

355 :デフォルトの名無しさん:2009/10/18(日) 11:55:33 .net
う、うん……(´・ω・`)

356 :デフォルトの名無しさん:2009/10/18(日) 22:36:09 .net
>>354
生き返った。
良かった良かった。

357 :デフォルトの名無しさん:2009/10/28(水) 15:51:53 .net
privateなメンバのうち、(純粋)仮想関数だけをドキュメントに出力する方法ってないものでしょうか
EXTRACT_PRIVATE = YESとすると、見せたくないprivate変数や非仮想関数まで出てきてしまうのがイヤで・・・

358 :デフォルトの名無しさん:2009/10/28(水) 23:24:18 .net
>>357
そんな状況いままで無かったからな。
初めて考えてみる。

>>340が書いた方式を駆使して
どうにかできそうな気もするが良いアイディアが浮かばない。



359 :デフォルトの名無しさん:2009/11/10(火) 14:57:36 .net
Doxygen 1.6.1 をソースパッケージから VC8 でビルドしようとしたのですが src/translator_*.h
が言語毎にいろいろなエンコーディングで保存されていて文字列リテラルの部分でエラーが大量発生する
(おそらく多バイト文字に '\' や '"' が含まれる) のですが、Windows でビルドするときは特別な
手続きがいるのでしょうか?

360 :デフォルトの名無しさん:2009/12/05(土) 01:55:28 .net
クラスメソッドの詳細の、“コンストラクタ・デストラクタ”のセクションに
デストラクタが入らないのはdoxygenのバグだよね?
あと、@nameコマンドで1つのクラスに同じ名前のメンバグループを
複数作った場合、それぞれが別のグループとして吐き出されるのは仕様?

あ、どっちも1.6.1の話ね

361 :デフォルトの名無しさん:2009/12/05(土) 12:30:58 .net
>>360
> クラスメソッドの詳細の、“コンストラクタ・デストラクタ”のセクションに
> デストラクタが入らないのはdoxygenのバグだよね?
マジで?
試してくる。

362 :361:2009/12/05(土) 12:35:42 .net
>>360
Version 1.6.1 にて出力されたぞ。

出力されないソースないしヘッダの例をうpしてくれれば確かめるけど?


363 :360:2009/12/07(月) 16:44:48 .net
>>362
ソースはマニュアル内のこのページ(ttp://www.doxygen.jp/docblocks.html)の
サンプルをそのまま使用
本体のバグでないならヘッダの問題かと思い、いろいろ試してみた結果、
INPUT_ENCODING=Shift_JISにした時に問題が起きた(CP932なら問題無し)
ちなみに、出力されないわけじゃなくて、通常の関数と同じセクションに
デストラクタが入ってる

デストラクタ名がチルダでなくオーバーバーで表示されてたので、
doxygenがデストラクタと認識してくれないのが原因か?

364 :デフォルトの名無しさん:2009/12/07(月) 23:10:54 .net
>>363
CP932
にしろってオフィシャルでどっかに書いてあったような気がする。
> デストラクタ名がチルダでなくオーバーバーで表示されてたので、
> doxygenがデストラクタと認識してくれないのが原因か?
その可能性が高そうだ。



365 :デフォルトの名無しさん:2009/12/14(月) 10:46:24 .net
このQtのマニュアルみたいなのを作りたいのですがdoxygenで作れますか。
http://www.kde.gr.jp/~ichi/qt-2.3.2/annotated.html




366 :デフォルトの名無しさん:2009/12/14(月) 14:13:25 .net
>>365
似たようなことはできると思いますが、一致度は保証できません。
TradeMarkとやらで作ったようなことが書かれているので、それでは如何ですか?

367 :デフォルトの名無しさん:2009/12/17(木) 02:23:51 .net
>>365-366
Qtのマニュアルは開発元内製の非公開のツールで作られているそうです。
doxygenが作られたのもそれが理由だそうで。
ttp://lists.trolltech.com/qt-interest/2007-07/thread00457-0.html

368 :デフォルトの名無しさん:2009/12/18(金) 13:27:05 .net
素敵なcssがほしい。

369 :デフォルトの名無しさん:2009/12/24(木) 13:46:58 .net
EXTRACT_PRIVATE = NO の設定で一部の private 関数を文書化する方法はあるでしょうか?
やりたいことは、ある基底クラスに private の仮想関数を定義して (派生クラスでその仮想関数
をオーバーライドするユーザーのために) その関数の仕様を Doxygen で出力することです。

370 :デフォルトの名無しさん:2009/12/24(木) 21:33:52 .net
>>369
ちょっと汚いソースになる気もするが、
>>340と同じようにして
Doxygen上にだけprivateをpublicにしちゃえば?


371 :デフォルトの名無しさん:2009/12/29(火) 09:09:16 .net
ttp://uploader.rgr.jp/src/up1598.png
このように、ソース中の'が'と表示されてしまうんですが、
対策をご存じの方いらっしゃいますか?
また、他の方がたはこの問題が再現しますか?

サンプルソースは
 ttp://uproda.2ch-library.com/lib200801.zip.shtml
 DLキーはdoxygen
です。
ここのget_widechar.hをDoxygenにかけてhtmlを出力させると
上述の画像のようになります。


372 :デフォルトの名無しさん:2009/12/29(火) 09:40:19 .net
html4ではなくxml1の読めるブラウザを使えばいいんでない?
# 根本は解決していないけど。
例えば、IE6がこれに該当するからIE8を入れるとか。
どうしても根本的に解決したいなら、ソースを修正するとか出力を加工するとか。

つーか、手元のソースとDoxygenでは再現しないしzipをダウンロードするのは嫌なんだけど、
再現できる状態でここに貼れる程度に短くできない? それと、Doxygenのバージョンも宜しく。

373 :デフォルトの名無しさん:2009/12/29(火) 12:07:45 .net
>>372
確かにIE6で見ていたらだめでしたが、
Firefoxなら正しく表示されました。

ソースは
ttp://codepad.org/7giB9nil
で、Doxygenは1.6.1です。
設定は
DOXYFILE_ENCODING = CP932
OUTPUT_LANGUAGE = Japanese
このぐらいです。


374 :デフォルトの名無しさん:2009/12/29(火) 13:06:29 .net
手元の1.5.9じゃ再現できないや。1.6.1持ちか詳しい人待ちだな。

375 :デフォルトの名無しさん:2009/12/29(火) 16:06:24 .net
>>374
意外に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 .net
html4.01にはaposがないんだからしょうがないんじゃない?

377 :デフォルトの名無しさん:2009/12/29(火) 17:23:37 .net
>>376
俺のところのIE6ってそんな準拠性の悪いクソブラウザだったんですか。
噂には聞いていたんですがねぇ。

ありがとうございました。

378 :デフォルトの名無しさん:2010/01/03(日) 02:55:32 .net
Doxygen 1.6.2 age

379 :デフォルトの名無しさん:2010/01/03(日) 21:21:40 .net
>>378
まぢすか
入れてきます!

380 :379:2010/01/03(日) 23:52:47 .net
仕様 変わりすぎだよチクショー!!!!!


381 :デフォルトの名無しさん:2010/01/04(月) 00:08:12 .net
doxygen.css
の仕様が変わりすぎでございますorz

バージョンが0.01違いなのに、こんなに変わるものだとは。

Doxygenって後方互換性という言葉には興味ないの?


382 :>>379-381:2010/01/04(月) 21:42:35 .net
俺以外に
Doxygen 1.6.2
を使ってる人 居ないの?
なんだか、
 1. C++0xが公式仕様策定されて
 2. ちゃんと各種コンパイラで実装されて
 3. 現実的にC++0xを使っても大丈夫だと思うくらいになって
 4. Doxygen がC++0xに対応完了
このくらいの条件を満たさないかぎり、別にアップデートしなくてもいい気がしてきた。
ブラウザとか中核ソフトとは違ってセキュリティもクソもない・・・しね?


383 :デフォルトの名無しさん:2010/01/06(水) 14:43:02 .net
>>382
まだ正月休み明けでみなさん忙しいのでは。
私も先ほどようやく試してみたところ。

ざっと見た感じだと、1.6.1 と比べると
>>322 で指摘されていた不具合とか、
friend関数のマニュアルを無視するバグが直ってたりして、
概ね好印象ですね。


384 :>382:2010/01/06(水) 20:01:55 .net
>>383
ありがとうございます。

そうですか。
>>324->>324は気付きませんでした。
じゃあやっぱ1.6.2で同じように作れるように自分でどうにか工夫するのが良い
って感じですかね。(私の主体性0)



385 :>382:2010/01/06(水) 20:19:19 .net
ちなみに
 Doxyfile 1.6.1 デフォルト
 ttp://codepad.org/olhvPmWM
 Doxyfile 1.6.2 デフォルト
 ttp://codepad.org/wA3SWMYO


386 :デフォルトの名無しさん:2010/01/23(土) 09:24:51 .net
1.6.2に更新したら、pageコマンドから作られたhtmlにタイトルが出力されなくなった…
似たような症状の人いる?

387 :382:2010/01/23(土) 20:33:41 .net
>>386
おお!
俺も!俺も!
どうすりゃいいんだろうorz


388 :デフォルトの名無しさん:2010/01/26(火) 07:47:54 .net
>>386-387
pageに付ける名前に英数字以外(下線とか)を含まないように、
というようなことがMLに書かれてました。

389 :387:2010/01/29(金) 00:03:56 .net
まじか!
>>388
ありがとうございます。
感謝です。。。

390 :デフォルトの名無しさん:2010/01/29(金) 04:03:10 .net
>>388
トンクス!表示されたぜ!

ML見てきたんだが、
>ドキュメントにアンダーバー不許可と明示されてはいないけど、
>名前は英文字と数字の組み合わせからなる、とは書かれていて、
>そこにアンダーバーは含まれていないでしょ。
みたいな返答だった。

でも以前は使えてたわけだし、@page以外のタグは問題ないし、
ドキュメントが更新された形跡もないし、やっぱなんかバグっぽいよね。

391 :デフォルトの名無しさん:2010/01/29(金) 06:34:03 .net
>>390
このまま待機で、いつの間にか
(次のverで)修正されるんじゃないかなぁ?

次のverっていつでるんだ。。。

392 :デフォルトの名無しさん:2010/01/30(土) 15:04:22 .net
>>391
Bugzilla 見たら、次のバージョンで修正されることになってました。
私も別のバグで次のバージョン待ちです…

393 :デフォルトの名無しさん:2010/01/30(土) 15:52:25 .net
Doxygen Release 1.6.2  (release date 30-12-2009)
Doxygen Release 1.6.1  (release date 25-08-2009)
Doxygen Release 1.6.0  (release date 20-08-2009)
Doxygen Release 1.5.9  (release date 30-04-2009)
Doxygen Release 1.5.8  (release date 27-12-2008)
Doxygen Release 1.5.7.1 (release date 5-10-2008)
Doxygen Release 1.5.7  (release date 28-9-2008)
Doxygen Release 1.5.6  (release date 18-5-2008)
Doxygen Release 1.5.5  (release date 10-2-2008)
Doxygen Release 1.5.4  (release date 27-10-2007)
Doxygen Release 1.5.3  (release date 27-7-2007)
Doxygen Release 1.5.2  (release date 4-4-2007)
Doxygen Release 1.5.1  (release date 29-10-2006)
Doxygen Release 1.5.0  (release date 16-10-2006)
Doxygen Release 1.4.7  (release date 11-06-2006)


394 :>387 >393:2010/01/30(土) 15:57:14 .net
ということで、次にリリースされるのは
4月終わりごろと推測されます。

うわぁ、待ってられないよ。

・・・
> Doxygen Release 1.6.1  (release date 25-08-2009)
> Doxygen Release 1.6.0  (release date 20-08-2009)
見たいに短い間隔のリリースもあるっちゃあるんだが、
すでにDoxygen Release 1.6.2リリースから1ヶ月たっても
新しい版がでていないしなぁ。
>>388氏の解決策に乗っかろうかなぁ。。。


395 :394:2010/01/30(土) 23:27:05 .net
<報告>
英数字どころか、小文字じゃないとダメみたいです。
AbCdE
とかはだめで、
abcde
ならOKのようです。


396 :デフォルトの名無しさん:2010/02/06(土) 23:10:09 .net
死亡回避age

397 :デフォルトの名無しさん:2010/02/09(火) 21:40:07 .net
Doxygen Release 1.6.2 + WinXPです。

ttp://codepad.org/UOnh6aUc
これを出力させると
ttp://uploader.rgr.jp/src/up1961.jpg
このように、inlineでもないのに勝手にinlineになります。
なお、
ttp://codepad.org/iT6VHAtw
のように、テンプレートでなければ勝手にinlineにはならないようです。
ttp://uploader.rgr.jp/src/up1962.jpg

同じ症状の方いらっしゃいますか?


398 :397:2010/02/09(火) 21:40:49 .net
あと、もし古いバージョンで試してくださる方がいらっしゃったら
是非結果を教えてください。
よろしくお願い申し上げます。

399 :397:2010/02/11(木) 20:12:03 .net
Graphviz - Graph Visualization Software
が最新版でました!version 2.26.3 になりました。

・・・そしてインストールしたらエラーになったので、
同じ症状で悩んでいる方がもしいらしたら参考にしてください。
解決策のリンク
ttp://old.nabble.com/Dot-problems-td15185555.html


************************************************************************
Oren Almog wrote:
I am using the windows version. Doxygen seems to work fine but I repeatedly
get errors when it calls dot to generate call graphs (or any other graphs).

c0f5d09662a9af0a3f709cb57d6841_cgraph.dot" -Tpng -o
"ex__cmds_8c_abc0f5d09662a9af0a3f709cb57d6841_cgraph.png"'
Problems running dot: exit code=-1, command='dot',

Dot is in my PATH. To be sure I tried to create the graph manually my going
to the directory and calling dot with the same parameters, I get a message
about a missing font and that file will look ugly but the png is generated
with no further input required from me.

Any ideas?
************************************************************************
biljana wrote:
You have to install Graphviz and set the DOT_PATH to the Graphviz/bin folder. Also you should set HAVE_DOT to YES.



400 :デフォルトの名無しさん:2010/02/21(日) 22:45:41 .net
Doxygen 1.6.3 age

401 :デフォルトの名無しさん:2010/02/21(日) 23:26:54 .net
>>400
ktkr
使います

402 :397:2010/02/26(金) 06:35:09 .net
>>397のバグですが、
Doxygen 1.6.3 で直っていないようです。

バグ報告しないと直らないんですかねぇ。
どこからバグ報告すればいいやら。

403 :デフォルトの名無しさん:2010/02/27(土) 21:06:19 .net
Doxygen 1.6.3 で
@pageで生成したページのタイトルが付かないバグ
は、解決しているようですね。


404 :デフォルトの名無しさん:2010/03/08(月) 15:44:01 .net
WinXP version1.6.3で、S-JISのファイルを変換したいのですが、設定ファイルを
INPUT_ENCODING = CP932
と設定した場合は、
Error: failed to translate characters from CP932 to UTF-8: check INPUT_ENCODING
とエラーがでます。

INPUT_ENCODING = SHIFT_JIS
とした場合は
Error: failed to translate characters from SHIFT_JIS to UTF-8: check INPUT_ENCODING
とエラーがでます。

DOXYFILE_ENCODING = SHIFT_JIS
として、
PROJECT_NAMEに日本語を設定したら反映されます。

何か他に設定する必要があるのでしょうか?

405 :デフォルトの名無しさん:2010/03/09(火) 00:33:11 .net
>>404
INPUT_ENCODING はソースファイルのエンコーディングの設定で、
DOXYFILE_ENCODING は設定ファイル自身のエンコーディングの設定です。

> WinXP version1.6.3で、S-JISのファイルを変換したいのですが、
のS-JISのファイルというのは設定ファイルじゃなくソースファイルのことですか?
だったら、 INPUT_ENCODING = CP932 で合ってるはずなんですが。

S-JISのつもりで実はUnicodeだったなんてことはないですか?

> DOXYFILE_ENCODING = SHIFT_JIS
> として、
> PROJECT_NAMEに日本語を設定したら反映されます。

設定ファイルはDoxywizardを使わないで、テキストエディタで書き換えてるんですか?
Doxywizardだと DOXYFILE_ENCODING は UTF-8 にしないと正しく動作しないはずなので。

406 :デフォルトの名無しさん:2010/03/10(水) 16:41:23 .net
>>405

ソースファイルを確認したところ、
新規に追加したものはSHIFT_JISだったのですが、
もともとあったソースは中国語のソースで、文字コードが"繁体字中国語"というもののようで、
このファイルを解析する時に、SHIFT_JISでないということで、エラーになるようです。

ありがとうございました。

407 :デフォルトの名無しさん:2010/03/10(水) 20:58:58 .net
中国語か。
最近ちらほら見かける。


408 :デフォルトの名無しさん:2010/03/18(木) 09:48:49 .net
こんなの作ってみた。良かったら使ってみて。

つ ttp://sourceforge.jp/projects/sfnet_doxygemplate/
  ttp://sourceforge.net/projects/doxygemplate/

今のところWindows専用だけど,Qtで作ってるのでLinuxでもビルドできるはず。
俺はWindowsオンリーなので,誰か手伝ってくれると助かるんだけど...

409 :デフォルトの名無しさん:2010/03/18(木) 10:17:11 .net
>>408
ほー。そういう着眼点か。

そのdoxygemplateなら、
WindowsビルドしかなくてもLinuxでもWineを使えば普通に動きそうだ。



410 :デフォルトの名無しさん:2010/03/19(金) 02:55:22 .net
どげなもんなのか、簡単に解説頼む。

411 :408:2010/03/19(金) 07:27:50 .net
>>409
レスサンクス。

> WindowsビルドしかなくてもLinuxでもWineを使えば普通に動きそうだ。

Linuxのことは知らないのでググってみtけど面白そう。
タスクトレイもちゃんと使えるの?


>>410
使い方を簡単に言うと、

・起動するとタスクトレイに常駐する。

・エディタで編集中のC/C++のソースの関数宣言(.hでの定義部でも.cや.cppの実装部
 でもOK)をクリップボードにコピーする。宣言の頭から、引数リストの閉じカッコまでが
 入ってればOK。それ以降は入っていても構わないが無視される。

・タスクトレイのアイコンを右クリックして「テンプレート編集」を選ぶと、編集画面が
 現れる。この段階で既に関数の引数やリターン値を解析して、retval コマンド
 とリターン値の型や、param コマンドと引数名が作成されている。
 この画面で param コマンドの[in]⇔[out]⇔[in,out]を切り替えたり、
 行の削除/追加や、details など幾つかのコマンドの追加が出来る。

・編集が終わったら「クリップボード保存」を押すと編集した内容が
 クリップボードにコピーされ、編集画面が閉じる。

・テキストエディタで関数宣言の上にクリップボードから作成されたテンプレートを
 ペーストする。

こんな感じ。

412 :デフォルトの名無しさん:2010/03/19(金) 08:31:31 .net
>>411
なるほど、面白そうじゃん。エディタのマクロと巧く連携できればそこそこシームレスに編集できそうだ。

413 :409:2010/03/19(金) 12:18:28 .net
>>411
> タスクトレイもちゃんと使えるの?
俺もそんなにデスクトップLinuxを使い込んでいる訳じゃ無いので、
ごめん、わかんないわ。

タスクトレイに相当するとこも使えそうな気がするけど、
もしダメでもまあLinuxユーザーならソースだけおいとけば
自分でビルドする人が多いだろうしいいんでね?


414 :デフォルトの名無しさん:2010/03/25(木) 20:06:58 .net
C言語、UTF-8、日本語コメントあり

doxygen 1.6.3
W32TeX (texinst2010.zip)
でpdf出力のためにLaTeXで出力させてみたんですが

epsの出力で

Generating caller graph for function XXXXXXXX
epstopdf ($Id: epstopdf.pl 17507 2010-03-19 22:52:56Z karl $) 2.15
!!! Error: Writing to gs failed, signal 127

ってなります回避する方法はあるのでしょうか?

415 :397:2010/04/13(火) 07:00:23 .net
>>397のバグですが、
Doxygen 1.6.3 で直っていないようでしたので報告しました。

Bug 612858 ? Doxygen takes a NON-INLINE template function for INLINE one mistakenly.
ttps://bugzilla.gnome.org/show_bug.cgi

直してくれるそうです。
やったー!!

416 :デフォルトの名無しさん:2010/04/26(月) 22:53:59 .net
死亡回避sage

417 :デフォルトの名無しさん:2010/06/16(水) 03:07:30 .net
Doxygen 1.7.0 age

418 :デフォルトの名無しさん:2010/06/26(土) 01:54:40 .net
Doxygen 1.7.1 age

419 :デフォルトの名無しさん:2010/06/26(土) 08:13:54 .net
>>408
面白いですね。
個人的にはタスクトレイに常駐するより、
Alt + tab で切り替えられる方が使いやすい気がしますが、
どうなんでしょう?
Linuxでどうするの?って問題も無くなると思いますし。

ちなみにemacsユーザーの人は
doxymacs使ってるよね?

420 :デフォルトの名無しさん:2010/06/26(土) 10:23:10 .net
>>418
昨日1.7.0インストールしたばかり(ToT)


421 :408:2010/06/27(日) 20:21:31 .net
>>419
レスありがとうございます。

> 個人的にはタスクトレイに常駐するより、
> Alt + tab で切り替えられる方が使いやすい気がしますが、
> どうなんでしょう?

なるほど,それはいいかも知れません。
Linuxは使わないので知らないんですが,Linuxでもアプリケーションの切り替え
はAlt + tabなんですか? 別にそうでなくても問題はないんですが。

実は最初はWIN32 APIを使って指定キー(Ctrl または Shift または Alt)の指定
回数連打でアクティブになるようにしてたんですが,これだとWindows専用に
なってしまうのでやめたんです。でもやはりキーボードで操作できた方が
いいですよね。

他の操作もキーボードでできるようにするなど,まだ改良点がありますし,
Alt + tabでアクティブになったときにクリップボードから関数の宣言部分を
取り出して処理するとなると,全体の構成も考え直さなければならないので,
少し時間が必要だと思いますが,やってみたいと思います。

ありがとうございました。


422 :デフォルトの名無しさん:2010/06/28(月) 10:48:57 .net
>>421
「こんなの」がどんなのか判らないから試してみる気にもなれないのだが。
せめて、どんなのか書いてくれ。

423 :デフォルトの名無しさん:2010/06/28(月) 23:20:53 .net
>>422
>>411に書いたんですが。あと>>408のリンク先のスクリーンショットを見て
いただくと雰囲気がわかるかも知れません。

424 :デフォルトの名無しさん:2010/07/01(木) 09:36:08 .net
だからさぁ、なんでだらだら説明することしかできないの?

425 :デフォルトの名無しさん:2010/07/01(木) 21:22:54 .net
あんたこそダラダラ聞いてないで、とっとと使ってみりゃいーじゃん。
売り物じゃないんだから、>>423だってそうまで言われて使って欲しいとは思わんだろ。

426 :デフォルトの名無しさん:2010/07/01(木) 23:42:21 .net
>>424
機能の全容をまあまあ簡潔に説明されてるのに、それすら読まずにわざわざ文句書くのは引くわ。

427 :デフォルトの名無しさん:2010/07/03(土) 22:55:03 .net
頭おかしいやつに関わるなよ。

428 :デフォルトの名無しさん:2010/07/06(火) 09:51:30 .net
一番エラーとかなく安定してるのって1.5.5?

429 :デフォルトの名無しさん:2010/07/08(木) 11:44:52 .net
>>428
もっと新しいのでもいいんでない? 私のところでは1.5.8で止まっているけど。

430 :デフォルトの名無しさん:2010/07/12(月) 12:00:37 .net
俺は毎回新しいのにしてるよ。
これから先 更新されていくにあたり、
あんまり最新から離れていると
一気に対応しなきゃならなくなっちゃってめんどくさいから。


431 :デフォルトの名無しさん:2010/07/13(火) 12:16:09 .net
genのHPでバージョン使用アンケートとか実施するべきだよな
バージョンあげても劣化することが多いなら、良いベースから作った方がいい
イタチごっこになりかねん

432 :デフォルトの名無しさん:2010/07/25(日) 20:04:11 .net
いつの間にかスタイルシートが新しくなってるじゃないか

433 :デフォルトの名無しさん:2010/07/29(木) 01:31:04 .net
pythonのソースってFilesに表れる? RHEL5に乗ってる
1.4.7を使ってるんだけど現れない。 クラスは現れるんだけど。

最新を野良ビルドしようと思ったけど依存関係は深いなあ。

434 :デフォルトの名無しさん:2010/07/30(金) 00:32:06 .net
>>433
公式の使用例だと、pythonの場合は@fileじゃなくて@package使ってるみたいだけど。

435 :デフォルトの名無しさん:2010/07/30(金) 04:15:28 .net
>>434
ヒントサンクス。 なるほど、そうするとNamespaceの方に現れますね。 
defgroupとかは全然認識してくれないのにそれだけは効きます。

まあ、それでお茶を濁しますか。 

436 :デフォルトの名無しさん:2010/08/18(水) 00:30:27 .net
既存のソースをdoxy化しようとしてるんだけど、全てのヘッダーに長いライセンス事項が
書かれてるので、@fileなんかをそのヘッダ上に追加するとファイルの説明にそれが全て
追加されるのが鬱陶しい。 これを隠す方法は何があるでしょう? とりあえず、

/**
@file hoge.c

doxygen 用のコメント
*/

/*
既存のヘッダーはこっちに隔離
*/

ってしてるんですけど、もっといい方法があるなら知りたいです。

437 :デフォルトの名無しさん:2010/08/18(水) 00:33:49 .net
>>436
そのやり方でいいんじゃないか?

438 :435:2010/08/19(木) 22:05:53 .net
まっ、いいか。

しかしdoxygenいいねえ。 今のプロジェクトでドキュメントの無い、コメントの殆どない
ライブラリを使わなくてはならないのだが、ソースを読みながら解析して理解した事はどんどん
コメントに書き加えていき、doxygenを通すと立派なドキュメントが出来上がっていく。 

ライブラリ内の論理構造からいくつかのグループに分け、中心となるファイルのコメントの中で
@defgroupし、関連するファイルは@ingroupでそのグループにまとめる。 @defgroupした
コメントの中ではそのグループの中での主要なコンポーネントを解説。 解説の中で引用する
ファイル名とかクラス名(HogeClass::)、メンバー名等(HogeClass::hogeMemember)の参照は
全て自動的にリンクになるからそのままソースのナビゲーションが出来る。 

最後に@mainpageを作ってこれらのグループ間の関連をメモし、@refでそれぞれのグループに
リンクを張って出来上がり。

ソースを読んで自分なりにメモを作ったり、wikiにまとめたりとかは過去にしたけど、これは
ソースに完全に統合されているので資産として生きながらえると期待する。 




439 :デフォルトの名無しさん:2010/08/21(土) 21:07:53 .net
どっかにDoxygenで生成できる旨をコメントしておくことをお勧め。
でないと、Doxygenで生成されたhtmlを編集しようとする馬鹿が出てきかねない。

440 :デフォルトの名無しさん:2010/08/23(月) 11:44:11 .net
generated by doxygenってロゴがあるじゃないかー!

441 :デフォルトの名無しさん:2010/09/10(金) 11:55:39 .net
graphiz 2.26.3使ってグラフ出力してるんだけど、画像にパスが格納されちゃうんだ
誰かクラス名もしくはファイル名だけ出力出来る方法知らない?

doxyのバージョンによるのかな

442 :デフォルトの名無しさん:2010/09/26(日) 23:29:16 .net
#ifdefで囲った部分が無視されるんですが、こういう場合はどうしたらいいんでしょう?

#ifdef HOGE_VER
//! 特定の場合専用の関数
void Hoge();
#endif

443 :デフォルトの名無しさん:2010/09/27(月) 00:57:34 .net
DoxyfileでDEFINEできるから、そこでHOGE_VERをDEFINEすれば宜しいかと。

444 :442:2010/09/27(月) 03:24:37 .net
ありがとうございます。PREDEFINEてところに書いたらできました。

445 :デフォルトの名無しさん:2010/10/09(土) 22:35:39 .net
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
とすれば

#ifndef DOXYGEN_SHOULD_SKIP_THIS

Doxygenに無視させたいコード

#endif /* DOXYGEN_SHOULD_SKIP_THIS */

こんなふうに使えます。


446 :デフォルトの名無しさん:2010/10/12(火) 03:11:52 .net
1.7.2 キタ

447 :デフォルトの名無しさん:2010/10/30(土) 16:40:01 .net
Graphvizの話ってここでしてもいいすかね。
専用スレが見当たらないんだが

448 :デフォルトの名無しさん:2010/10/30(土) 20:12:25 .net
Doxygenで使う限りにおいてはOKじゃね?

449 :デフォルトの名無しさん:2010/11/01(月) 12:16:48 .net
>>447
doxygenに絡まないならこの辺で。
スレ立てるまでもない質問はここで 108匹目
http://hibari.2ch.net/test/read.cgi/tech/1287477677/

私も興味あるから是非。

450 :デフォルトの名無しさん:2010/11/01(月) 14:11:14 .net
まったく絡まないので、あとでスレ立てするわ
昔はGraphvixのスレあったみたいだし、続きってことにする

451 :デフォルトの名無しさん:2010/11/04(木) 00:23:09 .net
Graphvixについて答えられる有識者はいるんだろうか。


452 :デフォルトの名無しさん:2010/11/04(木) 10:19:10 .net
うむ。寡聞にしてGraphvixなるものは与り知らないな。

453 :デフォルトの名無しさん:2010/11/04(木) 10:54:48 .net
vixじゃなくてvizだよ!わざとだよ!ついだよ!

454 :デフォルトの名無しさん:2010/11/04(木) 11:09:33 .net
Graphvizって言えば、同じrankにあるnodeの位置関係のヒントって与えられないかな。
doxygenからの出力でも、関数ツリーの上下がある程度同じになってくれると助かるんだけど。
例えば、
main->a->b
    ->c-^

    ->c-v
main->a->b
になったりしないように。

455 :デフォルトの名無しさん:2010/11/05(金) 19:08:08 .net
>>454
Graphviz(というかdotエンジン)単体なら、group属性を指定しておけばある程度は制御できる。
doxygenからは(事実上)無理。関数ツリーの上下が変わるのって下請け関数の影響が大きいから
レベルを指定して下請けまで展開しないようにするってのも手。まぁ、どうしてもってことなら自作するしかw

456 :デフォルトの名無しさん:2010/11/19(金) 12:12:25 .net
派生クラスで仮想関数を再定義した場合、派生クラスのメンバー一覧にこの関数が表示されますが、
これを非表示にするにはどうすればいいでしょうか?
数が多く基底クラスで表示してくれれば充分です。


457 :デフォルトの名無しさん:2010/11/19(金) 12:26:29 .net
・仮想関数がprivateならDoxyfileでprivateなメンバ関数は出力しない設定にする
・#ifndefで括って、Doxyfileでそのマクロを定義する
・他の出力したい関数にDoxygenコメントが必ずあるなら、Doxygenコメントのない関数は出力しない設定にする

458 :デフォルトの名無しさん:2010/11/19(金) 13:44:48 .net
3番目の方法で出来ました。ありがとうございました。
HIDE_UNDOC_MEMBERS = YES
ドキュメントづけは全部やるのでこれで大丈夫です。

459 :デフォルトの名無しさん:2010/11/26(金) 20:32:20 .net
doxygenで内部用と外部用のドキュメントの2種類を作りたいのですがどうのうな形にするのが
いいですか。
とりあえず全部ドキュメントを書いておいて外部用の場合は
非公式なクラス、関数を隠したいのですが、どうすればいいのやら。


460 :デフォルトの名無しさん:2010/11/26(金) 20:40:49 .net
>>459
>>340の応用で
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
とかにすれば。
これを内部用と外部用のマクロにすればおk!

461 :デフォルトの名無しさん:2010/11/27(土) 12:15:32 .net
いや、まず @internal の使用を検討する方が先だろう。

462 :459:2010/11/27(土) 12:19:20 .net
>>461
@internal でいけました。
探していたのはこれです。有難うございました。

463 :デフォルトの名無しさん:2010/12/16(木) 18:07:20 .net
hosh

464 :デフォルトの名無しさん:2011/01/04(火) 13:01:20 .net
明けましておめでとうございます。
hosho

465 :デフォルトの名無しさん:2011/01/05(水) 08:16:00 .net
1.7.3 が出ました

466 :デフォルトの名無しさん:2011/01/08(土) 11:21:38 .net
バグが2つ取れて新たに1つ入るんだよなこれって。

467 :デフォルトの名無しさん:2011/01/15(土) 20:33:03 .net
C++で多重継承していた場合、一番最後に指定したクラスのオーバーライド関数しか「〜を実装しています。」が出ないな。
例えば、

class BasicActor : public Actor, public IEventListener
{

だとActorの方の仮想関数をオーバーライドしても「〜を実装しています」が表示されない。
ActorとIEventListenerの順番を入れ替えると逆の方のクラスの関数の「〜を実装しています」が表示されない。
早く治るといいなあ。


468 :デフォルトの名無しさん:2011/01/20(木) 21:42:56 .net
doxygen凄く便利そうだな!だけどRTF出力がうまくいかね…。
一応>>138のバイナリとdoxywizard(1.7.3)で試してるんだが、

OUTPUT_LANGUAGE=Japanese
INPUT_ENCODING=CP932

以外に何か設定って必要なのか?
もし良かったらだれかDoxyfileをうpしてくれると凄く助かるわ…。

469 :デフォルトの名無しさん:2011/01/21(金) 00:23:16 .net
>>468
OUTPUT_LANGUAGE=Japanese-en


470 :デフォルトの名無しさん:2011/01/21(金) 21:50:09 .net
>>469
レスサンクス!
拾ってきたサンプルソースがCP932じゃなかったというどうしようもない原因でしたorz
スレ汚しスマソ

471 :デフォルトの名無しさん:2011/04/05(火) 10:52:41.34 .net
1.7.4 が出たようですが....
試してみた人います?

472 :デフォルトの名無しさん:2011/05/14(土) 11:06:54.20 .net
1.7.4の日本語のrtf出力やっぱりおかしい。
以下、対処メモ。
>102,>134を参考にソース修正・コンパイルして日本語rtf出力できたの確認。
doxygen-1.7.4/src/rtfgen.cppのencodeForOutputを修正
uint i;
uint mbFlag=0; // ←追加
for (i=0;i<enc.size();i++)
{
uchar c = (uchar)enc.at(i);
if (c>=0x80 || mbFlag==1) // ←修正
{
char esc[10];
sprintf(esc,"\\'%X",c);
mbFlag=1-mbFlag; // ←追加
t << esc;
}
else
{
t << (char)c;
}
}

473 :デフォルトの名無しさん:2011/06/09(木) 18:58:40.57 .net
@だとドキュメント付けできて、\だとできないのは何故ですか?


474 :デフォルトの名無しさん:2011/06/09(木) 23:04:27.97 .net
>>473
言ってることがよく判らん。普通に@paramでも\paramでもできると思うが。

475 :デフォルトの名無しさん:2011/06/10(金) 09:31:34.72 .net
>>474
ところが、\paramだとだめで、@paramだとできるんすよ。
何か切り替えるようなオプションがあるのだろうか?


476 : 忍法帖【Lv=3,xxxP】 :2011/06/10(金) 14:41:51.21 .net
そのダメなファイルと環境とリビジョンについて詳しく。

477 :デフォルトの名無しさん:2011/06/16(木) 12:06:46.19 .net
\\にすればおk

478 : 忍法帖【Lv=6,xxxP】 :2011/06/16(木) 21:55:08.60 .net
んな馬鹿な

479 :デフォルトの名無しさん:2011/06/17(金) 15:09:51.06 .net
馬鹿っていうほうが馬鹿

480 :デフォルトの名無しさん:2011/08/26(金) 14:21:37.30 .net
復帰

481 :デフォルトの名無しさん:2011/09/15(木) 21:14:39.34 .net
#define HOGE 123
msg.h の 20 行で定義されています
みたいな行番号表示をオフにするにはどうしたらいいの?

482 :デフォルトの名無しさん:2011/10/27(木) 08:42:23.16 .net
1.7.5.1 は日本語 rtf 出力の文字化けが直ったみたいだ。

483 :デフォルトの名無しさん:2012/02/16(木) 01:44:46.69 .net
C++で、ソースを弄りたくない他所のライブラリの基底クラスのpublicなメソッドのリファレンスを
自作の派生クラス側のソースで書く事ってできないもんでしょうか。

484 :デフォルトの名無しさん:2012/02/17(金) 00:52:56.77 .net
>>483
宣言や定義の直前にしかその関数etcの説明を書けないと思っているなら一度doxygenの使い方をちゃんと勉強すると良い。
doxygenのタグのリファレンスを眺めるだけでも全然違うと思う。


485 :483:2012/02/21(火) 23:05:35.96 .net
@fn を書いているのに出力されないと思ったら、うっかり他のネームスペース内に書いていた為でした。
お騒がせしました。

486 :デフォルトの名無しさん:2012/02/26(日) 01:02:49.50 .net
Doxygen 1.8.0 age

487 :デフォルトの名無しさん:2012/02/26(日) 01:16:48.60 .net
x64バイナリも出たんだな

488 :デフォルトの名無しさん:2012/03/01(木) 14:57:23.15 .net
こういう、箇条書きをインデントさせると
  /*!
      - 列挙したい場合はこのように先頭に -をつける
        - 更にインデントをつけたいときはこうする
          - 更にインデントをつけたいときはこうする
  */

 ・列挙したい場合はこのように先頭に -をつける
   ・更にインデントをつけたいときはこうする
     ・更にインデントをつけたいときはこうする

こうやってくれるんだけど


これを、このように、
ソースにそった形でインデントさせたいんだけど

  //! - 列挙したい場合はこのように先頭に -をつける
  if (a == 1) {
    //!   - 更にインデントをつけたいときはこうする
  }

これを普通にやると
 ・列挙したい場合はこのように先頭に -をつける
 ・更にインデントをつけたいときはこうする
こうなっちゃうんだよね

「単独行で、強制的に2つ以上のインデント」させる、いい方法ないかねぇ

というか、そもそも
doxygenは、こういうコメントを書くべきじゃないのかな?

489 :デフォルトの名無しさん:2012/03/05(月) 04:23:13.19 .net
やはりテンプレート関連でおかしくなるなあ

490 :デフォルトの名無しさん:2012/05/21(月) 11:48:57.46 .net
Doxygen 1.8.1 age

491 :デフォルトの名無しさん:2012/06/13(水) 13:00:33.35 .net
http://www.doxygen.jp/manual.html にあるマニュアル、
一括ダウンロードできるようになってないのかな。
Webに繋がっていないときにこそ見たいときが多くて、歯噛みすることが多いんだけど。
# 取り敢えず、コマンドのページだけはダウンロードしておいたけど実例見られない……

492 :デフォルトの名無しさん:2012/06/14(木) 15:19:16.46 .net
「階層まるごとダウンロードツール」使えばええんちゃうのん

493 :デフォルトの名無しさん:2012/07/17(火) 13:19:18.40 .net
C#で表示されるクラス名が全部
<パッケージ名>.<クラス名>
になってすごく見づらいんですが、これをクラス名だけにする方法を教えてください
何というオプションなのかそもそも名前がわかりません

494 :デフォルトの名無しさん:2012/07/17(火) 13:26:33.37 .net
HIDE_SCOPE_NAMESでいけた。お騒がせしました

495 :デフォルトの名無しさん:2012/07/24(火) 20:50:05.56 .net
クラスの階層じゃなくて、依存関係をグラヒカルに見たいんだけど
なにを設定すればいいんだっけか

496 :デフォルトの名無しさん:2012/07/25(水) 11:08:33.44 .net
HAVE_DOT
後は適当に。

497 :デフォルトの名無しさん:2012/10/14(日) 16:05:32.12 .net
気になるけどまだ使っていない。
便利なんだろうか?

498 :デフォルトの名無しさん:2012/10/14(日) 18:43:04.08 .net
使えば判る。是非使え。

499 :デフォルトの名無しさん:2012/11/17(土) 02:10:59.92 .net
Doxygen 1.8.2 age

500 :デフォルトの名無しさん:2012/12/01(土) 05:59:46.03 .net
doxygenで制作されたライブラリのレファレンスがあるんだけど、オフラインで見たいからダウンロードしたいんだが、なにか方法はないだろうか。
なんかサーバー側の調子が悪いのか、見たい時に中々見れない時とかあって困ってるんだ。

なんかメインページがphpだからなのか、普通のダウンロードツールじゃうまくいかないんだ。

501 :デフォルトの名無しさん:2012/12/01(土) 06:02:58.31 .net
じっさいに見てみないことには何とも言えん
URIはよ

502 :デフォルトの名無しさん:2012/12/01(土) 07:16:56.55 .net
doxygenで出力されるのは通常htmlで、phpじゃないよ。
そうでなくても、このスレで聞くのはスレ…いや、鼬害。

503 :デフォルトの名無しさん:2012/12/01(土) 19:32:43.73 .net
\relatesは関数にしか機能しないということですが、同じようにC++のクラスを他のクラスに関連付ける手段はないでしょうか?

//何かのTraitsクラステンプレート
template < typename T > xxxx_traits;

/*! クラスA
*/
class A { ... };

/*! xxxx_traitsのクラスAに対する特殊化バージョン
 \relates A ← 例えばこんな風に
*/
template <>
struct xxxx_traits< A > {.... };

クラスAのドキュメントからxxxx_traits< A >へのリンクを張りたいのですが。

504 :503:2012/12/01(土) 19:51:28.94 .net
書き忘れていました。
今は、クラスAのドキュメントから\saでリンクを張っています。
しかし、Related Functionsと同列にできないものか、と思ったのです。
後出しですいません。

505 :デフォルトの名無しさん:2012/12/02(日) 00:27:49.22 .net
プログラム関係で詳しい奴っている?

506 :500:2012/12/05(水) 18:40:16.24 .net
>>501 >>502
doxygenで構築されるのはhtmlなのか。
ソースコード向けホームページ作成ツールみたな認識でいいんかな。
ってことはdoxygenを仮にインストールしたとして、WEB上にあるdoxygenで出力したページはhtmlとかだからgitみたいにダウンロードするとかそういうのも無いんか

ちなみにURLはこれ
ttp://www.arongranberg.com/astar/docs/

507 :デフォルトの名無しさん:2012/12/07(金) 01:22:50.83 .net
>>506
使った事はないけどpdfへの出力もサポートしてるよ。

Output Formats
http://www.stack.nl/~dimitri/doxygen/output.html

508 :デフォルトの名無しさん:2012/12/07(金) 11:28:30.72 .net
TeXからps経由でpdfにするのは日本語の扱いで結局満足いく出力になったことがないんだよなぁ。
rtfからdoc経由でpdfにするのはMS-Office2010があれば日本語も大丈夫なようだけど。

509 :デフォルトの名無しさん:2012/12/11(火) 13:15:43.39 .net
>>506
wget --mirrorとか。

510 :デフォルトの名無しさん:2012/12/27(木) 01:20:09.22 .net
Doxygen 1.8.3 age

511 :デフォルトの名無しさん:2012/12/27(木) 13:15:24.02 .net
New features 見てみた。External Indexing and Searching 面白そうだな。
ttp://www.stack.nl/~dimitri/doxygen/extsearch.html

512 :デフォルトの名無しさん:2013/01/17(木) 19:51:25.05 .net
RTFで出力したときに
1.先頭ページが「TITLE AUTHOR Version 1.0.0 CREATEDATE」となり内容が出力されない。
2.3ページ目が「目次 Tavle of contents」となり出力されない
3.最終ページが「索引 INDEX」となり出力されない
4.デストラクタ「~」で始まる名称が文字化けする
version は1.8.2 です。
DOXYFILE_ENCODING = UTF-8
INPUT_ENCODING = SJIS
としています。個別でも構いません解決方法ご存知の方はおられませんか。

513 :デフォルトの名無しさん:2013/01/18(金) 09:11:06.86 .net
>>512
INPUT_ENCODING=CP932
の方がいいと思います。
後は、MS WORD で読み込んで全文選択した後フィールド更新

514 :デフォルトの名無しさん:2013/01/18(金) 09:23:11.01 .net
>>513
早速やってみたら全てきれいに解決しました。
ありがとうございました。

515 :デフォルトの名無しさん:2013/01/18(金) 18:25:25.37 .net
>2.3ページ目が「目次 Tavle of contents」となり出力されない
なんだこれ。

516 :デフォルトの名無しさん:2013/01/18(金) 18:28:31.06 .net
>>515
「目次 Table of contents」のパンチミスでした。m(__)m

517 :デフォルトの名無しさん:2013/01/22(火) 23:35:14.46 .net
Doxygen 1.8.3.1 age

518 :デフォルトの名無しさん:2013/04/05(金) 22:53:14.91 .net
Doxygen 1.8.3.1 使ってます
rtfの出力なのですが

VisualStudio 2010でC#で使おうと思ってます

DOXYFILE_ENCODING = CP932
INPUT_ENCODING = UTF-8

として、出力したところ
refman.rtf
は何となくそれっぽい出力をされているのですが
おまけで作られる大量のrtfファイルが、UTF-8のままなのか文字化けしちゃいます


refman.rtfファイルに対して、ワード2007で
読み込んで全文選択した後フィールド更新
としても、おまけファイルが取り込まれた様子もないです(おまけファイルの図が取り込まれていない)

それと、目次が「TOCが間違っています」・・・
というエラーになってしまうページがあったりします

doxygenはあまりワード出力は向いてないのでしょうか
htmlは結構イメージしたものに近い出力だったのですが

519 :デフォルトの名無しさん:2013/04/10(水) 15:03:15.14 .net
>>518
ソースもcp932にしないと難しいかもね。
それと、word2010にしたら改善するかもしれない。
いずれにしても、日本語は相性悪いよ。
そうそう、JapaneseでダメならJapanese-enも試してみる価値あり。

520 :デフォルトの名無しさん:2013/05/06(月) 14:48:10.14 .net
1.8.3.1で、C言語でグローバル変数を使う時に、
(foo.h)
extern int a;
(foo.c)
int a;
って書くと出力にaが2個現れるのですが、仕様でしょうか

521 :デフォルトの名無しさん:2013/05/06(月) 14:53:50.36 .net
@addtogroupでcとhを同じグループに入れた時だけ>>520みたいな状態なので、とりあえずexternの部分だけグループから外します

522 :デフォルトの名無しさん:2013/05/06(月) 15:13:09.82 .net
externはグループから外さなきゃいけないか
まあそりゃそうだな
失礼しました

523 :デフォルトの名無しさん:2013/05/10(金) 23:59:33.52 .net
doxygenを意識していないソースコードに
doxygen用のコメントのテンプレートみたいなのを書き込む機能ってありませんか?
例えば

class Hoge
{
...
};
などとあったら
/**
* @brief brief of Hoge
*
* detail of Hoge
*/
class Hoge
{
...
}:
のようなコメントを挿入するような

524 :デフォルトの名無しさん:2013/05/12(日) 07:16:01.98 .net
>>523
つeclipse

525 :デフォルトの名無しさん:2013/05/13(月) 17:14:58.88 .net
>>523
んなもん、Doxygenにあるわけないだろ。
LL言語で作るかエディタのマクロで作るかすればいいだろうが、それはスレ違い。
あぁ、JavaDocスタイルを有効にしておけば、もそっと簡単になるな。

526 :デフォルトの名無しさん:2013/05/13(月) 20:40:48.28 .net
でもそれこそdoygenにパーサがあるわけだから、doxygen内蔵でそういう機能があったらいいなとお思うのは
自然で低コストだべ?

527 :デフォルトの名無しさん:2013/05/14(火) 01:41:00.13 .net
VisualStudio で C++ なら DoxyComment だろうけど。

528 :デフォルトの名無しさん:2013/05/14(火) 05:45:06.00 .net
ありがたい、求めていたものはそれです

529 :デフォルトの名無しさん:2013/05/14(火) 12:51:38.41 .net
>>527
これ便利そうやな
コマンドライン版ある?

530 :デフォルトの名無しさん:2013/05/14(火) 20:11:22.93 .net
>Express Editionでは使えません
チクショー!

531 :デフォルトの名無しさん:2013/10/28(月) 16:59:29.04 .net
細かいのはヘッダファイルに書く派? ソース本体に書く派?

532 :デフォルトの名無しさん:2013/10/28(月) 18:54:07.23 .net
本体と別々にdoxygenコメントを書くことはねーよ。doxygenのいいところが全く無駄になるだろ。
ヘッダファイルに書くのは前方宣言とマクロ定義くらいだから当然ソース本体にしかdoxygenコメントなんざ書かない。

533 :デフォルトの名無しさん:2013/10/31(木) 15:00:35.36 .net
@parのなかでPREタグ使いたいんだけどうまくいかない
AAとか書くときってみんなどうしてるの?

534 :デフォルトの名無しさん:2013/10/31(木) 15:27:12.80 .net
AAとか書かない

535 :デフォルトの名無しさん:2013/10/31(木) 20:46:05.36 .net
>>534
きみの思いとか気持ちを聞いているわけじゃあないんだ。 わかるね?

536 :デフォルトの名無しさん:2013/11/01(金) 16:50:18.73 .net
>>535
なんのAA書きたいんだよ

537 :デフォルトの名無しさん:2013/11/01(金) 17:41:02.50 .net
>>536
┌─┬─┬─┬─┐
│あ│い│ │お│
└─┴─┴─┴─┘
こういうのとか

538 :デフォルトの名無しさん:2013/11/01(金) 17:54:00.33 .net
>>537
table使えば?

539 :デフォルトの名無しさん:2013/11/01(金) 22:42:39.54 .net
@htmlonlyじゃダメなのか?

540 :デフォルトの名無しさん:2013/11/02(土) 17:17:04.47 .net
>>531
俺はヘッダに書くね
実装する時はヘッダから見るし

541 :デフォルトの名無しさん:2013/11/04(月) 13:47:21.10 .net
>>532>>540、よくどちらも聞くしどちらも一理あるんだけど
どっちがより一般的なのかな。 長いものに巻かれたい。

542 :デフォルトの名無しさん:2013/12/17(火) 11:52:10.96 .net
調べても分からなかったので、質問です。
同じ引き数の関数をまとめたいですが、どうすればいいでしょうか?
以下のようにしたいです。(doxygen 1.8.5使用)

関数
-----
bool add_apple(int* out, int in);
bool add_orange(int* out, int in);
bool add_lemon(int* out, int in);
-----
果物を追加する

引き数
 [out] out 出力
 [in] in 入力

戻り値
 成功 true
 失敗 flase

543 :デフォルトの名無しさん:2013/12/17(火) 15:33:50.57 .net
\refで参照するようにするとか。

544 :デフォルトの名無しさん:2013/12/17(火) 18:49:21.24 .net
Doxygen使ってるプロジェクトのドキュメントとかを見てみたけど
複数の関数をまとめて表示してるのは全く見つからなかった…

\refはグループ化とかしないと行けないっぽいし若干敷居が高い…
とりあえずバラでドキュメント化しておくよ
どうもでした

545 :デフォルトの名無しさん:2013/12/18(水) 16:18:20.67 .net
>>542
ところで、それ言語なんなの?

546 :デフォルトの名無しさん:2013/12/19(木) 00:12:07.15 .net
最近はC言語もマイナーになったのかぁ....

547 :デフォルトの名無しさん:2013/12/19(木) 10:13:56.97 .net
>>545
C++だけど何か変か?
もちろんサンプル用にその場で書いただけなんだけど

548 :デフォルトの名無しさん:2013/12/19(木) 12:58:14.64 .net
>>547
少なくとも>>545のコードはへん

549 :デフォルトの名無しさん:2013/12/19(木) 12:58:46.35 .net
>>542だった

550 :デフォルトの名無しさん:2013/12/19(木) 13:52:30.20 .net
もうちょっと分かり易く書くと

bool add_apple(Fruits* fruits, int add_num); // 成功 true 失敗 false
bool add_orange(Fruits* fruits, int add_num);
bool add_lemon(Fruits* fruits, int add_num);

C++なのに第一引き数にオブジェクトの指定が必要だけど、
別に変ではないよ

551 :デフォルトの名無しさん:2013/12/19(木) 14:29:38.26 .net
いや変

552 :デフォルトの名無しさん:2013/12/19(木) 15:26:51.69 .net
変なのは分かったから、ちゃんと具体的に言えないの?

553 :デフォルトの名無しさん:2013/12/19(木) 16:21:36.49 .net
君に使う時間ないし
強烈に変だと思ったからそれだけ伝えたかっただけ

554 :デフォルトの名無しさん:2013/12/19(木) 16:29:15.77 .net
あ、でもFruitsの定義とbool add_apple()の定義を書くというなら、そのコードのどこがおかしいかは指摘できる

555 :デフォルトの名無しさん:2013/12/19(木) 16:35:13.03 .net
スレ違い

556 :デフォルトの名無しさん:2013/12/19(木) 17:05:53.26 .net
逃げたw

557 :デフォルトの名無しさん:2013/12/19(木) 17:49:31.89 .net
まあC++の天才と謳われた俺に書かせれば
bool add ( string fruits_type, Fruits* fruits, int_add_num )
かな。

かなりスマートな設計になっているのが分かると思う。

558 :デフォルトの名無しさん:2013/12/19(木) 17:54:43.58 .net
なるほど。

559 :デフォルトの名無しさん:2013/12/19(木) 18:00:35.80 .net
Fruits fruits;
fruits.add("apple", 10);
とかするのが普通な気もするが。

560 :デフォルトの名無しさん:2013/12/19(木) 18:44:41.90 .net
bool add_apple(Salud* salud, int add_num); // 成功 true 失敗 false
も定義しておけば、

Salud salud;
Fruits fruits; // Salud と継承関係はない

add_apple(salud, 10);
add_apple(fruits, 10);

と出来るメリットもあるので、一概にどれがいいとは言えない
状況による

561 :デフォルトの名無しさん:2013/12/19(木) 18:55:55.95 .net
>>546>>547>>550>>552>>557>>559

>失敗 flase
これじゃね?

562 :デフォルトの名無しさん:2013/12/19(木) 19:10:25.11 .net
まさかそんなあからさまなtypoに対して
「ところで、それ言語なんなの?」なんてドヤ顔でレスするのは想像の範囲外だわ

563 :デフォルトの名無しさん:2013/12/19(木) 22:42:48.16 .net
>>562
こういうのも「嘘を嘘と」の一環じゃねえかと思うんだが

564 :デフォルトの名無しさん:2013/12/20(金) 11:37:29.60 .net
>>561
> これじゃね?
違うよ

> 「ところで、それ言語なんなの?」なんてドヤ顔でレスするのは想像の範囲外だわ
一見C++なんだが、俺の知らない言語の可能性もあるので聞いた

>>560
> 状況による
まあ確かにそうなんだが、俺の見立てではどんな状況でも糞

> Salud salud;
> Fruits fruits; // Salud と継承関係はない
>
> add_apple(salud, 10);
> add_apple(fruits, 10);
も糞だ

565 :デフォルトの名無しさん:2013/12/20(金) 12:59:40.53 .net
設計思想を語りないなら他に行ってくれ。
まぁ、相手にされないからこんなニッチなところで管巻いているんだろうけど。

566 :デフォルトの名無しさん:2013/12/20(金) 13:28:10.11 .net
>>565
別に語りたくないし

変な物を変だと言う自由もないのかこのスレは

567 :デフォルトの名無しさん:2013/12/20(金) 13:30:26.58 .net
まあ、どこの誰かもわからん俺みたいな奴に変だの糞だの言われても、
自分に絶対の自信があれば無視しとけばいいだけの話だよ

568 :デフォルトの名無しさん:2013/12/20(金) 17:58:21.57 .net
まあ、上のコードとか見ると
doxygen 使う以前にもっと読みやすいコードを書く練習しろよとは思う。
doxy られても読む気がしなそうだぜ。

569 :デフォルトの名無しさん:2013/12/20(金) 19:08:41.10 .net
まぁとりあえず、4回も5回もどうでもいい書き込みしなくても
どう糞なのかを1回書き込んでくれれば、それでいいんだよ

570 :デフォルトの名無しさん:2013/12/21(土) 01:52:05.13 .net
flase対するツッコミだったほうがまだマシだったよーな・・・

571 :デフォルトの名無しさん:2013/12/24(火) 21:04:18.14 .net
とりあえずVC++のMFCで書くとしたら、こうするかな。

// Fruit.h
class CFruit : public CObject {
public:
virtual CString GetName() const =0;
};
// Apple.h
#include "Fruit.h"
class CApple : public CFruit {
public:
virtual CString GetName() const { return(_T("Apple")); }
};
// Orange.h
#include "Fruit.h"
class COrange : public CFruit {
public:
virtual CString GetName() const { return(_T("Orange")); }
};
// Lemon.h
#include "Fruit.h"
class CLemon : public CFruit {
public:
virtual CString GetName() const { return(_T("Lemon")); }
};
// FruitBasket.h
#include "Fruit.h"
#include <afxtempl.h>
typedef CTypedPtrArray <CObArray,CFruit *> CFruitPtrArray;
class CFruitBasket : public CFruitPtrArray;

572 :デフォルトの名無しさん:2013/12/24(火) 21:04:57.14 .net
// 続き

int main()
{
CFruitBasket objBasket;
CFruitPtrArray arr;

objBasket.Add(new CApple);
objBasket.Add(new COrange);
objBasket.Add(new CLemon);
arr.Add(new CApple);
arr.Add(new COrange);
arr.Add(new CLemon);
objBasket.Append(arr);

for(int nIndex=0;nIndex<objBasket.GetSize();nIndex++)
{
cout << "\r\nobjBasket[" << nIndex << "]=";
cout << (LPCTSTR)objBasket.GetAt(nIndex)->GetName();
}
}

573 :デフォルトの名無しさん:2013/12/25(水) 08:11:12.01 .net
Doxygen 1.8.6 age
http://www.stack.nl/~dimitri/doxygen/manual/changelog.html#log_1_8_6

574 :デフォルトの名無しさん:2015/05/21(木) 18:22:09.52 ID:qyP1wSea.net
Windows7でdoxywizardを使ってドキュメントを生成しているのですが、
出力されたログを見るとどうもすべての標準出力が先に出力され
その後に標準エラーがまとめて出力されているようです。

コマンドプロンプトから実行した時のように
標準出力でも標準エラーでもプログラムが出力した順に
出力されるようにしたいのですがどうすればよいでしょうか?

575 :デフォルトの名無しさん:2015/06/15(月) 20:30:40.25 ID:QWeDZK2P.net
>>574
Doxywizardを使わなきゃいいんじゃね?w

576 :デフォルトの名無しさん:2015/06/15(月) 20:39:41.35 ID:ZM3mWJtN.net
ある関数の概要って、どこに書けばいい?
関数の前に書くの?

577 :デフォルトの名無しさん:2015/06/15(月) 23:06:52.06 ID:5Knayh64.net
>>576
他にどこと迷うのさ?

578 :デフォルトの名無しさん:2015/06/16(火) 08:42:20.29 ID:6r2DIa1e.net
>>576
うちの場合、宣言がある場合はその直前、ないなら定義の直前。

579 :デフォルトの名無しさん:2015/06/28(日) 09:58:03.15 ID:n/fjwSaZ.net
ヘッダに書く派とソースに書く派の論争は
ドキュメントコメントが生まれたときから続いてるからな

580 :デフォルトの名無しさん:2015/06/30(火) 14:43:18.51 ID:X6br0/jB.net
Qtはソースに書いてあって、Doxygenはヘッダに書いてある。

ヘッダとソースだとソースの方が長くなるので、ヘッダに書く派の気持ちはわかる。
でも俺はソースに書いてる。

581 :デフォルトの名無しさん:2015/06/30(火) 14:46:20.40 ID:X6br0/jB.net
あと、ヘッダに実装も書く派が増えてきてるので、それはヘッダに書いたほうが良い理由になるかもしれない。
まあ別に、全然関係ないファイルに書いてもいいんだけど。

582 :デフォルトの名無しさん:2015/06/30(火) 15:11:32.39 ID:X6br0/jB.net
それでも俺がソースに書く理由は、ヘッダを索引に使ってるから。

本の目次に概要が一緒に書いてあったら50ページくらいに分量になって索引の役に立たないみたいな感じ。
今のエディタは、上に索引が付いてるし、クラスビューもあるから意味ないのかも。

でも、プルダウンリストって読みにくいんだよね。

583 :デフォルトの名無しさん:2015/06/30(火) 19:27:21.11 ID:TGfi4m1b.net
>>582
なるほど。 俺は昔からヘッダをマニュアルとして使っていたから
その流れでdoxygenを知って俺のためのツールだと歓喜したよ。

なので今でもヘッダに書く派なんだよね。
PHPとかやるときはいつもむずむずする。

584 :デフォルトの名無しさん:2015/12/10(木) 12:30:07.04 ID:CbzZRqKx.net
非常にフォルダが細分化されていてとてもinputに手動で登録したくない数なんだけど自動で階層降りてって全部ソース拾ってくれる機能ないの?

585 :デフォルトの名無しさん:2015/12/10(木) 13:40:54.08 ID:CbzZRqKx.net
すみません自己解決しました

586 :デフォルトの名無しさん:2016/01/12(火) 11:39:36.74 ID:Ixr4MzWJ.net
>>585
それは本当に自己で解決したのか?
偉大なる先人の知恵を拝借したのではないのか?

587 :デフォルトの名無しさん:2017/03/06(月) 12:02:40.45 ID:u9ff24A5.net
C++で function_>.html というファイルを作ろうとしてエラーになる
回避策を教えておくれ

環境は Windows 版バイナリ 1.8.13

588 :デフォルトの名無しさん:2017/03/06(月) 12:54:45.02 ID:sPLW5FVC.net
> の文字が、ファイル名として使えないのかな?

589 :デフォルトの名無しさん:2017/03/06(月) 13:29:51.18 ID:u9ff24A5.net
>>588
そう
Windowsでは使えない
多分 operator function 用のファイル名に
こういうファイル名を使おうとするんじゃ無いかと思う

SHORT_NAME を有効にすれば変わるかとも思ったんだけど
変化なかった

590 :デフォルトの名無しさん:2017/03/06(月) 13:39:05.08 ID:R4qOQgGq.net
macのひとか

591 :デフォルトの名無しさん:2017/07/07(金) 13:08:28.11 ID:L0Nf4DeT.net
ひとかたまりにコメントをつけたいんだけど
どうしたらいい?

592 :デフォルトの名無しさん:2017/07/07(金) 13:14:53.42 ID:RKYUWEia.net
http://www.doxygen.jp/grouping.html#memgroup

593 :デフォルトの名無しさん:2017/07/07(金) 13:48:38.31 ID:L0Nf4DeT.net
>>592
ありがとう


ついでに
構造体のビットフィールドを図にしたいんだけど
doxygenじゃやってくれない?

594 :デフォルトの名無しさん:2017/07/21(金) 10:58:46.71.net
入出力に構造体やクラスがあるとき
「このメンバーを使います」 というのを明示したいんだけど
どうしたらいい?

595 :デフォルトの名無しさん:2017/12/18(月) 16:09:28.76 ID:nn1kV11a.net
>>263,269

596 :デフォルトの名無しさん:2018/05/23(水) 21:02:28.55 ID:Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

GIUEM

597 :デフォルトの名無しさん:2018/07/05(木) 00:52:22.57 ID:RfoszcD2.net
WZ1

598 :デフォルトの名無しさん:2018/08/21(火) 21:29:50.55 ID:WjvHjE7F.net
スレタイのコンソメは何?

599 :デフォルトの名無しさん:2019/02/07(木) 00:33:49.07 ID:WhSy4xGk.net
2、3時間迷った。
Private変数が出ないから。
これは罠だな。
https://i.imgur.com/N4ZDw3L.jpg

総レス数 599
166 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200