[前へ] [目次]

## appendix の生成

appendix のソースデータが書けたら、`ebappendix` コマンドを用いて 実際の (バイナリ形式の) appendix を生成します。

以下、この章では `ebappendix` の実行方法について詳しく説明します。

### `ebappendix` の実行

`ebappendix` の一般的な起動方法は次の通りです。

>     % ebappendix 入力ディレクトリのパス

入力ディレクトリのパス には、読み込む appendix ソースデータの ディレクトリ、つまり `catalog.app` または `catalogs.app` ファイルが存在するディレクトリを指定します。 省略した場合は、カレントディレクトリを指定したとみなされます。

標準では、出力ファイルはカレントディレクトリに作成されます。

`--output-directory` オプションを指定することで、 `ebappendix` はカレントディレクトリ以外の場所に出力することが できます。

>     % ebappendix --output-directory 出力ディレクトリのパス \
>       入力ディレクトリのパス

もし出力ディレクトリが存在していなければ、自動的に `ebappendix` が生成します。

実行すると、`ebappendix` は出力ディレクトリの下にサブディレクトリ を作り、いくつかのファイルを生成します。

### appendix と CD-ROM 書籍の重ね合わせ

HDD 上にコピーした CD-ROM 書籍と同じディレクトリに、appendix を重ねて 置くことができます。

これには、`ebappendix` の `--output-directory` と `--no-catalog` オプションを使います。 `--output-directory` オプションには、CD-ROM 書籍の トップディレクトリを指定します。

>     % ebappendix --no-catalog --output-directory 出力ディレクトリのパス \
>       入力ディレクトリのパス

なお、appendix の形式 (電子ブックか EPWING か) は CD-ROM 書籍に合わせる ようにします (詳しくは 「`catalog(s).app` の書き方」 を参照)。

`ebappendix` の実行前後で CD-ROM 書籍のディレクトリ構成が どのように変化するのか、例を記してみます。 まず電子ブックの場合ですが、実行前のディレクトリ構成が次のように なっていたとします。

>     catalog
>     ejdict/start
>     howto/start

`ebappendix` で appendix を重ね合わせると、次のような構成に なります。

>     catalog
>     ejdict/start
>     ejdict/appendix  ← appendix のファイル
>     howto/start
>     howto/appendix   ← appendix のファイル

同様に、EPWING で実行前のディレクトリ構成が次のようになっていたと すると、

>     catalogs
>     ejdict/data/honmon
>     howto/data/honmon

実行後は、次のような構成になります。

>     catalogs
>     ejdict/data/honmon
>     ejdict/data/furoku  ← appendix のファイル
>     howto/data/honmon
>     howto/data/furoku   ← appendix のファイル

CD-ROM 書籍によっては、ディレクトリ名に大文字が混じっていることが ありますが、`ebappendix` はそれを検出しますので、名前を小文字に 変えたディレクトリを別途作ってしまうことはありません。

`--no-catalog` オプションを指定すると、`ebappendix` は カタログファイル `catalog` や `catalogs` ファイルを 生成しなくなります。 この appendix を EB ライブラリのアプリケーションから使う際は、 CD-ROM 書籍に最初から用意されている `catalog` や `catalogs` ファイルを CD-ROM 書籍、appendix 共用の カタログファイルとして流用することになります。

appendix のカタログファイルは、CD-ROM 書籍のカタログファイルの部分集合 となっているため、こうした事が可能となっています。 `--no-catalog` オプションを指定し忘れると、 `ebappendix` は CD-ROM 書籍のカタログファイルを上書き してしまいますので、注意して下さい。

### `ebappendix` のオプション

`ebappendix` コマンドは、伝統的な一文字オプション名と覚えやすい 長いオプション名の両方を扱うことができます。 長いオプション名を表すには、`-` ではなく `--` を 用います。 オプション名が一意に決まる範囲内で、名前の後方部分を省略することができま す。

`-b 書籍の形式`
`--booktype 書籍の形式`
  appendix を電子ブック、EPWING のどちらの形式のレイアウトに似せて作る のかを指定します。 電子ブック形式なら `eb`、EPWING 形式なら `epwing` と指定します。 このオプションを指定しなかった場合、次の要領でどちらの形式で生成する のかがが決定されます。 まず、入力ディレクトリに `catalog.app` ファイルが存在すれば それが読み込まれ、電子ブック形式の appendix が生成されます。 `catalog.app` がなく、代わりに `catalogs.app` が 存在すればそれが読み込まれ、EPWING 形式の appendix が生成されます。 (`catalogs.app` も `catalog.app` なければ、エラー になります。)
`-d`
`--debug`
`--verbose`
  デバッグ用のメッセージを、標準エラー出力に出力します。
`-h`
`--help`
  ヘルプメッセージを標準出力に出力して、終了します。
`-n`
`--no-catalog`
  カタログファイル (`catalog` および `catalogs`) を 生成しません。 このオプションは、書籍と appendix を同じディレクトリに重ね合わせる際に 有効です (詳しくは 「appendix と CD-ROM 書籍の重ね合わせ」 を参照のこと)。
`-o ディレクトリ`
`--output-directory ディレクトリ`
  出力先のディレクトリを指定します。 このオプションを省略すると、カレントディレクトリ (`.`) に 出力します。 ディレクトリが存在しなければ、自動的に生成されます。
`-t`
`--test`
  ファイルを出力しません。 入力ファイルを読み込んで、内容のチェックだけを行います。
`-v`
`--version`
  バージョン番号を標準出力に出力して、終了します。

[前へ] [目次]