diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/japanese/pxbase/README-ja.md |
Initial commit
Diffstat (limited to 'language/japanese/pxbase/README-ja.md')
-rw-r--r-- | language/japanese/pxbase/README-ja.md | 227 |
1 files changed, 227 insertions, 0 deletions
diff --git a/language/japanese/pxbase/README-ja.md b/language/japanese/pxbase/README-ja.md new file mode 100644 index 0000000000..fd3eaf9ad0 --- /dev/null +++ b/language/japanese/pxbase/README-ja.md @@ -0,0 +1,227 @@ +PXbase パッケージバンドル +========================= + +LaTeX: 他の PX パッケージのためのサポートライブラリ + +本バンドルの主な目的は、作者(ZR)の制作する他の pTeX 用パッケージ(名前 +が“PX”で始まる)が依拠するライブラリ機能の提供である。 + +その他に、本バンドルには以下のユーザ・開発者用パッケージが含まれる。 + + * pxbabel パッケージ: Babel の機構に基づく CJK 間のフォント切替 + * upkcat パッケージ: 文字指定による kcatcode 操作 + +### 前提環境 + + * TeX フォーマット: LaTeX + * TeX エンジン: pTeX、upTeX(派生を含む) + * DVI ウェア(DVI 出力時): 不問 + +※upkcat パッケージについては当該の節を参照。 + +### 構成物 + + * `pxbase.sty`: pxbase パッケージ + * `pxbase.def`: サブモジュール(の残骸) + * `pxbabel.sty`: pxbabel パッケージ + * `pxbasenc.def`: サブモジュール + * `pxjsfenc.def`: サブモジュール + * `pxbsjc.def`: pxbase 用の補助ファイル + * `pxbsjc1.def`: pxbase 用の補助ファイル + * `upkcat.sty`: upkcat パッケージ + +※種々の事情により複雑になっている(例えば、`pxbsjc.def` は実際には bxbase +パッケージから読まれている、`pxjsfenc.def` は BXbase/PXbase 内のどの +パッケージからも参照されない、など)が、他のパッケージの動作を確保する +ため敢えて 0.5 版のファイル構成を保っている。 + +### インストール + +TDS 1.1 に準拠するシステムの場合、以下のようにファイルを移動する: + + - `*.sty`, `*.def` → $TEXMF/tex/platex/PXbase + +この後必要に応じて mktexlsr を実行する。 + +### ライセンス + +本パッケージは MIT ライセンスの下で配布される。 + + +pxbase パッケージ ― pTeX 用(旧)基礎ライブラリ +------------------------------------------------ + +他の PX シリーズのパッケージの下請けの役割も果たしていたが、0.9 版において +[bxbase パッケージ]に統合された。今では、単に bxbase を読むだけである。 + +[bxbase パッケージ]: https://www.ctan.org/pkg/bxbase + +### ユーザ向け機能 + +※bxbase の方で述べていないものを挙げる。(FIXME:bxbase に移すべき。) + +※旧版のドキュメントに載っていたのに、ここにも bxbase の方にも載って +いない機能は、非推奨の扱いになったということ。 + + * `\infojenc`: 漢字コードの情報を次の形で端末とログに出力する。 + + Kanji encoding: source=UTF8 internal=SJIS; + + * `\safecaret`: 一部の箇所で TeX エスケープ形式(`^^ab`)の解釈が + 失敗するのを回避する。詳細は「TeX エスケープ形式(`^^ab`)の処理」 + の節を参照。 + +#### utf8x 入力エンコーディングの fasterror 設定 + +ucs パッケージ(バンドル)が提供する「utf8x 入力エンコーディング」では、 +パッケージで未定義の Unicode 文字が入力された場合エラーになる。その時の +エラーメッセージ中に該当の文字の Unicode 名を出力するが、この際に高位 +バイトを含むファイル(テキスト情報をハフマン符号で圧縮したものと思われる) +を用いるので、pTeX では処理に失敗してしまう。そこで本パッケージでは、ucs +パッケージが読み込まれた場合(utf8x が指定された時も含む)に上記の機能を +抑止するオプション `fasterror` を常に有効にする。 + +### TeX エスケープ形式(`^^ab`)の処理 + +現在の pTeX では入力漢字コードが UTF-8 の時に JIS X 0208 に含まれない +文字をエスケープ形式(`^^ab`)の UTF-8 バイト列に変換する。通常はこの +形式は該当のバイト列と等価の解釈をされる。ところがここで `^` の catcode +が本来の値 7 から変更されているとこの処理が失敗してしまう。具体的には +次のような場合が該当する。 + + * Babel の一部の言語(esperanto 等)を使用した場合。 + * verbatim や類似の環境の中。 + +`\safecaret` 命令をプレアンブルで実行した場合、これらの場合でエスケープ +形式の連続する出現をバイト列と解釈するようにする。 + +### 開発者向け機能 + +(使用中の漢字コード系の情報表示) + + * `\bxInternalJaEncoding`:[暗黙文字トークン] 内部漢字コードを表す。 + - `s`: シフトJIS + - `e`: EUC + - `u`: Unicode (upTeX) + + * `\bxInputJaEncoding`:[暗黙文字トークン] 入力 TeX ソースの漢字 + コードを表す。 + - `s`: シフトJIS + - `e`: EUC + - `u`: UTF-8 + - `a`: 自動判定が有効 + + * `\pxUpScale`:[マクロ] 和文の標準フォントに対する和文スケール。 + `\Cjascale` が設定済の場合はその値、それ以外で文書クラスが和文標準 + または jsclasses のものの場合は、当該クラスの既定のスケール値。 + + +pxbabel パッケージ ― Babel の機構に基づく CJK 間のフォント切替 +--------------------------------------------------------------- + +詳細についてはマニュアル `pxbabel.pdf` を参照されたい。 + +upkcat パッケージ ― 文字指定による kcatcode 操作 +------------------------------------------------- + +※ 本パッケージはパッケージ開発者向けのものである。 + +文字を指定して(それが属するブロックの)kcatcode を操作する場合 + + \kcatcode`<文字> + +の形式を使うことになるが、その際にもしその文字の現在の kcatcode が 15 +である場合は文字がバイト列とみなされるので、この形式が使えない。この +パッケージはそのような場合でも使用可能な、kcatcode の参照・変更の命令 +を提供する。なお、文書作成者はこちらではなく [pxcjkcat パッケージ]を +用いるべきである。 + +[pxcjkcat パッケージ]: https://www.ctan.org/pkg/pxcjkcat + +### 前提環境 + + * TeX フォーマット: plain、LaTeX + * TeX エンジン: upTeX(派生を含む) + * DVI ウェア(DVI 出力時): 不問 + +### パッケージ読込 + +plain upTeX の場合: + + \input upkcat.sty + +upLaTeX の場合: + + \usepackage{upkcat} + +### 機能 + + * `\getkcatcode{<文字>}`: `<文字>` の現在の kcatcode の値(15~19) + をマクロ `\thekcatcode` に文字列として返す。 + * `\setkcatcode{<文字>}{<値>}`: `<文字>` の kcatcode の値を `<値>` + に設定する。 + + +更新履歴 +-------- + + * Version 1.1b 〈2017/07/03〉 + - upLaTeX で japanese-otf と併用した場合に対応。 + - バグ修正。 + + * Version 1.1a 〈2017/06/19〉 + - バグ修正。 + + * Version 1.1 〈2017/05/29〉 + - 内容の整理。 + ※バージョンの値は BXbase と合致させて 1.1 版とした。 + - 一部の機能を非推奨にした。 + + * Version 0.5i 〈2017/05/04〉 ― CTAN 公開版 + - 0.5 版から ifuptex と pxcjkcat を削除したもの。 + ※ifptex パッケージバンドルを CTAN に登録するための経過措置。 + + * Version 0.9b 〈2012/08/19〉 + - ifuptex パッケージは「ifptex バンドル」に移動したため削除。 + - pxcjkcat パッケージは専用のバンドルに移動したため削除。 + + * Version 0.5 〈2010/06/15〉 + - pxbase: `\JI`/`\KI` を追加。 + - pxbase: `\dvipdfmxmapline`/`\dvipdfmxmapfont` を追加。 + + * Version 0.4a 〈2010/02/07〉 + - pxcjkcat: upTeX v0.29 における kcatcode のブロック分割の変更に + 対応。それに伴い `ccv1`, `ccv2` オプションを新設。 + - pxcjkcat: `\cjkcategory` の第 1 引数に文字そのものを指定できる + ようにした。 + - pxcjkcat: なぜかモード設定時の「Enclosed CJK Letters and Months」 + (`cjk07`)の kcatcode の設定値が 16 になっていた。upTeX 既定値に + 合わせて 18 に修正した。 + + * Version 0.4 〈2009/07/05〉 + - safe caret 機構のコード(`\safecaret` の実装の核心)を pxbase.def + に移動(BXbase と共通に)。 + - Babel に加えて verbatim でも safe caret 機構が働くようにする。 + ただし「pxbase は単に読み込むだけでは他人のコードを書き換えない」 + という指針があるので、`\safecaret` を実行しないと有効にならない。 + - pxbabel は中で `\safecaret` を呼ぶので、pxbabel を読み込むと safe + caret は自動的に有効になる。 + - pxbabel でエンコーディングを `J20` 等に変えた場合に OTF パッケージ + の `\CID` が動かなくなるのを修正。 + + * Version 0.3 〈2008/04/06〉 + - pxbabel に safe caret 機構を追加。 + + * Version 0.2b 〈2008/03/28〉 + pxbabel に `\UTF` の切替を追加。 + + * Version 0.2a 〈2008/03/18〉 + pxbabel, pxbase のバグ取り。 + pxbabel の説明書をまだ書いていないことに気づいた ;-) 慌てて作成。 + + * Version 0.2 〈2008/03/14〉 + 最初の公開版。 + +------------------------------------------- +Takayuki YATO (aka. "ZR") +https://github.com/zr-tex8r |