Doxygenと戯れる日々
現在せっせと某プログラムのドキュメント作りに励んでいます。といっても僕は『ソースを読めば全て書いてあるでしょう、バグも含めて(by まつもとひろゆき氏)』で思考停止してしまっているので、ドキュメントといってもソースに埋め込むコメント程度しか書けません。で、あとはDoxygenで処理してHTMLなりPDFなりにしようという算段です。今回の記事はDoxygenをWindows(+Cygwin)で使うまでに設定したことを、メモ書きで自分用に残しておこうと思いました。
続きをどうぞ。
例によって箇条書きです。
まずは文字コードの話です。DoxygenをCygwin、というかWindows上で使う場合、文字コードの問題が発生する(Shift-JISが悪さをしてTeXの¥エスケープと勘違いする)ので、全てEUCコードで処理した方が無難なようです。設定としてはDoxygenの設定ファイルにおいて以下の設定をしています。
USE_WINDOWS_ENCODING = NO
INPUT_FILTER = "nkf -e"
LATEX_CMD_NAME = platex-euc
次は数式の話です。HTMLに数式を画像で埋め込む際には、TeXで数式がdvi化され、それをdvipsで画像にしているようですが、Cygwinのdvipsではフォントの指定をするのが面倒であったので、/usr/binにあったdvipsをTeXインストーラ(TeX Wikiの解説ページ)でインストールされるdvipsにシンボリックリンクで置換しました。ただしここでdvipsのオメガ拡張がどうの、という話が絡んでいるので、odvipsを使いました。
最後に、HTMLを一つのファイルにまとめてchm形式にするためにした設定を書いておきます。chm形式とはWindowsでよく見られるヘルプファイルの形式で、複数のHTMLや画像ファイルを一つのファイルにまとめて圧縮をかけたものです。作るためにはM$謹製のツール、HTML Help Workshopを利用します(リンク先の日本語版の方はどうやらドキュメント類だけのようなので、英語版をインストールしました)。あとはDoxygenの設定を以下のように行えば、chm形式でドキュメントが生成とれるようになりました。
HHC_LOCATION = "/cygdrive/path/to/HTML Help Workshop/hhc.exe"
ただし現時点ではEUCで文字コードを処理しているためか、索引ページが文字化けを起こしてしまっています。索引はShift-JISでなければならないのでしょうか。現在調査中です。
もうしばらくしたら、雑然と置いてあるソースがわかりやすくなるかもしれません(笑)。
コメント
>酔漢さん
そうですね、まさに局所的になってきていますorz そのうえTeXの数式を埋め込むのが楽しくて仕方ありません(笑)
私もWindows版のをつかっています。得にデフォルトで問題ないですね。警告すら出た記憶がありません(^^;
個別にマニュアルを作るとそっちに時間取られて大変ですが、Doxygenだけで終わることもできないので使いようですね。
>まやさん
そうですね。個別にマニュアルを作り出すと色々と細かいところが気になりだして、なかなか終わらない性分(凝り性らしい)なので、ざっくりやってくれるDoxygenのようなツールがないと身の破滅です(笑)
こんにちは、私も全く同じ現象で煮詰まってしまっています。
何故索引だけ文字化けしてしまうのでしょうね??
私も現在調査中ですが、もし解決策等、既に発見して
いましたら、ぜひご教授ください m(_)m
>Smileさん
はじめまして。結局のところnkfで全てSJISに変換してからhhc.exeをかけるようにすることで解決しました。参考にこちらで利用しているMakefileやDoxyfileをこのあたりにおいておきます。お役に立てれば幸いです。
https://fenrir.naruoka.org/download/archive/doxygen/
コメントする
- 匿名でのコメントは受け付けておりません。
- お名前(ハンドル名可)とメールアドレスは必ず入力してください。
- メールアドレスを表示されたくないときはURLも必ず記入してください。
- コメント欄でHTMLタグは使用できません。
- コメント本文に日本語(全角文字)がある程度多く含まれている必要があります。
- コメント欄内のURLと思われる文字列は自動的にリンクに変換されます。
- 投稿ボタンを押してエラーがでなければ、投稿は成功しています。反映されるまでには少し時間がかかります。
私はWindows用のDoxygenをデフォルトのSJISで使っていますが、文字コードの問題はここ数年おきていません。警告が出ますが知らん顔で使っています。
Posted by: 酔漢 : March 21, 2007 08:14 AMDoxygen、あまりにすばらしいので頼りっぱなしになると、説明が全部局所的になってしまいます。桑原桑原。