3.3. Jade

Jade と OpenJade は、ふたつとも、DTD と DSSSL に基づいてコードの レンダリングや妥当性検査の大半を処理するプログラムです。どちらかが必要なので、 DTD と DSSSL のインストールが終わってから、インストールしてください。

3.3.1. Jade

ftp://ftp.jclark.com/pub/jade/jade-1.2.1.tar.gz

Jade は、SGML のフロント・エンドプロセッサです。DocBook と DSSSL を 使って、妥当性検査や、目的のフォーマットへの SGML ソースのレンダリングを行い ます。

3.3.1.1. Jade を使う

ここでは、使っているディストリビューションを問わず、どの ディストリビューションでも、とにかくすぐに使えるようにする方法を紹介します。

  1. いろんなファイルを入れるために、/usr/local/sgml/ といったベース・ディレクトリを 作成します。以下では、そのディレクトリを $_toolroot と呼びます。

  2. Jade, DocBook DTD, DSSSL を、$_toolroot がそれぞれの ベースディレクトリになるよう、次のようなディレクトリを作成して、インストール します。

    • $_toolroot/jade-1.2.1

    • $_toolroot/dtd

    • $_toolroot/dsssl

  3. 環境変数 SGML_CATALOG_FILES$_toolroot にあるカタログファイル名を設定する 必要があります。それには次のコマンドを使ってください。
    bash$ export SGML_CATALOG_FILES=$_toolroot/dtd/docbook.cat:\
    $_toolroot/dsssl/docbook/catalog:$_toolroot/jade-1.2.1/dsssl/catalog
                  

  4. これで Jade を使う準備ができました。セクション別の HTML ファイルを作成 するには、次のコマンドを使います。

    $_toolroot/jade-1.2.1/jade/jade -t sgml -i html \
    -d $_toolroot/dsssl/docbook/html/docbook.dsl howto.sgml
                  
  5. 一枚の HTML ファイルにまとめるには、上記の Jade コマンドに -V nochunks を付けてください。

3.3.1.2. XML モードの Jade

いったん XML 用の設定が済めば、Jade も OpenJade も SGML DocBook と 同じやり方で使えます。

XML DTD を解凍したら、jade/openjade のカタログファイルのデフォルト ファイル名として、docbook.cat ファイルから "catalog" にシンボリックリンクを 張ることもできます。次の $_xml_root の部分は、インストールした XML_DTD の場所に 置き換えてください。

bash$ cd $_xml_root
bash$ ln -s docbook.cat catalog
bash$ export SGML_CATALOG_FILES=$_xml_root/catalog:$_toolroot/dsssl/catalog:\
$_toolroot/dtd/docbook/catalog (1)
bash$ jade -t sgml -i html -d style $_jade_path/pubtext/xml.dcl foo.xml (2)
            
(1)
XML, DSSSL, DocBook それぞれのカタログファイルが必要です。 $_toolroot は、先ほどの例と同じです。
(2)
スタイルファイルは、好みのスタイルファイルに置き換えてください。jade が動くには、xml.dcl へのポインタが必要で、これは、XML 文書名の直前に指定され る必要があります。

XML 文書を処理中に次のような警告が表示されるかもしれません。これは出力 には影響しませんが、原因は調査中です。

<xml_dtd_pth>/ent/iso-lat2.ent:119:18:E: "X0176" is not a function name
<xml_dtd_pth>/ent/iso-lat2.ent:120:17:E: "X0178" is not a function name
              

既存の SGML DocBook 文書を XML 文書に変換したい場合は、(文書の冒頭の 行の)文書型宣言(declaration)のところで次のように書いてください。

<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.1.2//EN'>
          

LDP の文書規則に従っている場合、これ以外に文書に変更を加える必要は ありません。

3.3.2. OpenJade

http://openjade.sourceforge.net/

DSSSL コミュニティーが作成した、Jade のエクステンションです。 アプリケーションのなかには jade を必要とするものもありますが、どちらも サポートできるようにアップデートされつつあります。