RD の HeadLine の目次を作る (改造版)


概要

RD から HeadLine の目次 RD を作成する。 長文 RD を扱うときは便利。

元々は rubikitch さん が、<URL:http://www.rubyist.net/~rubikitch/computer/myruby/rd-hindex/> で公開していた rd-hindex.rd を勝手に改造したもの。

レベル 5 のヘッダ

レベル 6 のヘッダ

も目次として取り込む仕様になっている。

他にも、目次レベルの最小値と最大値の設定やフィルター機能を利用している RD のための名前付き PART にも対応している。

ダウンロード

使い方

まずこのスクリプトで目次を作成し、もとのRDに「Include」で取り込む。

  1. 目次作成

    $ rd-hindex2.rb input.rd > input.hindex.rd
  2. もとのRDにIncludeで取り込む。実行結果参照。

例えばこの rd-hindex2.rb でやってみると以下のような感じ

  1. 自身を取り込めないので、まずはテスト用にコピー その際 「Include」行をコメントアウト。

    $ sed s/^'<<<'/'#<<<'/ < rd-hindex2.rd  > input.rd
  2. 目次ファイル生成。

    $ ruby rd-hindex2.rb input.rd > rd-hindex2.hindex.rd
  3. 取り込んで HTML 作成。

    $ rd2 rd-hindex2.rb > rd-hindex2.html

オプション

-b NUM (--base-level=NUM)

目次レベルの最小値を設定する。 デフォールト値は2。 つまり、h2要素以下に対して目次を作成する。 h1要素も目次に含めるには、-b 1 を指定する。

-d NUM (--max-depth=NUM)

目次レベルの最大値を設定する。 デフォールト値は6。

--with-part=PART

フィルター機能を利用している RD の「名前付き Part」に対応 している。例えば PART に "JA:rd" を指定すると、 "=begin JA" と "=end JA" でくくられた部分の目次も作成する。 なお "JA:include" と指定した場合は目次を作成しない。 (rd2 の --with-part オプションと書式をあわせたつもり)。