見本
この付録には SGML ファイルの見本と
それらを一つの出力フォーマットから別のものへ変換するのに使える
コマンドラインがあります。
ドキュメンテーションプロジェクトのツールをうまくインストールできたなら、
これらの見本を直接使用することができます。
これらの見本は完全なものではありません—使用したいであろう
すべての要素、特に文書の前付け (目次など) に対応するもの、はありません。
より多くの DocBook マークアップについては、
CVSup doc コレクションの中か、
からオンラインで利用可能な、この文書や他の文書の SGML
ソースを調べてください。
混乱を避けるために、これらの見本は FreeBSD 拡張ではなく
標準の DocBook 4.1 DTD を使用しています。
また FreeBSD ドキュメンテーションプロジェクトによって
カスタマイズされたスタイルシートではなく、
Norm Walsh によって配布されている通常のスタイルシートを使用しています。
これによって、一般的な DocBook の見本としても役立ちます。
DocBook book
DocBook book
An Example Book
Your first name
Your surname
foo@example.com
2000
Copyright string here
If your book has an abstract then it should go here.
Preface
Your book may have a preface, in which case it should be placed
here.
My first chapter
This is the first chapter in my book.
My first section
This is the first section in my book.
]]>
DocBook article
DocBook article
An example article
Your first name
Your surname
foo@example.com
2000
Copyright string here
If your article has an abstract then it should go here.
My first section
This is the first section in my article.
My first sub-section
This is the first sub-section in my article.
]]>
フォーマット済出力を生成する
この節では textproc/docproj
port に含まれたソフトウェアを、手作業であれ、port を使ってであれ、
インストールしてあることを前提にしています。
さらに、ソフトウェアを /usr/local/
以下のサブディレクトリへインストールし、
バイナリがインストールされたディレクトリが PATH
に含まれていることを前提にしています。
あなたのシステムに合わせて必要に応じパスを修正してください。
Jade を使う
DocBook から HTML (大きな単一ファイル) への変換
&prompt.user; jade -V nochunks \
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
-c /usr/local/share/sgml/docbook/catalog \
-c /usr/local/share/sgml/jade/catalog \
-d /usr/local/share/sgml/docbook/dsssl/modular/html/docbook.dsl \
-t sgml file.sgml > file.html
すべての出力が STDOUT へ書かれるように、
nochunks パラメータをスタイルシートへ指定します
(Norm Walsh のスタイルシートを使用しています)。
Jade が処理しなければならないカタログを指定します。
三つのカタログが必要です。
最初は DSSSL スタイルシートに関する情報を含んだカタログ、
二つ目は DocBook DTD に関する情報を含んだカタログ、
三つ目は Jade に特有の情報を含んだカタログです。
この文書を処理するときに Jade が使用する
DSSSL スタイルシートへのフルパスを指定します。
ある DTD から別のものへ変換することを
Jade へ指示します。この例では、DocBook DTD から HTML DTD
へ入力が変換されます。
Jade が処理すべきファイルを指定し、
指定した .html ファイルへ
出力をリダイレクトします。
DocBook から HTML (複数の小さなファイル) への変換
&prompt.user; jade \
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
-c /usr/local/share/sgml/docbook/catalog \
-c /usr/local/share/sgml/jade/catalog \
-d /usr/local/share/sgml/docbook/dsssl/modular/html/docbook.dsl \
-t sgml file.sgml
Jade が処理しなければならないカタログを指定します。
三つのカタログが必要です。
最初は DSSSL スタイルシートに関する情報を含んでいるカタログ、
二つ目は DocBook DTD に関する情報を含んでいるカタログ、
三つ目は Jade 特有の情報を含んでいます。
この文書を処理するときに Jade が使用する
DSSSL スタイルシートへのフルパスを指定します。
ある DTD から別のものへ変換することを
Jade へ指示します。この例では、DocBook DTD から HTML DTD
へ入力が変換されます。
Jade が処理すべきファイルを指定します。
スタイルシートは個々の HTML ファイルがどのように名付けられるか、
そして ルート
ファイル (つまり、
文書の始点を含んだファイル) の名前を決めます。
この見本では、処理しようとしている文書の構造と
スタイルシートの分割出力ルールに依存しているので、
今まで通りに一つの HTML ファイルしか生成しないかもしれません。
DocBook から Postscript への変換
ソース SGML ファイルを &tex; ファイルへ変換しなければなりません。
&prompt.user; jade -Vtex-backend \
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
-c /usr/local/share/sgml/docbook/catalog \
-c /usr/local/share/sgml/jade/catalog \
-d /usr/local/share/sgml/docbook/dsssl/modular/print/docbook.dsl \
-t tex file.sgml
&tex; 出力生成に関する様々なオプションを使用するように
スタイルシートをカスタマイズします。
Jade が処理しなければならないカタログを指定します。
三つのカタログが必要です。
最初は DSSSL スタイルシートに関する情報を含んでいるカタログ、
二つ目は DocBook DTD に関する情報を含んでいるカタログ、
三つ目は Jade 特有の情報を含んでいます。
この文書を処理するときに Jade が使用する
DSSSL スタイルシートへのフルパスを指定します。
出力を &tex; へ変換することを Jade に指示します。
生成された.tex ファイルは、今度は
&jadetex マクロパッケージを指定して
texへ通さなければなりません。
&prompt.user; tex "&jadetex" file.tex
少なくとも三度、
tex を実行しなければなりません。
最初の実行は文書を処理し、索引などで使用するために
文書の他の部分から参照される範囲を決定します。
この時点では
LaTeX Warning: Reference `136' on page 5 undefined on input
line 728.のような警告メッセージが出ても大丈夫です。
二度目の実行では文書を処理しますが、
今度は幾つかの情報 (文書のページ数など) は既知です。
これによって索引の項目や他の相互参照が解決されます。
三度目の実行で必要な最終クリーンナップを行います。
このステージの出力が
file.dviとなります。
最後に、dvips を実行して
.dvi ファイルを Postscript へ変換します。
&prompt.user; dvips -o file.ps file.dvi
DocBook から PDF への変換
このプロセスの最初の部分は DocBook から
Postscript への変換と同様で、同じ jade
コマンドラインを使います ()。
.tex ファイルが生成されたら
pdfTeX を実行します。ただし、代りに &pdfjadetex
マクロパッケージを使用してください。
&prompt.user; pdftex "&pdfjadetex" file.tex
再び、このコマンドを三度実行してください。
これによって
file.pdf
ファイルが生成されます (それ以上処理すべきことはありません)。