他のバージョンの文書 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

J.3. 文書の構築

全ての設定が終了したら、doc/src/sgmlディレクトリに移動して以下のコマンドの1つを実行してください (GNU makeを使うのを忘れずに)。

J.3.1. HTML

HTML形式の文書を作成するには次のようにします。

doc/src/sgml$ make html

これはデフォルトでの対象です。 出力はhtmlサブディレクトリに作成されます。

適切なインデックスを作成するために、構築時何回か同一の処理を行う可能性があります。 インデックスを考えず、出力の検証を行いたいだけであれば、以下のようにdraftを使用してください。

doc/src/sgml$ make draft

1つのHTMLページとして文書を作成するためには以下を使用します。

doc/src/sgml$ make postgres.html

J.3.2. マニュアルページ

DocBook refentryページをマニュアルページに対応した*roff形式に変換するには、DocBook XSLスタイルシートを使用します。 manページもHTML形式と同じようにtarアーカイブで配布されています。 マニュアルページを作成するには次のようにします。

cd doc/src/sgml
make man

J.3.3. JadeTex からの印刷

JadeTexを使って印刷可能な文書を作成したい時は、以下のコマンドの中から1つを選んでください。

  • A4サイズのDVI経由のPostScriptを作るには次のようにします。

    doc/src/sgml$ make postgres-A4.ps

    U.S.レターサイズの場合は次のようにします。

    doc/src/sgml$ make postgres-US.ps

  • PDFを作るには

    doc/src/sgml$ make postgres-A4.pdf

    または、

    doc/src/sgml$ make postgres-US.pdf

    のようにします。 (もちろんPostScriptからもPDFバージョンを作成できますが、PDFを直接生成すれば、ハイパーリンクを含めた拡張機能を持たせるようにできます。)

PostgreSQL文書の構築にJadeTeXを使用する場合、おそらくいくつかのTeXの内部用パラメータを増加させなければなりません。 これらはtexmf.cnfファイルで設定可能です。 本書執筆時点では、以下の設定で動作します。

hash_extra.jadetex  = 200000
hash_extra.pdfjadetex  = 200000
pool_size.jadetex = 2000000
pool_size.pdfjadetex = 2000000
string_vacancies.jadetex = 150000
string_vacancies.pdfjadetex = 150000
max_strings.jadetex = 300000
max_strings.pdfjadetex = 300000
save_size.jadetex = 15000
save_size.pdfjadetex = 15000

J.3.4. テキストのはみ出し

テキストが印刷マージンよりも広くなりすぎることがあります。 さらに極端な場合、印刷ページよりも広くなりすぎることがあります。 例えば、折り返しのないテキストや幅広の表などです。 過度に幅広のテキストはOverfull hboxというメッセージをTeXのログファイル(postgres-US.logまたはpostgres-A4.log)に残します。 インチ単位で72ポイントありますので、72ポイントを超えた時におそらく幅が広すぎて印刷ページに合わないと何かしらに報告されます(1インチのマージンを仮定)。 SGMLテキストがはみ出す可能性があるかどうかを見つけるためには、上のはみ出しに関するメッセージで示されている先頭ページ番号(例えば[50 ###] (page 50))を見つけ、PDFファイル内の次のページ(例えばpage 51)以降を読み、はみ出したテキストを探します。 それに合わせてSGMLを調整します。

J.3.5. RTFからの印刷

PostgreSQL文書の印刷できるバージョンをRTFに変換した後、ちょっとした修正をOffice Suiteで施すことで作成できます。 特定のOffice Suiteによる機能で、文書を引き続きPDFのPostScriptに変換できます。 以下にApplixwareを使ってこの手順を示します。

注記

現バージョンのPostgreSQL文書は、OpenJadeの大きさの限界とそれを超えた部分での不具合を引き起こすようです。 もしRTFバージョンが構築過程で長時間にわたってハングアップし、かつ出力ファイルのサイズが0のままであるような場合は、この問題に遭遇したことになります。 (とは言っても、通常の構築には5分から10分を要しますので、あせって中断しないように注意してください。)

Applixware RTFの手入れ

OpenJadeは本文に対してデフォルトのスタイルシートの特定を省略します。 過去においてはこの原因不明の問題によって、表内容を生成するまで長い過程を必要としました。 しかし、Applixwareに関わっている仲間の助力でこの症状が判明し、しっくり行くようになりました。

  1. RTFバージョンを生成するためには次のように入力します。

    doc/src/sgml$ make postgres.rtf

  2. 全てのスタイル(特にデフォルトスタイル)を正しく指定するようにRTFファイルを修正します。 文書にrefentry節がある場合、前の段落を現在の段落に連結されるフォーマット指示を、現在の段落が次の段落に連結するように置き換えなければなりません。 これらの修正を行ってくれるfixrtfユーティリティはdoc/src/sgmlにあります。

    doc/src/sgml$ ./fixrtf --refentry postgres.rtf

    このスクリプトはその文書の中でのゼロ番目のスタイルとして{\s0 Normal;}を付け加えます。 ApplixwareによるとRTF規格は明示的なゼロ番目のスタイルを追加することを禁じていますが、Microsoft Wordはたまたま扱えるようになっています。 refentry節を修正するためにスクリプトが\keepnタグを\keepに置き換えます。

  3. Applixware Wordsで新規文書を開き、RTFファイルをインポートします。

  4. Applixwareで新規目次(ToC)を生成します。

    1. そこにあるToCの行の1行目の始めの文字から最終行の最後の文字までを選択します。

    2. ToolsBook BuildingCreate Table of Contentsで新規ToCを構築します。 ToCに含めるためヘッダの上から3レベルまでを選択します。 こうするとRTFからインポートされた既存の行がApplixware本来のToCと入れ替わります。

    3. FormatStyleを使ってToCのフォーマットを調整します。 3つのToCスタイルのそれぞれを選択し、FirstLeftインデントを調整します。 下記の値を使用します。

      StyleFirstインデント(インチ)Leftインデント(インチ)
      TOC-Heading 10.40.4
      TOC-Heading 20.80.8
      TOC-Heading 31.21.2

  5. 文書を通して下記に従って作業します。

    • 改ページの調整をします。

    • 表の列幅の調整をします。

  6. ToCのExamplesとFigures部分の右寄せのページ番号を正しい値に修正します。 ほんの数分しかかかりません。

  7. 索引に何もない場合は削除します。

  8. 目次の再生成と調整を行います。

    1. ToCフィールドを選択します。

    2. ToolsBook BuildingCreate Table of Contentsを選択します。

    3. ToolsField EditingUnprotectを選択してToCを解放します。

    4. ToCそのもののエントリであるToCの第1行目を削除します。

  9. 後での最終編集を容易にするためApplixware Words固有のフォーマットで文書を保存します。

  10. PostScriptフォーマットで文書をファイルに出力します。

J.3.6. 平文ファイル

より良い表示ツールがない状況で必要とされる場合に備えて、インストールの手順は平文でも配布されています。 INSTALLファイルは15章 ソースコードからインストールと連係していて、異なった内容を説明するためにちょっとした変更が加えられています。 このファイルを生成するには、doc/src/sgmlディレクトリに移動しmake INSTALLと入力します。

以前はリリースノートとリグレッションテストの手順も平文で配布されていましたが、打ち切りになりました。

J.3.7. 構文検証

文書の構築にはとても時間がかかります。 でも文書ファイルの正しい構文だけを検証する方法があります。 以下のように入力します。 ほんの数秒しかかかりません。

doc/src/sgml$ make check