FreePWING プログラミングドキュメント

[前へ] [次へ] [目次]

# 諸々の細かな注意点

ここでは、前章で触れなかった諸々の細かな注意点をいくつか記しておきます。

## 文字コードに関する注意点

FreePWING では、文字コードに EUC-JP を使用していますが、正確には `honmon` ファイルの中では JIS X 0208 の文字 (全角文字) しか 使用できません。 このため、JIS X 0201 のカタカナ (半角カタカナ) および ASCII の文字 (半角英数字) が与えられると、FreePWING 側で対応する JIS X 0208 の文字 に置き換えられます。

また、JIS X 0212 の文字 (補助漢字) は使用することができず、与えると エラーになります。

## 検索語に関する注意点

検索語に関する注意点は、次の通りです。

- 検索語の長さは最長 255 バイトまでとなります。
  検索語内の文字はすべて JIS X 0208 の文字 (全角文字) に変換されてから 登録されますので、どの文字も一律 2 バイト消費することになります。 したがって、最長で 127 文字ということになります。
- 逆に、検索語は最低でも 1 バイト (1 文字) ないといけません。
  空の文字列は登録できないので注意して下さい。
- 検索語に「　」「’」「−」「・」「‐」という文字が入っていると、 それらは削除した上で登録されます。
  これらの文字だけからなる語は空文字列になってしまいますので、登録 できません。
- 検索語内の英小文字は、大文字に変換してから登録されます。
  また、検索ソフトウェアが検索する際は大文字と小文字は区別しません。 したがって、変換スクリプトでは小文字大文字の区別を意識する必要は ありません。
- 検索語内にカタカナが含まれていた場合、ひらがなに変換した検索語も一緒に 登録されます。
  したがって、カタカナを含んだ語はひらがなでも引けるようになります。 ただし、反対にひらがなをカタカナに変換した検索語は登録されません。
- 同じ検索語は何度でも登録できます。
  逆に間違って重複して登録してしまうと、検索したときに同じエントリが 何個も見つかることになってしまいます。 気をつけましょう。

## 本文に関する注意点

本文の各エントリの冒頭では、以下のように `add_keyword_start()` と `add_keyword_end()` で囲い、囲った部分が検索キーであると いう印を付けるようにすることは既に記しました。

>        ## 読み込んだ見出しを「本文部」に書き込む。
>        if (!$fpwtext->add_keyword_start()
>           || !$fpwtext->add_text($_)
>           || !$fpwtext->add_keyword_end()
>           || !$fpwtext->add_newline()) {
>           die $fpwtext->error_message() . "\n";
>        }

EPWING の検索ソフトウェアによっては、この検索キーのを本文の切れ目を 意味する印として扱っているものもあります。 こうした検索ソフトウェアでは、2 度目の検索キー開始指定子が出現すると、 そこが次のエントリの開始位置であり、今のエントリが終了したのだと判断 して、そこで本文の表示、出力を止めるようになっています。 したがって、このような検索ソフトウェアで正しく書籍の本文が表示、出力 されるように考慮して、検索キーの指定をエントリの冒頭で入れることが推奨 されます。 さもないと、次のエントリ、次の次のエントリ、とどこまでも本文を表示、 出力してしまいます。

逆に、必要があればエントリの途中で検索キーを置いても構いませんが、 むやみに置いてしまうと、エントリの本文の出力がそこで途切れてしまうこと になります。 検索キーの配置は慎重に行って下さい。

[前へ] [次へ] [目次]