Path: | README.ja |
Last Update: | Wed Aug 09 15:32:13 JST 2006 |
(Japanese | English)
RDoc の Fortran 90/95 ソースコード解析機能を強化するためのパッチを 配布しています. パッチを適用したパッケージも配布しています.
このパッケージは Ruby 1.8.2 での動作を確認しています.
最新版 (バージョン $Name: rdoc-f95-20060811 $)
過去のアーカイブ
パッチファイルを Ruby のオリジナル資源に適用する手順は 以下の通りです.
% tar xvfz ruby-1.8.4.tar.gz
% patch -p0 < rdoc-f95-patch_for_ruby1.8.4
パッチが適用された rdoc-f95.tgz パッケージを使用するには 以下のようにします.
アーカイブファイル rdoc-f95.tgz をダウンロードした後に, 以下のように tar コマンドで展開後, install.rb でインストールを行ってください. 既に rdoc がインストールされている場合, 上書きする可能性があります.
% tar xvfz rdoc-f95.tgz % cd rdoc-f95 % ruby install.rb
インストール先のディレクトリや, 変更のためのオプションに関しては, 以下のコマンドで知ることが出来ます.
% ruby install.rb --help
debian パッケージをダウンロードし, 以下のようにインストールを 行ないます.
% dpkg -i rdoc-f95_20060809_i386.deb
オリジナルの rdoc パッケージが rdoc-f95 パッケージに置き換わります. 以下の URL を APT のソースリストに加えておくと, APT のコマンドで rdoc-f95 パッケージのインストールや更新が可能になります.
deb http://www.gfd-dennou.org/library/cc-env/Linux/debian-dennou stable/
実行プログラムがインストールされた場所を環境変数 PATH に設定し, ライブラリがインストールされた場所を環境変数 RUBYLIB に設定してください.
Fortran 90/95 ファイルが置いてあるディレクトリまで移動し, 以下のコマンドを 実行してください. doc ディレクトリ以下にドキュメントが作成されます.
% rdoc --ignore-case --charset euc-jp --inline-source
拡張子が .f90, .F90, .f95, .F95 であるファイルは Fortran 90/95 プログラムとして解析されます. サブディレクトリ以下の全ての Fortran 90/95 プログラムも解析されます.
なお, オリジナルの RDoc と同様, 拡張子が .rb, .rbw であるファイルは Ruby プログラムとして, 拡張子が .c, .cc, .cpp, .CC, .cxx であるファイルは C プログラムとして解析されます.
doc ディレクトリ以外に出力したい場合は, —op オプションをつけてください. タイトルは —title オプションで変更できます. また, デフォルトでは Fortran 90/95 の private 属性のサブルーチンや関数 などはドキュメントに出力されませんが, —all オプションを つけることで, 全てがドキュメントに出力されます. —charsetオプションは, ドキュメントに反映されるコメントに 日本語など 2 バイト文字が含まれる場合に用います. コメントの文字コードに合わせ, euc-jp, Shift_JIS, iso-2022-jp などを指定してください.
一部のファイルのみを ドキュメント化したい場合は, 引数に src/*.f90 などと ファイル名を明示的に指定してください. 以下の例参照.
% rdoc --ignore-case --charset euc-jp --inline-source \ --op rdoc --title "RDoc documentations" src/*.f90 test/*.f90
詳しいことは RDoc オリジナルの README を参照ください.
parsers/parse_f95.rb を参照ください. ただし, ここに記述されるのは Fortran 90/95 に特有な部分なので, 一般的な部分に関しては RDoc オリジナルの README を参照ください. 大林さんによる日本語訳が www.kmc.gr.jp/~ohai/rdoc.ja.html にあります.
ここで配布するパッチは, RDoc の Fortran 90/95 ソースコードの 解析能力を大幅に向上させ, Fortran 90/95 プログラムから 自動生成されるドキュメントの情報量を充実させます. 主に改良されているのは, 元々の RDoc に付属される Fortran 90/95 解析プログラム parse_f95.rb ですが, 他のいくつかのプログラムにも改良を施しています.
オリジナルの RDoc は Dave Thomas さんによって開発され, 現在では Ryan Davis さんによってメンテナンスされています. オリジナルの RDoc は Ruby の CVS レポジトリ www.ruby-lang.org/ja/20020106.html より取得できます. オリジナルの RDoc に関しては RDoc オリジナルの README を参照してください.
オリジナルからの変更点の主なものは以下の通りです. なお, 既にこのパッチ (2005/12/17 バージョン) は Ruby 本家の CVS リポジトリへとフィードバックされているので, 一部は既に「オリジナルとの変更点」 ではなくなっていることに注意してください.
—ignore-case オプションの追加 : | Fortran 90/95 規格では大文字小文字の区別はありません. これに対して, オリジナルの rdoc はクラス名やメソッド名の クロスリファレンスの際に大文字小文字を区別します. このオプションを与えることにより, その区別を行わないようにします. |
ファイルのクロスリファレンス : | クラスやモジュール, メソッドと同様に, ファイル名に関しても クロスリファレンスを可能にしました. |
—style オプションの改良 : | オリジナルの rdoc では, 相対パスでスタイルシートを指定した場合, 各ドキュメントのスタイルシートへのパスが正しく設定されません. このパッチを適用することで, 正しく設定されるようになります. |
TeX で書かれた数式の MathML への変換 : | ひらくの工房
にて公開されている Ruby 用 MathML ライブラリのバージョン 0.5 を
インストールすることで, TeX で書かれた数式を MathML
に変換することが可能です. この機能を有効 にするためには rdoc コマンドに
—mathml オプションを 指定してください. TeX
で数式を書く際の書式に関しては Generators::TexParser
を参照してください.
※ 注意 ※ —mathml オプションを使用した際に作成される ドキュメントは Mozilla Firefox および Internet Explorer (+ MathPlayer) では正しく表示されることを確認しています. その他のブラウザの MathML 対応に関しては, MathML 日本語情報 や MathML Software - Browsers などを参照してください. |
解析能力が向上されたのに伴い, ドキュメントに反映されるコメントの書法の 多少変更されています. parsers/parse_f95.rb を参照してください.
RDoc Fortran 90/95 ソースコード解析機能強化版のパッチもしくはパッケージ (以下, 本パッチもしくはパッケージ)は, 研究・教育の場で用いられることを前提としております. 教育現場においては自由に使用・改変していただいて結構です. ライセンス規定は本家 RDoc に準拠します. RDoc オリジナルの README を参照ください.
本パッチもしくはパッケージを利用して得られた科学技術的成果を 論文や Web 等にて発表する際には, その旨を記し, リファレンスに挙げて 頂きますようお願いします.
森川 靖大, 石渡 正樹, 堀之内 武, 小高 正嗣, 林 祥介, 数値モデリングプロジェクト dcmodel, 2006: RDoc Fortran 90/95 ソースコード解析機能強化版, http://www.gfd-dennou.org/library/dcmodel/, 地球流体電脳倶楽部.
Morikawa,Y., Ishiwatari,M., Horinouchi,T., Odaka,M., Hayashi,Y.-Y., dcmodel: Numerical Model Porject, 2006: Enhanced version of RDoc Fortran 90/95 parser, http://www.gfd-dennou.org/library/dcmodel/, GFD Dennou Club.
数値モデリングプロジェクト dcmodel のページ末尾を参照ください.