RDtool - RD formatter


RDってなに?

RDはRubyにおけるPOD(Plain Old Documentation)のようなものです。 RDtoolはRDのフォーマッタであり、RDをHTMLなどに変換できます。

何が変わったの?

HISTORY ファイルを見て下さい.

インストール方法

gem を使う場合:

% gem install rdtool

開発時は:

% bundle install
% bundle exec rake test
% bundle exec rake build

utils/rd-mode.el を使いたいなら, それらは 手で インストールします.

従来の ruby setup.rb 方式は互換性のために残してあります.

どうやって使うか。

基本的には, こんな感じ.

% rd2 rdfile.rd > outputfile

フォーマットライブラリを指定したい時は, こう.

% rd2 -r library rdfile.rd > outputfile

rd2 --help でオプションの詳細がでます.

フォーマットライブラリ依存のオプションは先にフォーマットライブラリの 指定をしてから --help, 例えば

% rd2 -r rd/rd2html-lib.rb --help

とします.

rd2 はホームディレクトリにある ~/.rd2rc というファイルを読み込みます. これは Ruby スクリプトです.

同梱されている主なフォーマットライブラリは次の通りです。

rd/rd2html-lib
XHTML 風の HTML を出力します。主なオプションは --with-css=FILE, --html-charset=CHARSET, --html-lang=LANG, --html-title=TITLE, --html-link-rel=REL, --html-link-rev=REV, --output-rbl です。
rd/rd2html-ext-lib
見出し番号などを追加した拡張 HTML を出力します。 主な追加オプションは --ref-extension, --headline-title, --headline-secno, --enable-br, --native-inline, --head-element です。
rd/rd2html5-lib
HTML5 を出力します。主なオプションは rd/rd2html-lib と同様で、 --with-css=FILE, --html-charset=CHARSET, --html-lang=LANG, --html-title=TITLE などが使えます。
rd/rd2man-lib
man page を出力します。主なオプションは --man-section=SECTION です。
rd/rd2rdo-lib
解析済みの RD tree を Marshal data として出力します。
rd/rd2rmi-lib
参照解決用の method index data を出力します。

例えば HTML を明示的に生成するなら:

% rd2 -r rd/rd2html-lib rdfile.rd > output.html

HTML5 や man page を生成するなら:

% rd2 -r rd/rd2html5-lib rdfile.rd > output.html
% rd2 -r rd/rd2man-lib rdfile.rd > output.1

各 formatter の詳細なオプションを確認するには、例えば:

% rd2 -r rd/rd2html-ext-lib --help
% rd2 -r rd/rd2man-lib --help

また、RDtool には rdswap.rb も含まれています。 これは翻訳済みの RD block を Ruby スクリプトへ差し戻すための ツールです。RD コメントを埋め込んだ 1 つの Ruby スクリプトを保ちつつ、 言語ごとのコピーを生成する用途を想定しています。例えば:

% rdswap.rb sample.rb sample.ja

これにより、=sample.rb= の Ruby コードを保ったまま、 対応する RD block を sample.ja の内容で置き換えた sample.rb.ja を生成します。

RDの書き方

doc/rd-draft.rd を読んでください。

BTS

バグを見付けた時は、github issues に報告下さるか, Youhei SASAKI <uwabami@gfd-dennou.org> までご連絡下さい.

License

GPL-2+ or Ruby's.

ファイル毎のライセンス表記は以下の通りです:

Files: */
  * Copyright: 2004 MoonWolf <moonwolf AT moonwolf.com>
               2011-2026 Youhei SASAKI <uwabami@gfd-dennou.org>
  * License: Ruby's License or GPL-2+
Files: lib/rd/rd2man-lib.rb
  * Copyright: 2000  WATANABE Hirofumi
               2026 Youhei SASAKI <uwabami@gfd-dennou.org>
  * License: Ruby's License or GPL-2+
Files: lib/rd/{head-filter,rd2html-ext-lib,rd2html-ext-opt}.rb
  * Copyright: 2003 Rubikitch
  * License: Ruby's License or GPL-2+
Files: bin/rdswap
  * Copyright: 1999 C.Hintze
  * License: Ruby's License or GPL-2+
Files: setup.rb
  * Copyright: 2000-2006 Minero Aoki
  * License: LGPL-2.1
Files: utils/rd-mode.el
  * Copyright: 1999 Koji Arai, Toshiro Kuwabara.
  * License: GPL-2+
Back to Top ▲