Version 6 (modified by yasumichi, 15 years ago) (diff) |
---|
オンラインマニュアルの作成にDocBook XMLを使用しています。
<?xml version="1.0"?> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> <book id="example-book"> <title>DocBookの例</title> <chapter id="example-chapter"> <title>章の例</title> <para>段落の例です。</para> <sect1 id="example-sect1"> <title>節の例</title> <para>chapterを分割するsect1の例です。</para> </sect1> <sect1>(中略)</sect1> </chapter> <chapter>(中略)</chapter> <appendix id="example-appendix"> <title>付録の例</title> <para>(中略)</para> </appendix> </book>
!DocBookに限った話ではないのですが、XMLファイルを別の形式に変換する場合、xsltprocコマンドを利用します。その基本構文は次の通りです。
$ xsltproc オプション XSLスタイルシート XMLファイル
!DocBook用のXSLスタイルシートは、/usr/share/sgml/docbook/xsl-stylesheets以下に用意されています。以下、HTMLファイルに変換する例を記述します。
$ xsltproc /usr/share/sgml/docbook/xsl-stylesheets/html/docbook.xsl source.xml > dest.html
XSLスタイルシートに/usr/share/sgml/docbook/xsl-stylesheets/html/docbook.xslを使用した場合、標準出力にHTMLを吐き出しますのでリダイレクトしています。
$ xsltproc /usr/share/sgml/docbook/xsl-stylesheets/html/chunk.xsl source.xml
ファイル名は、分割される単位の章(chapter)や節(sect)に指定したidを元にします。idが指定されていない場合、自動でファイル名が決定されます。
xsltprocのオプション --stringparam を使うとXSLスタイルシートパラメータを指定する事ができます。
--stringparam chunker.output.encoding euc-jp
--stringparam chunker.output.indent yes