f90613a1dd
(new) -> 1.14 books/fdp-primer/examples/appendix.sgml Submitted by: TAOKA Fumiyoshi <fmysh at iijmio-mail dot jp> Reference: [doc-jp-work 864]
358 lines
13 KiB
Text
358 lines
13 KiB
Text
<!-- Copyright (c) 2000 Nik Clayton, All rights reserved.
|
|
|
|
Redistribution and use in source (SGML DocBook) and 'compiled' forms
|
|
(SGML HTML, PDF, PostScript, RTF and so forth) with or without
|
|
modification, are permitted provided that the following conditions
|
|
are met:
|
|
|
|
1. Redistributions of source code (SGML DocBook) must retain the above
|
|
copyright notice, this list of conditions and the following
|
|
disclaimer as the first lines of this file unmodified.
|
|
|
|
2. Redistributions in compiled form (transformed to other DTDs,
|
|
converted to PDF, PostScript, RTF and other formats) must reproduce
|
|
the above copyright notice, this list of conditions and the
|
|
following disclaimer in the documentation and/or other materials
|
|
provided with the distribution.
|
|
|
|
THIS DOCUMENTATION IS PROVIDED BY NIK CLAYTON "AS IS" AND ANY EXPRESS OR
|
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
DISCLAIMED. IN NO EVENT SHALL NIK CLAYTON BE LIABLE FOR ANY DIRECT,
|
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE
|
|
POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
The FreeBSD Japanese Documentation Project
|
|
|
|
Original Revision: 1.14
|
|
$FreeBSD$
|
|
-->
|
|
|
|
<appendix id="examples">
|
|
<title>見本</title>
|
|
|
|
<para>この付録には SGML ファイルの見本と
|
|
それらを一つの出力フォーマットから別のものへ変換するのに使える
|
|
コマンドラインがあります。
|
|
ドキュメンテーションプロジェクトのツールをうまくインストールできたなら、
|
|
これらの見本を直接使用することができます。</para>
|
|
|
|
<para>これらの見本は完全なものではありません—使用したいであろう
|
|
すべての要素、特に文書の前付け (目次など) に対応するもの、はありません。
|
|
より多くの DocBook マークアップについては、
|
|
<application>CVSup</application> <literal>doc</literal> コレクションの中か、
|
|
<ulink url="http://www.FreeBSD.org/cgi/cvsweb.cgi/doc/"></ulink>
|
|
からオンラインで利用可能な、この文書や他の文書の SGML
|
|
ソースを調べてください。</para>
|
|
|
|
<para>混乱を避けるために、これらの見本は FreeBSD 拡張ではなく
|
|
標準の DocBook 4.1 DTD を使用しています。
|
|
また FreeBSD ドキュメンテーションプロジェクトによって
|
|
カスタマイズされたスタイルシートではなく、
|
|
Norm Walsh によって配布されている通常のスタイルシートを使用しています。
|
|
これによって、一般的な DocBook の見本としても役立ちます。</para>
|
|
|
|
<sect1 id="examples-docbook-book">
|
|
<title>DocBook <sgmltag>book</sgmltag></title>
|
|
|
|
<example>
|
|
<title>DocBook <sgmltag>book</sgmltag></title>
|
|
|
|
<programlisting><![ CDATA [<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
|
|
|
|
<book>
|
|
<bookinfo>
|
|
<title>An Example Book</title>
|
|
|
|
<author>
|
|
<firstname>Your first name</firstname>
|
|
<surname>Your surname</surname>
|
|
<affiliation>
|
|
<address><email>foo@example.com</email></address>
|
|
</affiliation>
|
|
</author>
|
|
|
|
<copyright>
|
|
<year>2000</year>
|
|
<holder>Copyright string here</holder>
|
|
</copyright>
|
|
|
|
<abstract>
|
|
<para>If your book has an abstract then it should go here.</para>
|
|
</abstract>
|
|
</bookinfo>
|
|
|
|
<preface>
|
|
<title>Preface</title>
|
|
|
|
<para>Your book may have a preface, in which case it should be placed
|
|
here.</para>
|
|
</preface>
|
|
|
|
<chapter>
|
|
<title>My first chapter</title>
|
|
|
|
<para>This is the first chapter in my book.</para>
|
|
|
|
<sect1>
|
|
<title>My first section</title>
|
|
|
|
<para>This is the first section in my book.</para>
|
|
</sect1>
|
|
</chapter>
|
|
</book>]]></programlisting>
|
|
</example>
|
|
</sect1>
|
|
|
|
<sect1 id="examples-docbook-article">
|
|
<title>DocBook <sgmltag>article</sgmltag></title>
|
|
|
|
<example>
|
|
<title>DocBook <sgmltag>article</sgmltag></title>
|
|
|
|
<programlisting><![ CDATA [<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
|
|
|
|
<article>
|
|
<articleinfo>
|
|
<title>An example article</title>
|
|
|
|
<author>
|
|
<firstname>Your first name</firstname>
|
|
<surname>Your surname</surname>
|
|
<affiliation>
|
|
<address><email>foo@example.com</email></address>
|
|
</affiliation>
|
|
</author>
|
|
|
|
<copyright>
|
|
<year>2000</year>
|
|
<holder>Copyright string here</holder>
|
|
</copyright>
|
|
|
|
<abstract>
|
|
<para>If your article has an abstract then it should go here.</para>
|
|
</abstract>
|
|
</articleinfo>
|
|
|
|
<sect1>
|
|
<title>My first section</title>
|
|
|
|
<para>This is the first section in my article.</para>
|
|
|
|
<sect2>
|
|
<title>My first sub-section</title>
|
|
|
|
<para>This is the first sub-section in my article.</para>
|
|
</sect2>
|
|
</sect1>
|
|
</article>]]></programlisting>
|
|
</example>
|
|
</sect1>
|
|
|
|
<sect1 id="examples-formatted">
|
|
<title>フォーマット済出力を生成する</title>
|
|
|
|
<para>この節では <filename role="package">textproc/docproj</filename>
|
|
port に含まれたソフトウェアを、手作業であれ、port を使ってであれ、
|
|
インストールしてあることを前提にしています。
|
|
さらに、ソフトウェアを <filename>/usr/local/</filename>
|
|
以下のサブディレクトリへインストールし、
|
|
バイナリがインストールされたディレクトリが <envar>PATH</envar>
|
|
に含まれていることを前提にしています。
|
|
あなたのシステムに合わせて必要に応じパスを修正してください。</para>
|
|
|
|
<sect2>
|
|
<title>Jade を使う</title>
|
|
|
|
<example>
|
|
<title>DocBook から HTML (大きな単一ファイル) への変換</title>
|
|
|
|
<screen>&prompt.user; <userinput>jade -V nochunks \ <co id="examples-co-jade-1-nochunks">
|
|
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \ <co id="examples-co-jade-1-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 \<co id="examples-co-jade-1-dsssl">
|
|
-t sgml <co id="examples-co-jade-1-transform"> file.sgml > file.html <co id="examples-co-jade-1-filename"></userinput></screen>
|
|
|
|
<calloutlist>
|
|
<callout arearefs="examples-co-jade-1-nochunks">
|
|
<para>すべての出力が <abbrev>STDOUT</abbrev> へ書かれるように、
|
|
<literal>nochunks</literal> パラメータをスタイルシートへ指定します
|
|
(Norm Walsh のスタイルシートを使用しています)。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-1-catalog">
|
|
<para>Jade が処理しなければならないカタログを指定します。
|
|
三つのカタログが必要です。
|
|
最初は DSSSL スタイルシートに関する情報を含んだカタログ、
|
|
二つ目は DocBook DTD に関する情報を含んだカタログ、
|
|
三つ目は Jade に特有の情報を含んだカタログです。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-1-dsssl">
|
|
<para>この文書を処理するときに Jade が使用する
|
|
DSSSL スタイルシートへのフルパスを指定します。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-1-transform">
|
|
<para>ある DTD から別のものへ<emphasis>変換</emphasis>することを
|
|
Jade へ指示します。この例では、DocBook DTD から HTML DTD
|
|
へ入力が変換されます。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-1-filename">
|
|
<para>Jade が処理すべきファイルを指定し、
|
|
指定した <filename>.html</filename> ファイルへ
|
|
出力をリダイレクトします。</para>
|
|
</callout>
|
|
</calloutlist>
|
|
</example>
|
|
|
|
<example>
|
|
<title>DocBook から HTML (複数の小さなファイル) への変換</title>
|
|
|
|
<screen>&prompt.user; <userinput>jade \
|
|
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \ <co id="examples-co-jade-2-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 \<co id="examples-co-jade-2-dsssl">
|
|
-t sgml <co id="examples-co-jade-2-transform"> <replaceable>file</replaceable>.sgml <co id="examples-co-jade-2-filename"></userinput></screen>
|
|
|
|
<calloutlist>
|
|
<callout arearefs="examples-co-jade-2-catalog">
|
|
<para>Jade が処理しなければならないカタログを指定します。
|
|
三つのカタログが必要です。
|
|
最初は DSSSL スタイルシートに関する情報を含んでいるカタログ、
|
|
二つ目は DocBook DTD に関する情報を含んでいるカタログ、
|
|
三つ目は Jade 特有の情報を含んでいます。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-2-dsssl">
|
|
<para>この文書を処理するときに Jade が使用する
|
|
DSSSL スタイルシートへのフルパスを指定します。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-2-transform">
|
|
<para>ある DTD から別のものへ<emphasis>変換</emphasis>することを
|
|
Jade へ指示します。この例では、DocBook DTD から HTML DTD
|
|
へ入力が変換されます。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-2-filename">
|
|
<para>Jade が処理すべきファイルを指定します。
|
|
スタイルシートは個々の HTML ファイルがどのように名付けられるか、
|
|
そして <quote>ルート</quote> ファイル (つまり、
|
|
文書の始点を含んだファイル) の名前を決めます。</para>
|
|
</callout>
|
|
</calloutlist>
|
|
|
|
<para>この見本では、処理しようとしている文書の構造と
|
|
スタイルシートの分割出力ルールに依存しているので、
|
|
今まで通りに一つの HTML ファイルしか生成しないかもしれません。</para>
|
|
</example>
|
|
|
|
<example id="examples-docbook-postscript">
|
|
<title>DocBook から Postscript への変換</title>
|
|
|
|
<para>ソース SGML ファイルを &tex; ファイルへ変換しなければなりません。</para>
|
|
|
|
<screen>&prompt.user; <userinput>jade -Vtex-backend \ <co id="examples-co-jade-3-tex-backend">
|
|
-c /usr/local/share/sgml/docbook/dsssl/modular/catalog \ <co id="examples-co-jade-3-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 \<co id="examples-co-jade-3-dsssl">
|
|
-t tex <co id="examples-co-jade-3-tex"> <replaceable>file</replaceable>.sgml</userinput></screen>
|
|
|
|
<calloutlist>
|
|
<callout arearefs="examples-co-jade-3-tex-backend">
|
|
<para>&tex; 出力生成に関する様々なオプションを使用するように
|
|
スタイルシートをカスタマイズします。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-3-catalog">
|
|
<para>Jade が処理しなければならないカタログを指定します。
|
|
三つのカタログが必要です。
|
|
最初は DSSSL スタイルシートに関する情報を含んでいるカタログ、
|
|
二つ目は DocBook DTD に関する情報を含んでいるカタログ、
|
|
三つ目は Jade 特有の情報を含んでいます。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-3-dsssl">
|
|
<para>この文書を処理するときに Jade が使用する
|
|
DSSSL スタイルシートへのフルパスを指定します。</para>
|
|
</callout>
|
|
|
|
<callout arearefs="examples-co-jade-3-tex">
|
|
<para>出力を &tex; へ変換することを Jade に指示します。</para>
|
|
</callout>
|
|
</calloutlist>
|
|
|
|
<para>生成された<filename>.tex</filename> ファイルは、今度は
|
|
<literal>&jadetex</literal> マクロパッケージを指定して
|
|
<command>tex</command>へ通さなければなりません。</para>
|
|
|
|
<screen>&prompt.user; <userinput>tex "&jadetex" <replaceable>file</replaceable>.tex</userinput></screen>
|
|
|
|
<para><emphasis>少なくとも</emphasis>三度、
|
|
<command>tex</command> を実行しなければなりません。
|
|
最初の実行は文書を処理し、索引などで使用するために
|
|
文書の他の部分から参照される範囲を決定します。</para>
|
|
|
|
<para>この時点では
|
|
<literal>LaTeX Warning: Reference `136' on page 5 undefined on input
|
|
line 728.</literal>のような警告メッセージが出ても大丈夫です。</para>
|
|
|
|
<para>二度目の実行では文書を処理しますが、
|
|
今度は幾つかの情報 (文書のページ数など) は既知です。
|
|
これによって索引の項目や他の相互参照が解決されます。</para>
|
|
|
|
<para>三度目の実行で必要な最終クリーンナップを行います。</para>
|
|
|
|
<para>このステージの出力が
|
|
<filename><replaceable>file</replaceable>.dvi</filename>となります。</para>
|
|
|
|
<para>最後に、<command>dvips</command> を実行して
|
|
<filename>.dvi</filename> ファイルを Postscript へ変換します。</para>
|
|
|
|
<screen>&prompt.user; <userinput>dvips -o <replaceable>file</replaceable>.ps <replaceable>file.dvi</replaceable></userinput></screen>
|
|
</example>
|
|
|
|
<example>
|
|
<title>DocBook から PDF への変換</title>
|
|
|
|
<para>このプロセスの最初の部分は DocBook から
|
|
Postscript への変換と同様で、同じ <command>jade</command>
|
|
コマンドラインを使います (<xref
|
|
linkend="examples-docbook-postscript">)。</para>
|
|
|
|
<para><filename>.tex</filename> ファイルが生成されたら
|
|
pdfTeX を実行します。ただし、代りに &pdfjadetex
|
|
マクロパッケージを使用してください。</para>
|
|
|
|
<screen>&prompt.user; <userinput>pdftex "&pdfjadetex" <replaceable>file</replaceable>.tex</userinput></screen>
|
|
|
|
<para>再び、このコマンドを三度実行してください。</para>
|
|
|
|
<para>これによって
|
|
<filename><replaceable>file</replaceable>.pdf</filename>
|
|
ファイルが生成されます (それ以上処理すべきことはありません)。</para>
|
|
</example>
|
|
</sect2>
|
|
</sect1>
|
|
</appendix>
|
|
|
|
<!--
|
|
Local Variables:
|
|
mode: sgml
|
|
sgml-declaration: "../appendix.decl"
|
|
sgml-indent-data: t
|
|
sgml-omittag: nil
|
|
sgml-always-quote-attributes: t
|
|
sgml-parent-document: ("../book.sgml" "part" "appendix")
|
|
End:
|
|
-->
|