【コメント】doxygen【コンソメ】
at TECH
1:デフォルトの名無しさん
08/05/30 19:50:27
無いので建てた
公式
URLリンク(www.doxygen.jp)
2:デフォルトの名無しさん
08/05/30 21:01:14
このスレはアイちゃんがうんたらかんたら
3:デフォルトの名無しさん
08/05/30 23:18:24
標準のスタイルシートも見飽きてきたんだけどなんか格好いいdoxygen用のスタイルシート
配布してるサイトってないの?
4:デフォルトの名無しさん
08/05/30 23:19:18
,r-、 l l l /:/
,.ノ-'、,!l ,! ,!:/"
..-''''~`'ーy'⌒`;'"ヾ,.`,r''"`:,
'"`'ー-,,r____i';';';';';';';';';'; -j. ゙;
--....i',.tノ;';';';':'..:::::..':';';';'(.λ
-_.=/t-';';';';'..::::::. .:::::..';';'; ,!-ー''
" _!_..>;';';';';'; ::::::::: ;';';';';r'〈ー--
,r'",>,i、'r;';';';';';';';';';';';';';' ,!イヽt-''
,r'" `t-,ッヽ、;';';';'.'.' i" ヽ ヽ,
/ `''j ーπ-'゙`'ー'r'~
`ー、,__/ ':,
5:デフォルトの名無しさん
08/05/31 11:13:21
>>3
そういえば見ないな
Java風とかw
6:デフォルトの名無しさん
08/06/02 15:25:50
このスレは大器晩成型
7:デフォルトの名無しさん
08/06/04 13:17:22
これだけ使われていてなんで今まで無かったんだろう。
8:デフォルトの名無しさん
08/06/04 21:34:38
>>7
>>2-6見てわかんないの?
9:デフォルトの名無しさん
08/06/05 11:54:36
Doxygenってやたらデグレ多くない?
やっとバグが直ったと思ったら今まで動いていた部分がおかしくなったり。
いつまでたっても満足のいく出力ができない。
10:デフォルトの名無しさん
08/06/05 12:29:52
最新版はツリーが文字化けしたりしないか?
11:デフォルトの名無しさん
08/06/05 21:06:31
output japaneseでやってるけど、左のツリーが化けてる
検証はしてない
12:デフォルトの名無しさん
08/06/06 00:15:15
おまいら Javadoc 風と Qt 風のどっちでコメント書いてる?
13:デフォルトの名無しさん
08/06/06 12:28:19
///
14:デフォルトの名無しさん
08/06/06 13:18:08
ようやくスレが出来たから聞ける
「doxygen」って何て読むの?読んでる?
15:デフォルトの名無しさん
08/06/06 13:23:32
>>14
doxygenの公式ページのFAQに書いてある
16:デフォルトの名無しさん
08/06/06 13:40:56
うは。こんな過疎スレで即レスサンキュー
でも、英語読めませーん
---------------------------------
doxygenはどのように名前を持っていましたか?
Doxygenは単語ドキュメンテーションとジェネレータで遊ぶのから名前を得ました。
ドキュメンテーション - 医者 - dox
発電機 - 情報を得てください。
当時、私が法とyaccを調べていたので、事態は、「y」で、発音可能につけ加えて、なりました(適切な宣告はDocs-ee情報を得ています、長い「e」があるそう)。(そこでは、多くのものが"yy"から始まります)。
---------------------------------
翻訳したけど意味わかりませーん
「ドキシゲン」でいいのかな?
17:デフォルトの名無しさん
08/06/06 13:55:55
ドキシジェンだろ
オキシジェンデストロイヤーから連想して
18:デフォルトの名無しさん
08/06/06 14:11:10
documentation-generator → docs-ee-gen だから
カタカナ表記ならドキシジェンかドクシジェンじゃないかな
俺もドキシジェンって言ってる
19:デフォルトの名無しさん
08/06/06 15:53:35
どくしげんって脳内発音してた
20:デフォルトの名無しさん
08/06/06 18:23:18
げんしけん
21:デフォルトの名無しさん
08/06/07 00:02:59
やっぱ読み方わからない奴結構いるんだな
22:デフォルトの名無しさん
08/06/07 00:38:33
d + oxygen に見えるからドキシジェンだろ。
23:デフォルトの名無しさん
08/06/07 03:42:43
ドキシゲンって読んでたお
HTMLでは、文字化けしないのに
chm作ると、左側の一覧文字化けする
どうしたらいいんだ
24:デフォルトの名無しさん
08/06/07 06:03:46
Goo辞書でoxygenの発音
URLリンク(dictionary.goo.ne.jp)
これにdをつけて読むだろ条項
25:デフォルトの名無しさん
08/06/07 14:19:08
doxygenうまいこと使ってる
日本語の人って
Seleneの人以外に居る?
URLリンク(selene-lue.halfmoon.jp)
26:デフォルトの名無しさん
08/06/07 14:46:47
>>25
「うまいこと」の意味がわからんな。
何か変わった使い方してるの?
27:デフォルトの名無しさん
08/06/07 19:16:40
>>25
日本語の使い方が(ry
28:デフォルトの名無しさん
08/06/08 01:04:30
チョンでごめんなさい
>うまいこと
俺と比べて、丁寧に利用している意味。
というか、普通に活用してるって意味。
29:デフォルトの名無しさん
08/06/08 01:29:52
>>28
じゃぁ、居るよ、ってことで。
30:デフォルトの名無しさん
08/06/08 02:37:06
>>29
氏ね
31:デフォルトの名無しさん
08/06/10 22:40:18
まだ30レスにしか達していないのかよ!!
32:デフォルトの名無しさん
08/06/11 00:36:37
>>7
今まで単独スレが無かっただけで、話すら無かったわけではないぞ。
良いドキュメント・マニュアル・仕様書を書くスレ
スレリンク(tech板)l50
33:デフォルトの名無しさん
08/06/14 14:49:17
Doxygen が吐き出す XML のフォーマットってどっかに仕様書ある?
34:デフォルトの名無しさん
08/06/14 18:14:58
XMLなら名前空間のところにURLがあるんじゃないの?
35:デフォルトの名無しさん
08/06/15 09:05:34
名前空間のURLのところにスキーマがあるとは限らない
36:デフォルトの名無しさん
08/06/15 18:25:33
スキーマって意味まで定義しているんだったっけ。
37:デフォルトの名無しさん
08/06/15 18:28:10
隙間って何ですか
38:デフォルトの名無しさん
08/06/18 21:45:54
C 言語のソースから HTML 文書を生成するときにモジュールのページに
1つの関数に対して func() と Struct::func() のような2つの名前が表示
されてしまうのですが func() だけにできないでしょうか?
39:デフォルトの名無しさん
08/06/19 00:03:43
>>38
OPTIMIZE_OUTPUT_FOR_C はどうしてる?
40:デフォルトの名無しさん
08/06/19 12:11:02
もちろん YES です。
41:デフォルトの名無しさん
08/06/20 03:07:40
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:デフォルトの名無しさん
08/06/20 03:19:30
>>41
doxygen で生成した文書は生成に使われた入力の派生物、つまり、この( doxygen の)ライセンスに影響されない。
43:デフォルトの名無しさん
08/06/20 07:56:23
>>42
どうもありがとうございます。
44:デフォルトの名無しさん
08/06/24 14:33:52
C++ のクラスの中の using 宣言は文書化されないのでしょうか?
45:デフォルトの名無しさん
08/06/26 11:37:10
インハウスのCライブラリにコメントつけてDoxygenしたら、
100ページ超のrefman.pdfが出来上がってたまげた。
調子に乗ってデベロッパーズマニュアルまでDoxygenで書いてる。
細かいところでアレな事はあるけど、まだ後悔はしていない。
リファレンスマニュアルやサンプル実装と相互参照できていい感じ。
こういうのは、Docbookとかだとめんどくさくて。
46:デフォルトの名無しさん
08/07/06 09:53:21
グラフ中のフォントサイズが変更できないんですが、cssを直接弄るしかないんでしょうか
47:デフォルトの名無しさん
08/07/11 02:25:54
doxygen使えるな
48:デフォルトの名無しさん
08/07/11 20:05:04
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:デフォルトの名無しさん
08/07/11 21:27:54
>>48
vbfilter.pyの出力を晒してみそ
50:デフォルトの名無しさん
08/07/13 02:15:19
>>48
vbfilter.py は、空行を捨ててしまうんですが、
cTest のドキュメントブロックと fncTest のドキュメントブロックがくっついててもいいんでしたっけ?
私も自信ないので…
自分で使う分は空行を通すようにしたりとか、色々と手を加えて使ってます。
なお、 vbfilter.py の説明に、クラスの説明用のコメントは「'*」じゃなくて「'!」で始めるとあります。
それと、doxygen のマニュアルに書いてますが、説明する対象の直前に置くなら、 @fn コマンドはいりませんよ。
51:50
08/07/13 02:33:51
>>48
もうひとつ思い出した。
vbfilter.py は分割行には対応してないので、
実際の fncTest の1行目の宣言が複数の行に分割されてたら認識してくれません。
52:デフォルトの名無しさん
08/07/14 04:02:29
>>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
08/07/14 20:30:08
クラス名は、ファイル名やフォーム名から vbfilter.py が勝手に付けるので、
@class コマンドもいりませんよ。
@fn コマンドをつけないと出力されないのは、
1行目の @class コマンドの行頭が「'*」になっているために、
fncTest のドキュメントブロックとくっついてしまって
おかしな事になっているのではないでしょうか。
「'*」で始まる行と「'!」で始まる行は違うタイミングで処理されます。
最初に「'!」で始まる行が検出されて、クラス用のドキュメントブロックが出力され、
対応するc++形式のクラス定義が開始されます。
次にファイルの先頭から1行ずつパターンマッチングされて、
関数の1行目や変数定義や「'*」で始まるコメントがc++の書式に変換されます。
この段階では「'!」で始まる行は飛ばされます。
最後に「}」が出力されて、最初のクラス定義が閉じられます。
なお、関数の中身は全部捨てられてます。
中身の変換の機能追加も一時考えたんですが、挫折しました……。
54:デフォルトの名無しさん
08/08/01 22:14:18
ツリー部分の日本語が文字化けしてしまうんですが、どうやったら解決できるでしょう?
今のところ手動で変更してますが、Doxygenの設定でどうにかしたいです。
55:デフォルトの名無しさん
08/08/01 23:03:48
doxygenのバージョンと動かしているOS、食わせているファイルのエンコードとDoxyfileの設定などの情報をどうぞ。
私のところでは文字化けしていないので。
# 尤も、日本語のファイル名なんて使ってないからファイル名が化けない保証はないが。
56:デフォルトの名無しさん
08/08/02 01:33:38
>>54
バージョン1.5.6 なら、Doxygen自体のバグっぽいです。
公式のバグレポートには、ポーランドの人からも
ポーランド語特有の文字が化けると報告されてます。
1.5.5と1.5.6でツリービューの処理が変わってるので、
そこでエンコーディングの処理をミスしたまま、
作者様はラテン1な国の人なので気付いてないってとこではないかと。
57:デフォルトの名無しさん
08/08/02 08:56:42
>>54
1.5.5を使う
58:55
08/08/02 09:09:18
お、私が使っているのはCygwinのインストーラで入れた1.5.5だ。
59:デフォルトの名無しさん
08/08/02 09:13:10
>>56
thx! (54じゃないけど)
60:54
08/08/05 21:35:07
ありがとうございます!バージョンの違いってのは気づきませんでした・・・・
これでキー一つでビルド&ビルド後処理ができるようになりました。
61:デフォルトの名無しさん
08/08/26 16:11:52
今までdoxygenの事を全く考えずにC++で開発していたんですが、
突然思い立ってdoxygenで出力することにしました。
当然、対応形式のコメントでないので一切出力されません。
一から書き直そうと思うんですが、せめてソースを静的に解析して
関数やファイルの頭に定型のテンプレートを追記してくれるようなツールがあればと
探してるんですが、何かないですかね?
62:デフォルトの名無しさん
08/08/26 16:27:23
>>61
そんなことしなくても、コメントの付いてない関数も含めて無理矢理出力させるオプションがあったはず。
DoxyfileのEXTRACT_ALLの項目をNOからYESに変えてみたら?
63:61
08/08/26 18:34:24
はい。その設定で関数は出るんですが、クラスとメンバが
何をしているかの簡単な説明も表示したいと思っています。
既に大量のソースが存在する為、少しでも手間をかけずに実現したいと試行錯誤中です。
自分の様にプロジェクトの途中からdoxygenの使用を考える人間が、
どのようにこの問題を解決しているのか知りたいところです。
64:デフォルトの名無しさん
08/08/26 18:39:07
努力と根性じゃね?
65:デフォルトの名無しさん
08/08/26 19:53:17
>>63
とりあえず、説明文を付けるのは名前だけで中身を判断できないようなクラスやメンバだけに限定しようぜ。
66:61
08/08/26 23:15:44
>>64 >>65
先ほどgccxmlを使用して自宅の環境で関数の位置と引数の情報を取得することができました。
ここからコメントを挿入していけばよさそうです。
お二人はdoxygen以外に勉強しなきゃいけないことがあるように思いますよ。
本当にありがとうございました。
67:65
08/08/26 23:33:51
>>66
四行目が蛇足すぐるwww
でもまあ、健闘を祈る。
あと、無理するなよ。形だけのドキュメント作業なら特に。
68:61
08/08/26 23:56:08
>>67
大丈夫ですよ、あなたみたいにひ弱じゃありませんから。
69:61
08/08/27 00:18:56
名無しに戻ろうと思ったのですが偽者が湧いたので。
>>66は私本人ですが、>>68はどこぞの馬の骨です。
>>67
ありがとうございます。
"努力と根性"という言葉に何故かカチンときてしまい棘のある文章になってしまいました。
プログラマやその上司が気軽に使っていい言葉ではないと考えます。
たかが2chの戯言なのに、と自分でも驚いていますが。
ドキュメントはネット上で一般公開予定なので、なるべく解りやすいものを心がけます。
これ以降、私が>>61で書き込むことはありません。
書き込みがあったとしたら、それは私以外の誰かです。
70:61
08/08/27 00:21:13
いいえ、>69こそがどこぞの馬の骨です。
そもそも、まともな神経をしていたらレスをつけてくれた人に馬の骨なんて使うわけないじゃないですか。
71:65
08/08/27 00:41:27
ワロタw
72:デフォルトの名無しさん
08/09/13 10:38:25
>>61もその程度で躓くレベルでしかもきもいときた
73:デフォルトの名無しさん
08/09/25 11:13:21
word出力したら途中までしかクラスが出てこないのは何故?
74:デフォルトの名無しさん
08/09/25 12:25:23
>>73
htmlでも出ない?
なんか変な記述があるとそれ以降が出ないことがあった。なんだかは忘れた。
75:デフォルトの名無しさん
08/09/25 13:04:40
>>74
htmlだと全部出てるだけど、途切れてる部分見直してみる
ありがと
76:73
08/09/25 13:26:05
>>74
確認してみたけど、特に変な記述は見当たらなかった
でも、たまに出力先のwordでカタカナ部分が文字化けしているとこがあった
OUTPUT_LANGUAGEがJapaneseだと全く表示されず、Japanese-enだと途中まで表示されて
今Englishに変えたら文字化けだらけだけど全部出てきた
INPUTもOUTPUTもcp932でしてるんだけど、どうすりゃ文字化けせずに日本語だせるかな…
77:73
08/09/26 15:47:20
追加報告です。
doxygenのVer1.54使っていましたが、1.47でword出力すると問題なくできました
ご迷惑おかけしました
78:デフォルトの名無しさん
08/09/27 08:34:51
doxyはバージョンあげると劣化することもあるからなあ
最新版のツリー表示の日本語化け直らないかなあ
79:デフォルトの名無しさん
08/10/03 00:09:52
1.5.7 age
80:デフォルトの名無しさん
08/10/09 12:07:46
v1.5.7.1 age
81:デフォルトの名無しさん
08/10/12 12:08:52
>>78
1.5.6でchm形式でインデックスのエンコーディングを選べるようになって文字化けが解消されたから、それで我慢すれ
82:デフォルトの名無しさん
08/10/21 20:34:18
C言語の構造体で、gccのattributeがメンバ「関数」扱いされてしまう
これどうにかならないかな?
OPTIMIZE_OUTPUT_FOR_CはYESになってる
struct Foo
{
int Bar __attribute__((aligned(32)));
83:デフォルトの名無しさん
08/10/21 22:37:43
>>82
Cにない構文は、INPUT_FILTERにsedかなにかのスクリプトを指定して事前に取り除くしか。
84:デフォルトの名無しさん
08/10/22 01:29:05
>>82 URLリンク(www.google.co.jp)
85:82
08/10/22 10:40:25
>83-84
ありがとう、ただそれだとattributeが消えちゃうよね
なんとか残したまま正しく動作させたいんですよ
86:デフォルトの名無しさん
08/10/22 12:17:14
1.5.x で enum EnumName に対して @relatesalso StructName を書くと StructName のページに
EnumName が出るようになるのですが、enum のメンバーのリストが表示されなってしまいました。
1.4.x ではできていた記憶があるのですが、1.5.x で正常にする方法はあるでしょうか?
OPTIMIZE_OUTPUT_FOR_C は YES です。
87:デフォルトの名無しさん
08/10/22 12:57:19
>>85 情報後出しキター
88:デフォルトの名無しさん
08/10/22 13:22:05
>>85
あんたの言う正しい動作って何なの?
89:デフォルトの名無しさん
08/10/24 09:34:27
正しく=attributeを残したまま、メンバ変数はメンバ変数として認識だろjk
90:デフォルトの名無しさん
08/10/24 09:39:03
正しくって……
そんな拡張に一一対応しろってのか?
ソースあるんだろうから自分でやれよと思うのだが。
91:デフォルトの名無しさん
08/10/24 10:10:38
いちいちソース書き換えとかコスト見合わないでしょ
だからそれ以外でなんとかする方法を探してるんじゃないか?
まあattributeは確かに独自拡張だが、gccだし割とよく使われてるんで対応してても良いと思う
92:デフォルトの名無しさん
08/10/24 10:15:31
汎用的に
構文解析時だけ指定キーワードを無視するオプションがあればいい
つか、ないのかな?
93:デフォルトの名無しさん
08/10/24 18:10:58
>>91
あなた流に言うと、コストに見合わないので対応しません
94:デフォルトの名無しさん
08/10/25 00:44:08
作者かよww
95:デフォルトの名無しさん
08/10/25 17:40:51
そもそもC言語にメンバ関数は無いんだからdoxygenのバグとも言えるだろ
想定外の構文には警告なりエラーなり出して欲しいよな
96:デフォルトの名無しさん
08/10/26 00:08:33
例えば@paramとかって変えられないの?
97:デフォルトの名無しさん
08/11/08 17:25:21
mac osx 10.5.5
doxygen 1.5.7.1
で実行しようとすると、Failed to run doxygen と言われて一切実行できません。
対処法知っている方、教えて下さい。
98:デフォルトの名無しさん
08/11/19 23:51:11
クラス関連図って作れますか?
1クラスの構造を図にはできるみたいですが・・・
C++です。
99:デフォルトの名無しさん
08/11/20 00:02:36
graphvizがあればできるよ。
100:デフォルトの名無しさん
08/12/17 20:18:15
@dateの後ろに付ける日付をsubversionが自動更新してくれるように
$Date$にしたら、出来たhtmlで日付の見出しが2重になってました。
もしかしてバージョン管理システムのキーワードをdoxygenが認識して
適当に見出し付きで整形してくれるんでしょうか。
マニュアルにそれらしい説明を見た覚え無いんですが。
101:デフォルトの名無しさん
08/12/21 21:45:55
公式とかで、きちんとした例が*.hしかないと思うのは気のせい?
102:デフォルトの名無しさん
08/12/23 01:27:13
ちょっとメモ。
doxygenで出力したRTFがどうも文字化けするので調べてみたら、\\'を\\\'に変換することで解消することが判った。
要は\を表すのにそれ自身をエスケープして\\とする必要があると言うことなのだろうか。もうちょい調べる必要はありそう。
103:デフォルトの名無しさん
08/12/27 23:00:37
日本語がうまく通らない原因ってどこにあるの?
104:デフォルトの名無しさん
08/12/28 00:28:11
>>100
doxygenは$date$を認識するみたいだね。だから@dateは書かなくていい
105:デフォルトの名無しさん
08/12/28 04:51:23
Doxygen 1.5.8 age
106:デフォルトの名無しさん
08/12/28 05:06:03
アップデートコネーから自分で作るか…
107:デフォルトの名無しさん
08/12/28 09:17:52
>>101
ヘッダーに書けば十分だからじゃないかな。
でも、詳細をヘッダーに長々と書いてヘッダーが読みにくくなりそうなときは、詳細だけcppに分けて書くことはあるよ。それでもdoxygenはちゃんとまとめてくれる
108:101
08/12/28 15:47:03
>>107 thx
十分かとも思えてきた。
概要かけばいいんだもんな。
漏れは最近doxygen向けのコメント付けはじめたからもうちょい使って慣れてみるわ
109:デフォルトの名無しさん
08/12/28 19:40:09
>>103
Shift-JISコードの2バイト目に\を割り当てたマイクロソフトに原因がある。
110:102
08/12/29 14:53:28
更に追加。他にも、エスケープすべき文字をエスケープしていない箇所を発見。
xyzzyの場合の正規表現置換でこれを行なうとかなり改善する。
(query-replace-regexp "\\(\\\\'..\\)\\([{}][^
][^t]\\)" "\\1\\\\\\2")
# 場当たり的だなぁ……
111:102
08/12/29 14:56:31
あー、済まない、補足。
文字列中に出てくる「{」も「}」も、どちらもエスケープしなければならないと言うのが>110の対応。
但し、文字列中かどうかの判断を厳密に行ないたくないので手元のファイルで場当たり的に対応してある。
誰か、ソース拾ってきて対策してくれる奇特な人はいないもんかのぉ。
112:デフォルトの名無しさん
08/12/29 16:04:40
>>111
文字列として表示されるべき「{」や「}」がエスケープされてないってこと?
いつもHTMLしか出してなかったんだけど、試しに手元にあるソースでRTF出してみたら、
こちらではリストをネストさせてるところで、上の階層の行末の書式文字の「{」が
普通の文字として扱われたりして、「{」と「}」の対応が崩れてエラーになってるっぽいです。
(いや、ネストされて表示はされてるから、書式文字以外に余分に「{」が付いてる?)
行末が特定の文字(「定」とか「得」とか)の場合になるみたいだけど、
条件がよくわかりません…
113:102
08/12/29 16:16:27
>>112
2バイト文字の2バイト目に{}\のいずれかが来るケースで、エスケープされないようです。
# 「定」「得」どちらも該当しないようですが……
処が文字列を明示的に区切らないのがRTFの仕様らしくて、キーワードとしての{や}と区別が難しいのですよ。
実は>102の対策だけだと{}の対応が崩れてしまってrtfの一部だけしか読み込まれないことが判って気づいたんですが。
# 客先に実態の1/3程度しか分量がない資料を提出しちゃったのは内緒w
念のため確認したら、手元のDoxygenはCygwin同梱の1.5.5でした。
# さて、rtfを変換するツールを真面目に作るのとdoxygenそのものを修正するのとどっちが楽だろかw
114:デフォルトの名無しさん
08/12/29 16:26:38
>>113
だいぶ前からエンコーディング指定して全部一旦 UTF-8 に変換されるようになったから
その手の問題は解決済みだと思ってるんだけど、何かバージョン上げれない理由でもあるの?
115:デフォルトの名無しさん
08/12/29 17:54:50
cygwinの最新は1.5.5-1だね。
つまり、解決済みではないらしい。
116:デフォルトの名無しさん
08/12/29 18:19:03
cygwinは使ってないので、それが理由かどうかは知りませんが、
1.5.6から1.5.7.1まではフレーム付きHTMLのツリービューで
英数字以外が文字化けするという問題がありました。
2日前に出たばかりの1.5.8でやっと解決されました。
117:デフォルトの名無しさん
08/12/29 19:13:27
>>115
Windows ネイティブ版を使えない理由があるの?
118:デフォルトの名無しさん
08/12/29 20:15:40
全部一旦 UTF-8 に変換されるようになったのは、1.5.2以降だから、
>>113, >>115 の cygwin版も UTF-8 に変換されるバージョンです。
最新版でも日本語RTFはかなり駄目な感じです。
手元のソースを処理させてみたら、目次の見出しの「目次」の後ろとか、
あちらこちらに見えてはいけない「\par」や「{」が見えて、
本文数ページで破綻します。
119:デフォルトの名無しさん
08/12/29 20:53:32
HTML だと問題ないってことかな? HTML しか使ってないからよくわかんないや。
120:118
08/12/29 22:31:08
昔、1.4.6でRTFを作ったことのあるソースを、設定をほとんど変えずに1.5.8に掛けても駄目でした。
1.4.6で作ったRTFの半分ぐらいしかファイルサイズがありません。
むしろ内部処理が UTF-8 になってから、おかしくなったんじゃないかという気がしてきました。
121:デフォルトの名無しさん
08/12/29 23:06:51
折角色々対応してあったのを、UTF-8にしたのを機に捨ててしまったような感じだな。
この正月休みの間に暇があるようならソースでも見てみるか。
122:デフォルトの名無しさん
08/12/30 01:23:34
過去のバージョンを取ってきて順に試してみました。
1.5.0までは日本語の RTF が生成できて
(おかしなところが無いかまではチェックしてませんが)、
1.5.1で、
"Warning: Output language Japanese not supported! Using English instead."
と表示され、日本語が表示できませんでした。
ここで一旦無かったことにされたようです。
123:デフォルトの名無しさん
08/12/30 03:40:46
問題分かったかも。
id 437346 のバグレポートで日本語対応の議論がされてるんだけど、
報告者の人が提案した、
x080より大きいバイトが来たらマルチバイト判別フラグON、
次のバイトでフラグOFF、というのをそのまま採用してくれたらよかったのに、
0x80より大きいかの判断をそのままフラグに入れちゃってるから、
2バイト目が0x80より大きい場合に、その次のバイトまでエスケープされて、
それがエスケープされたら困るものの場合に不幸になってるということかと。
124:デフォルトの名無しさん
08/12/30 03:58:34
repopかければいいのに。
rtfって何で読めるんだろう。AbiWord?ooo?
125:デフォルトの名無しさん
08/12/30 08:55:13
>>123
事はそう単純じゃない。というか、もっと単純。
内部UTF-8をcp932に変換して、必要ならエスケープすべきなのにそれをしていないと言うのが>102=113の観測だろ。
例えば「ソソ」が「\'83\\\'83\\」にならないといけないのに「\'83\\'83\」になると。
それとも、二種類の問題が独立して存在しているのか?
126:123
08/12/30 10:22:07
>>125
ああ、すいません。
>>123で書いたのは、1.5.8の場合の問題です。
>>102,,>>113の、.1.5.5の問題はエスケープされてないというので合ってると思います。
1.5.8でそれに対する対応が入れられたけど、方法がまずく、
今度は逆にエスケープすべきでないところまでされたという話。
127:デフォルトの名無しさん
08/12/30 11:17:38
>>78
1.5.8で直った
128:デフォルトの名無しさん
09/01/08 07:49:37
とりあえず保守ですが、あけおめ。
日本語rtf使えるようになるといいですね
自分はまだ皆様のようにハックに参加できるほど技術がないので、精進したいと思います。
129:102
09/01/08 09:55:41
又更につまらない問題に遭遇。
折角修正したrtfがWordだと読めるのにOpenOfficeだと文字化けする。
例えば、「\'83\\」のような>125が指摘した例だと、「\'83\'5c」のようにしないといけないらしい。
あーもう、rtfを解析するしかないのかなぁ。
# doxygen1.5.8で変わっているらしいからそっちに手を出すのは避けたいし。
130:デフォルトの名無しさん
09/01/08 22:19:22
解決しました。ありがとうございました。
131:デフォルトの名無しさん
09/01/10 14:59:07
1.5.8 のrtfのエスケープバグのソースって
どのファイルなのかな?
132:102
09/01/10 15:17:25
ちょっとLinuxに1.5.8をインストールしたので出力してみたが、これは酷いw
2バイト文字を全てコード出力しているのはいいが、>123のように無関係なコマンド文字まで巻き添えにしてしまっている。
おまけに、コマンド文字列を何故か\commentで括ってしまっているので収拾がつかない状態。
そうそう、html出力のツリービューも、(UTF-8)指定なのにも関わらずプロジェクト名がEUCで出力されるので化け化け。
誰かなんとかして〜w
# ってことで、>131に期待♪
133:デフォルトの名無しさん
09/01/11 01:06:49
うはw ぼくとしては>102さんに期待してるんだけどっw
134:デフォルトの名無しさん
09/01/12 00:56:25
>>131
rtfgen.cpp の void RTFGenerator::postProcess(QByteArray &a) です。
こちらを参考に。
URLリンク(bugzilla.gnome.org)
>>132
そういや最近プロジェクト名を日本語にしてなかったけど、これは…
どうやらDoxywizardのバグのようです。
テキストエディタでDoxyfile開いてプロジェクト名を修正して、
コマンドラインでDoxygenを実行したら、文字化けしませんでした。
135:デフォルトの名無しさん
09/01/12 02:36:31
>>134 ソース位置ありがとう。
これって、よくわかってないけど、postProcess()で、ファイル全体を
エスケープしてるのかな。
もしそうなら、rtfでの表示される文字列以外も全部エスケープされて
しまい、上のバグが症状がでてるんじゃないかな?
rtf表示文字列だけをエスケープするようにするには、postProcess()
の中でやってちゃだめで、rtfgen.cpp(にあるか知らないけど)
で表示文字列をrtfタグ中に埋め込む時コード当たりでやらないといけなそう?
とりあえず、doxygenをWindowsでコンパイル出来る環境作り
からやらないといけないのが辛いorz
136:デフォルトの名無しさん
09/01/12 08:13:44
>>135
頑張れw
Cygwinなら協力する。
# つーか、ソース拾ってきて自分でやれ>自分
137:134
09/01/12 21:40:12
>>135
0x80より大きい値とmb_flagが1のときだけエスケープされるはずです。
1.5.7.1以前のバージョンではmb_flagが無くて、0x80より大きい値という条件しかなかったので、
マルチバイト文字の2バイト目が「{」や「\」などの場合におかしくなってました。
mb_flagをマルチバイト文字の1バイト目で1にすれば、
次のバイトが0x80以下でもエスケープされるという仕組みのはずですが、
mb_flagの設定方法がまずくて、2バイト目でクリアされなくて
さらに次のバイトまでエスケープされる場合がある、という状況です。
URLリンク(bugzilla.gnome.org)
で、T.Matsuyama氏が提示したコードが正しく動くはずです。
#そこまで分かってるな自分でやれ、と言われそうだ……
すいません、環境作りが荷が重いですorz
138:デフォルトの名無しさん
09/01/14 22:11:56
バグ修正版バイナリ出来たよん。
URLリンク(www1.axfc.net)
T.Matsuyama氏パッチそのままです。
ばっちりっぽいです。
102さん、134さんありがとw
139:デフォルトの名無しさん
09/01/14 22:17:06
おー、これは凄い。後で試してみるか。
140:デフォルトの名無しさん
09/01/27 01:28:30
てか、>>137のURLが示すバグをreopenして開発者に教えてあげればいいんじゃないの?
アカウント持ってないから誰でもreopenできる設定なのかはわからないけど
141:デフォルトの名無しさん
09/01/27 07:49:20
いかん、未だ試せてない……
142:デフォルトの名無しさん
09/01/30 01:55:55
コメントが一切ついてないソースに
関数の定義部分だけ自動的に
タグを生成してくれるツールないですか?
143:デフォルトの名無しさん
09/01/30 02:14:58
>>142 ctags?
144:デフォルトの名無しさん
09/01/30 07:39:05
>>142
このスレ的には、タグというとDoxyfileのタグのことになるのだがそれでいいのかい?
145:デフォルトの名無しさん
09/01/30 07:42:20
@が付くやつがいい
146:デフォルトの名無しさん
09/01/30 08:23:53
ドキュメントつけしてない関数も出力するオプション?
147:139
09/02/15 17:55:27
やっと>138を試せた。取り敢えず、cygwinからでも使えることと日本語が化けないことは確認した。
但し、OpenOffice(3.0)では{comment[^{}]}を取り除く必要があったこととTITLEなどのフィールドは
巧く変換できなかったけれど、これは元からそうなのかもしれない。
今度機会があれば、素直にMSwordに食わせてみるとしよう。
148:139
09/02/17 18:58:43
cygwinで>138を動かし、できたRTFをWORD2000に食わせた。
全選択してフィールドの更新、画像アンリンクのマクロを動かして、
docに名前を変えて保存。一応、スタンダロンで使える資料になるようだ。
で、画像アンリンクのマクロって需要あるかな。あるようならどっかで公開するけど。
149:デフォルトの名無しさん
09/02/28 05:29:11
doxygenのライセンスってGPLですよね。
doxygenのコメントを書いたソースって公開しないと駄目ですか?
150:デフォルトの名無しさん
09/02/28 05:39:00
ならないよ
GPLのお絵かきソフトで絵を描いたようなもん
151:149
09/02/28 05:50:38
>>150
ありがとうございます
152:デフォルトの名無しさん
09/03/03 10:33:16
DoxyfileもGPLに該当しないのかな。
それとも、コメント部分は削除しておいた方が無難?
153:デフォルトの名無しさん
09/03/03 22:08:28
ソフトのドキュメントを作るのにDoxygenを利用してもGPLにする必要なし。
ソフトの機能としてDoxygenを利用する場合はGPL。
154:デフォルトの名無しさん
09/04/06 21:16:11
@a と @p ってどう使い分けてる?
どっちも文中の引数のフォントを変えるために使うものみたいだけど。
155:デフォルトの名無しさん
09/04/08 12:32:53
\aは「特殊なフォント」ということで一般的にはItalicかな。
\pは\cと等価で「タイプライタフォント」ということで等幅フォントが使われる。
後は、実際の出力を見て検討したら?
156:154
09/04/09 00:04:14
普通はどうする、ということは特になくて、見た目の好みで使えばいいのですか。
ヘルプを見ると、@aは "refer to member arguments" 、
@pは "refer to member function parameters" と書かれてて、
微妙に使い分けがあるようなないような、よく分からなかったもので。
157:デフォルトの名無しさん
09/04/09 07:14:32
意味で使い分ければいいと思う。
フォントとかの体裁はCSSで変えられるんじゃなかったかな?やったこと無いけど。
158:デフォルトの名無しさん
09/04/09 08:11:53
@a の argument が実引数で @p の parameter が仮引数なわけだけど、
コメント中では仮引数しか現れない気がする。実引数が現れることなんてあるか?
159:デフォルトの名無しさん
09/04/09 09:06:56
恣意的に使い分ければいいんじゃね?
>>157
出力するものによって指定するスタイルシートや指定方法は違うけど、htmlならcss,だね。
やったことないけどw
160:デフォルトの名無しさん
09/04/10 04:10:58
member argumentがクラスのメンバー変数ってことはないかな。
161:デフォルトの名無しさん
09/04/10 23:50:56
>>158
@p param1 の値が @a xxx だったら〜
みたいな説明を書くのに使うとか?
162:デフォルトの名無しさん
09/04/25 21:37:10
メソッドのコメントは、戻り値がなくても「@return なし」と明示的に書くべきでしょうか?
引数がない場合も同様に「@param なし」と書くでしょうか?
163:デフォルトの名無しさん
09/04/25 21:38:20
前者はお好きにどうぞ。
後者は「なし」なんて引き数はないぞって警告が出るんじゃないかな?
164:162
09/04/25 21:45:11
>>163
レスありがとうございました。
確認したら「@param なし」ではwarning argumentと出ましたのでこれは書かないようにします。
165:デフォルトの名無しさん
09/04/30 13:43:57
今の大会は、開発環境の違いによる面白さもあると思う。
共通スペックでやるなら別に大会をおこせばよいと思う。
166:デフォルトの名無しさん
09/04/30 13:45:15
>>165
誤爆しました。すみません。
167:デフォルトの名無しさん
09/04/30 23:56:10
Doxygen 1.5.9 age
168:デフォルトの名無しさん
09/05/01 00:16:08
さっきまでは1.5.8だったのに。早速試すぜ。
169:デフォルトの名無しさん
09/05/12 10:55:11
ソースの先頭のコメントの 理想的なサンプル を教えて。
言語は問わないけど、出来ればCで。
170:デフォルトの名無しさん
09/05/12 18:22:26
理想的かどうか知らんが、私の典型。
--
////////////////////////////////////////////////////////////////
/// \file foo.c
/// \brief あーたらこーたら
///
/// あーたらこーたらをあーたらこーたらするとかなんとか。
/// \date 2009/3-4
/// \author bar\@site
/// \attention なんだかんだ
/// \version hage.hige.hoge
//
--
171:デフォルトの名無しさん
09/05/13 04:06:28
>>169
とりあえず最小限はこうだろ。 JAVADOC_AUTO_BRIEF オンで。
/** @file
* 簡単な説明.
* 詳細な説明
*/
170 のやつだと、ファイル名はどうせ名前変更したときに更新し忘れるし、
日付や作者やバージョンはバージョン管理ソフトに任せればいい。
詳細な説明も attention も必要に応じて、だな。とにかく書かないで済むものは
書かないのが一番。
172:デフォルトの名無しさん
09/05/13 09:19:41
>>170
ありがとうございます。
>>171
そのバージョン管理ソフトに書かせるので心配ゴム用です。
173:デフォルトの名無しさん
09/05/13 16:20:47
表書くのってtableタグ使うしかないんでしたっけ?
それだとソース上で見づらいんで、
リストみたいに簡易記法があればいいんですけど。
174:デフォルトの名無しさん
09/05/13 22:00:48
doxygenって使ったこと無いんだけど、
ぶっちゃけて言うと、オススメですかい?
175:デフォルトの名無しさん
09/05/13 23:26:06
>>174
おすすめとは言えない
でも面白い使い道がある事は確か
実際に走らせてみて「おー」とか言って楽しむものだと思う
176:デフォルトの名無しさん
09/05/14 09:55:19
>>174
クラス関連図とか、煩いクライアント向けのコーリングツリーを作るのに便利。
# 余程酷いソフトハウスに当たった経験があるのか、関数の依存関係を知りたがるクライアントがいるのよ。
177:174
09/05/14 22:16:15
>>175-176
ほっほー。
ありがとう。
「ある程度習熟するために勉強を要してめんどくさそうだ」
と思っていたが、試してみようかなあ。
178:デフォルトの名無しさん
09/05/14 23:43:40
>>177
コメント付いてないのも全部出力する設定で、
とりあえず手持ちのソースそのまま掛けてみたらいいよ。
それで出来上がるものが気に入れば、それから書き方に慣れていったらいいし。
179:デフォルトの名無しさん
09/05/14 23:50:13
Graphvizの使い方が秀逸だと思う
これは出力結果を印刷してじっくり眺めたい
180:177
09/05/15 06:46:11
>>178
ありがとう。分かった、そうしてみるわ。
181:デフォルトの名無しさん
09/05/15 09:37:18
客先から小汚いソースを受け取ったら、取り敢えずDoxygenに掛けて
静的解析するのは基本だな。
182:デフォルトの名無しさん
09/05/15 10:09:23
>>171
subversionとかの置き換えキーワードもdoxygenは認識してドキュメント化してくれる。
183:デフォルトの名無しさん
09/05/21 13:35:09
ちょっと詳しい説明を箇条書きで入れたいんだけど、
空白行が入るとパラグラフが終わってしまうので、空白行を一切入れないで
長い文章を書かなきゃいけなくなり、なんていうか
ソースコードのコメントが非常に見づらい。本末転倒な気がするんだけど、
空白行を無視してくれる方法とか、ない?
184:デフォルトの名無しさん
09/05/23 02:32:07
>>183
ソースコード上でだけ行間が空いてればいいのなら、
全角スペースを入れておけばどうでしょう?
ドキュメント上で行が連結されたときに、余分な空白が入りますが。
ドキュメントでも行間が空くようにしたいのなら、
行頭の邪魔にならないところにでも「@n」を入れておくぐらいしか思いつきません。
185:デフォルトの名無しさん
09/05/24 13:15:10
doxygenの文字化け対策
URLリンク(d.hatena.ne.jp)
ここに救われた俺がいる。
186:デフォルトの名無しさん
09/05/24 14:01:52
doxygenであるライブラリのドキュメントを作った時、
そのライセンスってどこにどうやって記載すればいいの?
ドキュメント内に表示されるようにしたいんだけど。
187:174
09/05/24 16:39:03
doxygen気に入ってきた。
C++とdoxygen最新版にて。
ドキュメント作ると名前解決に使う::がドキュメントにもりこまれたり盛り込まれなかったりする。
例えばNameS::MyClassが、
ドキュメントの100行目ではNameS::MyClassになっているのに
101行目ではNameSMyClassになっていたりする。
これはどう解決すればいい?
188:デフォルトの名無しさん
09/05/25 10:31:42
>>187
このレスの流れを見ても分かるように、Doxygenは文字コードの扱いが未だ未だ不安定だったりする。
あんたの言う、「ドキュメント」がrtf出力ならこのスレにある対策版を使ってみた方がいいかもしれないし、
chm出力なら>185を参考にするといいかもしれない。
189:デフォルトの名無しさん
09/05/25 20:01:17
>>186
@mainpageコマンドでメインページに入れるか、
@pageコマンドで独立したページにすればどう?
190:174
09/05/25 23:27:45
>>188
ありがとう。
説明不足だったね。
ドキュメントはフツーのHTMLなんだよね〜。chmじゃなくて。
>185をやってみたら文字化けは解消したんだけど
>> ドキュメントの100行目ではNameS::MyClassになっているのに
>> 101行目ではNameSMyClassになっていたりする。
この現象は解決しないのだ。。。
191:186
09/05/25 23:41:59
>>189
@pageコマンド
なんて初めて知ったわ。
どこかいい解説サイトとか紹介してくれる
お方、いらしたらお願い!
192:デフォルトの名無しさん
09/05/27 12:59:53
>>191
doxygenに付いてくるサンプルも参考になるよ。
当然全部英語だけど、記述例のソースと
それを使って出力されたドキュメントがある。
コマンドの説明が知りたかったら、
>>1 のサイトの日本語版マニュアルを見ればいいし。
193:186
09/05/27 19:11:01
>>192
そうか、ありがとう。
見てみるよ。
194:デフォルトの名無しさん
09/05/28 03:59:47
いつの間にかDoxywizardもだいぶ使いやすくなったんだな
195:186
09/05/28 06:28:18
俺は最近doxygenを使い始めて、
最初に
Doxywizard
を使ってかなり直感的に操作できたから知らなかったが、
そうなのか。前は使いづらかったのか。
grach
196:デフォルトの名無しさん
09/05/30 12:54:18
#defineマクロ定義をドキュメント(html)に出力させたくて
URLリンク(www.doxygen.jp)
ここを見て
C++ code - 19 lines - codepad
URLリンク(codepad.org)
こんなの書いてみたんですが、
全然#defineマクロ定義が出力されません。
どうすれば良いでしょうか?
197:デフォルトの名無しさん
09/05/30 17:17:56
>>196
define_test.h のファイルのページ自体は出来てる?
実際のファイル名と @file の後ろに書いたファイル名が合ってないとかはないかな、と思ったもので。
198:196
09/05/30 23:13:55
>>197
URLリンク(loda.jp)
こんなHTMLが生成されました。
どうなんでしょう。。。?
199:197
09/05/31 00:25:04
>>198
define_test.h ファイルのドキュメントのページができてないね。
>>196 のソースをコピペして同じ名前で保存してみたけど、
こっちじゃちゃんと出力されてるよ。
Doxyfile 晒してもらえるなら、何が違うか比べてみるけど。
200:197
09/05/31 00:31:38
>>198
もしかして、SHOW_FILESがOFFになってない?
Doxywizard使ってるなら、ExpartのBuildの下の方。
201:196
09/05/31 04:59:33
>>200
丁寧にありがとうございます。
Doxyfileは以下です。
C++ code - 1503 lines - codepad
URLリンク(codepad.org)
お願いします。
202:196
09/05/31 05:04:41
追記:
SHOW_FILES=NOになっていましたが、
YESにしても変わりませんでした。
私の環境は
windows xp sp2
doxygen 1.5.9です。
203:197
09/05/31 05:45:10
>>201
WARN_IF_DOC_ERROR を ON にしたら判明した。
ENABLE_PREPROCESSING が OFF だとマクロは見てくれないらしい。
204:197
09/05/31 05:51:37
補足
WARN_IF_DOC_ERROR を ON にしたら、
「マクロにコメント書いてるけど、ENABLE_PREPROCESSINGがOFFだからスキップしたよ」
というようなメッセージが表示された。
205:196
09/05/31 14:59:44
>>204
ありがとうございます。
WARN_IF_DOC_ERRORとENABLE_PREPROCESSINGをYESにしてみましたが、
結果は代わりありませんでした。
Doxyfileはこちらです。
URLリンク(codepad.org)
設定を読み込み直していないなどということはなく。
doxygenのウィンドウに表示される情報は
URLリンク(codepad.org)
の通りです。
すみませんがよろしくお願い申し上げます。
206:196
09/05/31 22:27:30
追記:
テキストエディタでDoxyfileを開き、
= NO
を検索して全て
= YES
に置換してみました。
それでdoxygenを走らせたところ、見事#defineは出力されました。
やはり設定が問題な様です。
207:196
09/05/31 22:43:14
どこの設定が問題なのか探るために
Doxyfileにて二分木法的にNOをYESに置換してみました。
ファイルのど真ん中の行を基準に上だけないし下だけを
全部NO→YES置換を行いました。
しかし、このどちらも#defineが出力されません。
やはり複数の設定項目が関わっているようです。
208:196
09/05/31 22:56:12
解決しました。
正解は
・ENABLE_PREPROCESSINGをYESにする。
・SHOW_FILESをYESにする。
でした。両方が同時に満たされていないとだめなようです。
お手数をおかけ致しました!
209:197
09/06/01 01:23:37
>>205-208
解決したようなのでもういいかもしれないけど、
WARN〜系の設定は、出力状態を変更させるためのものではなくて、
コメント付けてるのに出力されない設定になってるとか、
記述漏れがあるとか、そういうエラーメッセージを表示するためのもの。
今後何かうまくいかないときに参考になるかもしれないので念のため。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5296日前に更新/75 KB
担当:undef