summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/platex/pxbase
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2012-12-11 02:05:11 +0000
committerNorbert Preining <preining@logic.at>2012-12-11 02:05:11 +0000
commit427f60468268e043c941e28ab3196807ef1f9724 (patch)
treef2c4757ba743d75614cf962af4e195aefb577c76 /Master/texmf-dist/doc/platex/pxbase
parent49b2ae38209e586fb12ce3664f92b24ce29d7162 (diff)
new platex package pxbase (11Dec)
git-svn-id: svn://tug.org/texlive/trunk@28493 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/platex/pxbase')
-rw-r--r--Master/texmf-dist/doc/platex/pxbase/LICENSE24
-rw-r--r--Master/texmf-dist/doc/platex/pxbase/README357
-rw-r--r--Master/texmf-dist/doc/platex/pxbase/README-pxbabel112
-rw-r--r--Master/texmf-dist/doc/platex/pxbase/README-pxcjkcat501
4 files changed, 994 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/platex/pxbase/LICENSE b/Master/texmf-dist/doc/platex/pxbase/LICENSE
new file mode 100644
index 00000000000..15954156886
--- /dev/null
+++ b/Master/texmf-dist/doc/platex/pxbase/LICENSE
@@ -0,0 +1,24 @@
+$BK\%=%U%H%&%'%"$O(B MIT $B%i%$%;%s%9$N2<$GG[I[$5$l$^$9!#Cx:n8"$O:n<T$G$k!V(BZR$B!W$K(B
+$BB0$7$^$9!#$^$?K\%=%U%H%&%'%"$OL5J]>Z$G$9!#(B
+
+The MIT License
+
+Copyright (c) 2009 ZR
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/Master/texmf-dist/doc/platex/pxbase/README b/Master/texmf-dist/doc/platex/pxbase/README
new file mode 100644
index 00000000000..8fa08efd5c9
--- /dev/null
+++ b/Master/texmf-dist/doc/platex/pxbase/README
@@ -0,0 +1,357 @@
+==================================================
+== PXbase バンドル v0.5 <2010/06/15> ==
+== by「ZR」(八登 崇之/Takayuki YATO)==
+== <zrbabbler@yahoo.co.jp> ==
+==================================================
+(This file is encoded in UTF-8,)
+
+pLaTeX2e / upLaTeX2e における文書およびマクロパッケージの作成を支援する
+基本的な機能を提供する。文書作成の為の機能には、具体的には Unicode の
+コード値による文字入力、 PDF の文書情報に日本語を使用する設定の自動化、
+upLaTeX の和文文字カテゴリ(kcatcode)の変更および CJK 間のフォント切替
+の支援等が含まれる。
+
+ - ifuptex パッケージ: upTeX 判定
+ - pxbase パッケージ: 基礎ライブラリ
+ - pxcjkcat パッケージ: 和文文字カテゴリ操作
+ - pxbabel パッケージ: CJK 間のフォント切替
+ - upkcat パッケージ: 文字指定の kcatcode 操作
+ - pxbasenc パッケージ: 文字コード関係ライブラリ(試作)
+
+※ 対応環境は各々のパッケージの解説を参照。
+
+※ pxbabel の解説は README-pxbabel を参照。
+
+※ pxcjkcat の解説は README-pxcjkcat を参照。
+
+■ 本ソフトウェアの一次配布サイト(作者のサイト)
+
+ En toi Pythmeni tes TeXnopoleos ~電脳世界の奥底にて~
+ http://zrbabbler.hp.infoseek.co.jp/
+
+ ※ 以下のページに一部機能の使用例を紹介した。
+ 「Unicode による文字入力」
+ http://zrbabbler.hp.infoseek.co.jp/unichar.html
+ 「upLaTeX を使おう」
+ http://zrbabbler.hp.infoseek.co.jp/uplatex.html
+ 「PXbase パッケージ」
+ http://zrbabbler.hp.infoseek.co.jp/pxbase.html
+
+■ インストール
+
+ TDS 1.1 に従ったシステムでは、各ファイルを次の場所に移動する。
+ ・*.sty, *.def → $TEXMF/tex/platex/PXbase/
+ (残りのファイルは不要)
+
+ W32TeX を C:\usr\local にインストールした場合の例。
+ ・*.sty, *.def → C:\usr\local\share\texmf-local\tex\platex\PXbase
+
+
+-------------------------------------------
+ pxbase パッケージ (v0.5) -- 基礎ライブラリ
+-------------------------------------------
+
+pLaTeX/upLaTeX で和文を扱う上で必要になる基本的な機能を提供する。また
+他の PX シリーズのパッケージの下請けの役割も果たす。
+
+■ 対応環境
+
+ pLaTeX2e / upLaTeX2e
+
+■ 読込
+
+ \usepackage で読み込む。オプションはない。
+
+■ 機能
+
+ 使用している (u)pTeX の漢字コード設定の情報表示。
+
+ \infojenc : 漢字コードの情報を次の形で端末とログに出力する。
+ Kanji encoding: source=UTF8 internal=SJIS;
+
+ これ以降に述べる機能は bxbase パッケージと共通である。
+
+ DVI special 出力の命令。
+
+ \usejapanesepdfstring
+ pLaTeX と dvipdfmx の組み合わせで日本語の文書情報をもつ PDF を作
+ る為に必要な pdf:tounicode special を出力する。
+ pdf:tounicode 90ms-RKSJ-UCS2 (内部漢字コードが Shift_JIS)
+ pdf:tounicode EUC-UCS2 (内部漢字コードが EUC-JP)
+ この special は DVI のなるべく先頭に近い位置に出力する。
+ (新しい版の hyperref への対策。)
+
+ \recordpapersize
+ 次の形の papersize special 命令を DVI の先頭に出力する。
+ papersize=<幅>,<高さ>
+ (幅と高さは現在の \paperwidth と \paperheight の値。)
+
+ \dvipdfmxmapline{<テキスト>}
+ dvipdfmx のマップ指定を文書中で行う。
+ ※次の形の papersize special 命令を DVI の先頭に出力する。
+ pdf:mapline <テキスト>
+
+ \dvipdfmxmapfile{<ファイル名>}
+ dvipdfmx のマップファイル指定を文書中で行う。
+ ※次の形の papersize special 命令を DVI の先頭に出力する。
+ pdf:mapfile <ファイル名>
+
+ 符号値による文字入力のための命令。
+
+ \Ux{<コード値>,...}
+ \UI{<コード値>,...}
+ Unicode コード値による入力を行う。\Ux は欧文用、\UI は和文用(I は
+ Ideographic の意味)。コード値は以下の形式で表す。コンマで区切って
+ 複数文字入力できる。
+ - <16進数>: A72C, 02000B, 1bd 等。
+ - +<10進数>: +254, +0937 等。
+ - '<8進数>: '376, '1651 等。
+ Unicode 文字の出力には次の順番で利用可能な最初の機能を用いる。(\UI
+ の場合 3) を飛ばす。)
+ 1) zxjatype パッケージ。この場合、その機構に従って出力される。\UI
+ は必ず和文フォントで出力し、\Ux は和文/欧文切替の対象となる。
+ 2) XeTeX の Unicode 出力。
+ 3) [\Ux のみ] bxums パッケージ。
+ 4) upTeX の和文 Unicode 出力。
+ 5) UTF/OTF/pxotf パッケージ。
+ 6) ums/bxsuika パッケージ。
+ どれも使えない場合は「16進表現による代替表現」になる。
+
+ \AJ{<コード値>,...}
+ Adobe-Japan1 のコード値による入力を行う。コード値は 10 進数で指定
+ する。出力には次の順番で利用可能な最初の機能を用いる。
+ 1) zxotf パッケージ。
+ 2) UTF/OTF/pxotf パッケージ。
+ どれも使えない場合は代替表現になる。
+
+ \JI{<コード値>,...}
+ いわゆる「JIS コード」(JIS X 0208 の GL 表現)のコード値による入力
+ を行う。コード値指定の方法は \Ux と同じ。出力には (u)pTeX の JIS
+ コード和文出力の機能を使う。使えない場合は代替表現になる。
+
+ \KI{<コード値>,...}
+ いわゆる「区点コード」のコード値による入力を行う。コード値指定は
+ 以下のいずれかの方法で指定する。
+ - RRCC : RR は区番号、CC は点番号を 10 進 2 桁で表したもの。
+ - PRRCC : P は面番号。JIS X 0213 のための指定。
+ 出力には (u)pTeX の JIS コード和文出力の機能を使う。使えない場合は
+ 代替表現になる。JIS X 0213 の文字を出力したい場合は、現在の和文
+ フォントのエンコーディングが JIS X 0213 に対応するものである必要が
+ ある。さらに、第 2 面の文字を出力する場合には pTeX の内部漢字コード
+ が sjis でなければならない。
+
+ \bxUx / \bxUI / \bxAJ / \bxJI / \bxKI
+ \Ux 等は非常に短い名前なので他のパッケージと衝突する恐れがあり、
+ そこでこのパッケージでは既に同名の命令がある場合は上書きしない
+ ようにしている。\bxUx 等はそれぞれ \Ux 等と同じで、先のような場合
+ にも常に使える。
+
+ Bwbel 関係の命令。
+
+ \bxcaptionlanguage{<言語名>}
+ Babel では、通常言語が切り替わるとキャプションや日付の文字列が切り
+ 替わる。この命令を実行すると、文字列は指定された言語のもので固定
+ され、Babel の言語切替の命令に追随しなくなる。この命令自体はプレ
+ アンブル中で何回でも使用できて最後のものが有効になる。引数には有効
+ な言語オプションの名前の他に以下のものが指定できる。
+ - main : 基底言語、すなわち Babel で最後に読み込まれた言語だが
+ 次に述べる \bxmainlanguage で変更可能。
+ - default : 文書クラスで指定されたものをそのまま用いる。日本語
+ の文書クラスで Babel を用いる時に便利である。
+ この命令の意義については後の「キャプション文字列の切替機能について」
+ の節を参照。
+
+ \bxmainlanguage{<言語名>}
+ 基底言語、すなわち \begin{document} の直後において有効となる言語を
+ 設定する。通常は Babel において最後に読み込まれた言語オプションが
+ 基底言語になる。
+
+ その他の命令。
+
+ \safecaret
+ 一部の箇所で TeX エスケープ形式(^^ab)の解釈が失敗するのを回避する。
+ 詳細は「TeX エスケープ形式(^^ab)の処理」の節を参照。
+
+■ utf8x 入力エンコーディングの fasterror 設定
+
+ unicode パッケージ(バンドル)が提供する utf8x 入力エンコーディングで
+ は、パッケージで未定義の Unicode 文字が入力された場合エラーになる。
+ その時のエラーメッセージ中に該当の文字の Unicode 名を出力するが、この
+ 際に高位バイトを含むファイル(テキスト情報をハフマン符号で圧縮したもの
+ と思われる)を用いるので、pTeX では処理に失敗する。そこで本パッケージ
+ では、ucs パッケージが読み込まれた場合には上記の機能を抑止するオプ
+ ションである fasterror を常に有効にする。(utf8x が指定された時に ucs
+ が未読込の場合は自動的に読み込まれる。)
+
+■ TeX エスケープ形式(^^ab)の処理
+
+ ptexenc 対応の pTeX では入力漢字コードが UTF-8 の時に JIS X 0208 に
+ 含まれない文字をエスケープ形式(^^ab)の UTF-8 バイト列に変換する。通常
+ はこの形式は該当のバイト列と等価の解釈をされる。ところがここで <^> の
+ catcode が本来の値 6 から変更されているとこの処理が失敗してしまう。
+ 具体的には次のような場合が該当する。
+ - Babel の一部の言語(esperanto 等)を使用した場合
+ - verbatim や類似の環境の中
+ \safecaret 命令をプレアンブルで実行した場合、これらの場合でエスケープ
+ 形式の連続する出現をバイト列と解釈するようにする。
+
+■ キャプション文字列の切替機能について
+
+ Babel の機能の 1 つとして、言語の切替に伴って、キャプションの文字列
+ (「参考文献」や「図」等)および日付の書式をその言語用のものに切り替え
+ るというものがある。これにより、ある言語(例えばスロベニア語)の為の
+ 文書クラスがなくても英語用のクラスと Babel の言語切替でスロベニア語
+ のキャプションの文書が作成できる(レイアウトがその言語の使用圏で許容
+ されるかの問題は残るが)。だがこの目的には、プレアンブルでキャプション
+ 言語を 1 回指定できればよく、文書途中での言語切替にまでキャプション
+ が追随する利点はあまりなく、場合によっては弊害があると思われる。この
+ ような場合は
+ \bxcaptionlanguage{main}
+ を実行すれば、キャプションは基底言語(\bxmainlanguage の説明参照)で
+ 固定され以後は変更されない。また
+ \bxcaptionlanguage{spanish}
+ のように直接に言語名を指定することもできる。
+
+ 日本語の場合はもっと特殊な事情がある。日本語のレイアウトは欧米の言語
+ のものとは大きく異なるので、日本語の文書を作成する場合には日本語用の
+ 文書クラスが用いられるのが普通であり、そこでは当然キャプションは既に
+ 日本語になっている。このような場合は
+ \bxcaptionlanguage{default}
+ を実行すれば、キャプションは文書クラスで設定されたものに固定され、
+ 以後は変更されない。
+
+■ 開発者向け機能
+
+ 使用中の漢字コード系の情報表示。
+
+ \pxInternalJEnc : [文字トークンへの \let] 内部漢字コードを表す。
+ - s : シフトJIS
+ - e : EUC
+ - u : Unicode (upTeX)
+
+ \pxSourceJEnc : [文字トークンへの \let] 入力 TeX ソースの漢字コード
+ を表す。
+ - s : シフトJIS
+ - e : EUC
+ - u : UTF-8
+
+ \pxDocClassType : [整数定数] 使用中の文書クラスの種別。
+ - 1 : pLaTeX2e/upLaTeX2e 標準文書クラス
+ - 2 : 奥村氏製作の新標準文書クラス(jsclasses)
+ - 0 : 上記のもの以外
+
+ \pxUpScale : [マクロ] 和文の標準のフォントのスケール。\pxDocClassType
+ により決まる: \pxDocClassType が 1 なら 0.962216、2 なら 0.92469、
+ 0 なら 1。
+
+ 残りの機能は bxbase パッケージと共通である。ここでは省略する。
+
+
+-----------------------------------------
+ ifuptex パッケージ (v0.2) -- upTeX 判定
+-----------------------------------------
+
+※ 本パッケージはマクロパッケージ開発者向けのものである。
+
+現在実行中の TeX が upTeX であるかを判定する。
+
+■ 対応環境
+
+ plain TeX / LaTeX2e (和文・欧文共)
+
+■ 読込
+
+ plain TeX の場合:
+ \input ifuptex.sty
+ LaTeX2e の場合:
+ \usepackage{ifuptex}
+
+■ 機能
+
+ \ifupTeX [if-トークン]
+ upTeX を使っているか。
+ \ifnativeupTeX [if-トークン]
+ upTeX を内部文字コードが Unicode の状態で使っているか。
+ \RequireupTeX
+ upTeX を使っている場合は何もしない。そうでない場合はエラーを出す。
+ \RequirenativeupTeX
+ upTeX を内部文字コードが Unicode の状態で使っている場合は何も
+ しない。そうでない場合はエラーを出す。
+
+
+-------------------------------------------------------
+ upkcat パッケージ (v0.2) -- 文字指定の kcatcode 操作
+-------------------------------------------------------
+
+※ 本パッケージはマクロパッケージ開発者向けのものである。
+
+文字を指定して(属するブロックの) kcatcode を操作する場合
+ \kcatcode`<文字>
+の形式を使うことになるが、その際にもしその文字の現在の kcatcode が 15
+である場合は文字がバイト列とみなされるので、この形式が使えない。この
+パッケージはそのような場合でも使用可能な、kcatcode の参照・変更の命令
+を提供する。なお、文書作成者はこちらではなく pxcjkcat パッケージの機能を
+使うべきである。
+
+■ 対応環境
+
+ plain upTeX / upLaTeX2e
+
+■ 読込
+
+ plain upTeX の場合:
+ \input upkcat.sty
+ LaTeX2e の場合:
+ \usepackage{upkcat}
+
+■ 機能
+
+ \getkcatcode{<文字>}
+ <文字> の現在の kcatcode の値(15~19)をマクロ \thekcatcode に(文字
+ 列として)返す。
+ \setkcatcode{<文字>}{<値>}
+ <文字> の kcatcode の値を <値> にする。
+
+
+----------------------------------------
+
+■ 更新履歴
+
+ 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>
+ 最初の公開版。
+
+# EOF
diff --git a/Master/texmf-dist/doc/platex/pxbase/README-pxbabel b/Master/texmf-dist/doc/platex/pxbase/README-pxbabel
new file mode 100644
index 00000000000..84ff3b0c9d6
--- /dev/null
+++ b/Master/texmf-dist/doc/platex/pxbase/README-pxbabel
@@ -0,0 +1,112 @@
+==================================================
+== PXbase バンドル v0.5 <2010/06/15> ==
+== by「ZR」(八登 崇之/Takayuki YATO)==
+== <zrbabbler@yahoo.co.jp> ==
+==================================================
+(This file is encoded in UTF-8,)
+
+----------------------------------------------------
+ pxbabel パッケージ (v0.4) -- CJK 間のフォント切替
+----------------------------------------------------
+
+■ 対応環境
+
+ pLaTeX (ptexenc 拡張版) / upLaTeX2e
+
+ pLaTeX の場合は OTF パッケージが必要。
+
+■ 読込
+
+ \usepackage[<オプション>]{pxbabel}
+
+ オプションは以下の通り。
+
+ japanese=<言語名> ; korean=<言語名> ;
+ schinese=<言語名> ; tchinese=<言語名>
+ 各々の言語に対して実際に使用する Babel の言語オプションの名前を
+ 指定する。詳しくは「機能」の節を参照。
+
+ main=<言語名>
+ 基底言語、すなわち文書開始時に有効である言語を、言語オプションの
+ 名前(言語識別子でない)で指定する。bxbase/pxbase パッケージの
+ \bxmainlanguage を呼び出している。
+
+ noswitchcaption (既定で有効)
+ Babel におけるキャプションや日付の文字列の切替機能を抑止する。
+ このオプションがあると、bxbase/pxbase パッケージの
+ \bxcaptionlanguage{default}
+ が実行され、キャプションは文書クラスで設定されたもののままに
+ なり、言語切替に追随して変更されなくなる。ただし、文書作成者が
+ \bxcaptionlanguage を実行していた場合はそちらが優先される。
+ この機能の詳細については pxbase パッケージの説明書を参照。
+
+ switchcaption
+ Babel におけるキャプションや日付の文字列の切替機能を保持する。
+ noswitchcaption の否定。
+
+ switchfont (既定で有効)
+ このパッケージが提供する、CJK 言語でフォントを切り替える機能を
+ 有効にする。
+
+ noswitchfont
+ このパッケージが提供する、CJK 言語でフォントを切り替える機能を
+ 無効にする。switchfont の否定。
+
+■ 機能 (upLaTeX において)
+
+ upTeX は標準で、日本語・中国語(繁体・簡体)・韓国語(以下これらを CJK
+ 言語と総称する)の TeX フォント(和文 TFM)を用意している。本パッケージ
+ は Babel において CJK 言語の切替処理(\extras...)の中に、フォントの
+ 切替を追加し、言語の選択に応じて適切なフォントが選ばれるようにする。
+ 言語に対する Babel の言語オプションの名前は変わりうるので、その名前
+ をパッケージ読込時に指定できるようにした。また、ある CJK 言語の為の
+ オプションが読み込まれていない時は、フォントの切替のみをする簡易の
+ 言語オプションをその場で生成する。
+
+ 言語オプションの名前は \usepackage のオプションの中で
+ <言語識別子>=<言語オプション名>
+ の形式で指定する。ここで <言語識別子> は japanese(日本語), korean
+ (韓国語), schinese(簡体字中国語), tchinese(繁体字中国語) のいずれか
+ で、<言語オプション名> に Babel の言語オプションの名前を指定する。
+ ある CJK 言語に対して指定を省略した場合は、言語識別子と同じ名前が
+ 言語オプション名となる。指定された言語オプションが存在する場合には
+ その切替処理の中にフォント切替が追加される。存在しない場合は、指定
+ された名前の言語オプションがその場で生成され、それは Babel で読み込
+ まれた他の言語と同じように使用できる。
+
+■ 機能 (pLaTeX において)
+
+ OTF パッケージの multi オプションは pLaTeX において韓国語・中国語を
+ 扱うためのもので、これを使うと \UTFK/\UTFC/\UTFT で韓国語/中国語
+ (簡体)/中国語(繁体)のフォントを用いて文字が出力される(これらの命令
+ の引数は \UTF と同じで Unicode 値 16 進)。
+
+ pLaTeX における本パッケージの動作は次のようである。まず、upLaTeX の
+ 場合と同じように CJK 言語のための Babel 言語オプションを生成する。
+ その上で、CJK 言語に切り替わった場合には、\UTF の動作を「本来の \UTF」
+ /\UTFK/\UTFC/\UTFT に切り替える。この機能は単独ではあまり有用とは
+ いえないが、bxutf8 入力エンコーディング(BXbase バンドル)と併用して CJK
+ 言語の UTF-8 直接入力を行う時に有用となる。すなわち直接入力された CJK
+ 文字は \UTF に変換されるので、結果的に upLaTeX の時と同じように、Babel
+ で切り替えた言語用のフォントで出力することが可能となる。
+
+ ※ ただし、この機構には、「JIS X 0208 にある文字はそもそも \UTF に変換
+ されずに直接日本語フォントで出力される」という欠点をもつ。これを解決
+ するには PXfltsrc バンドル等の機能を用いて文書にテキスト変換フィルタ
+ を適用されるという処理が必要になる。
+
+■ 開発者向け機能
+
+ \pxLanguageName{<言語識別子>}
+ その言語に対する言語オプションの生成。
+
+ \pxDeclareBasicCJKEncoding
+ \pxDeclareBasicCJKShape
+ \pxDeclareBasicCJKFamily
+ CJK 言語用の NFSS のフォント定義の命令。
+
+■ 更新履歴
+
+ README ファイルを参照。
+
+# EOF
diff --git a/Master/texmf-dist/doc/platex/pxbase/README-pxcjkcat b/Master/texmf-dist/doc/platex/pxbase/README-pxcjkcat
new file mode 100644
index 00000000000..b030fbebc60
--- /dev/null
+++ b/Master/texmf-dist/doc/platex/pxbase/README-pxcjkcat
@@ -0,0 +1,501 @@
+==================================================
+== PXbase バンドル v0.5 <2010/06/15> ==
+== by「ZR」(八登 崇之/Takayuki YATO)==
+== <zrbabbler@yahoo.co.jp> ==
+==================================================
+(This file is encoded in UTF-8,)
+
+-----------------------------------------------------
+ pxcjkcat パッケージ (v0.4a) -- 和文文字カテゴリ操作
+-----------------------------------------------------
+
+■ 対応環境
+
+ upLaTeX2e (v0.11 以降)
+
+■ 読込
+
+ \usepackage[<オプション>]{pxcjkcat}
+
+ オプションとして以下のものが指定できる。
+
+ ccv1
+ 「モード CCV」を 1 (upTeX v0.11~0.28 と互換)とする。
+ ccv2
+ 「モード CCV」を 2 (upTeX v0.29 以降と互換)とする。
+ ※「モード CCV」については後で詳述する。
+ \cjkcategorymode で有効なモード値
+ kcatcode がモードに従って設定される。これ以外の場合は、パッケージ
+ 読込時の kcatcode の変更はない。
+
+■ 機能
+
+ \cjkcategory{<ブロック>,...}{<カテゴリ>}
+ <ブロック> で表される文字ブロック(複数指定が可能)の kcatcode を
+ <カテゴリ> に変更する。<ブロック> は「ブロック ID (後述)」または
+ 「ASCII 以外の文字」で指定され、後者の場合はその文字の属するブロック
+ を指す。<カテゴリ> は以下に示す様に「カテゴリ ID」または数値で指定
+ する。この変更は局所的(グルーピングに従う)である。
+ - noncjk (15): 欧文扱い
+ - kanji [または han] (16): 漢字扱い
+ - kana (17): 仮名扱い
+ - cjk (18): 「その他の和文」扱い
+ - hangul (19): ハングル扱い
+ ブロック ID の一覧および各々のカテゴリの意味については後掲。
+
+ \cjkcategorymode{<モード>}
+ 全てのブロックの kcatcode の一括設定を行う。モードには以下のものが
+ ある。後に揚げるものほど noncjk であるブロックが増える。各モードで
+ の具体的な設定値については「各モードでの kcatcode の値」の節を参照。
+ - forcecjk : upTeX の既定の設定と同じ。(ただし「文字分類バージョン」
+ による小さい差異がある。詳細については「文字分類バージョン」の節を
+ 参照。) ASCII 文字のみ noncjk で他のブロックは全て和文扱い(noncjk
+ 以外; 具体的な値は後述)。和文フォントの中の Unicode 値の割当がある
+ 全ての文字を和文文字として直接用いることができる。
+ - prefercjk : 和文扱いのブロックとして、forcecjk のものに加えて、
+ Adobe の定める CJK 文字集合(Adobe-Japan1, Adobe-GB1, Adobe-CNS1,
+ Adobe-Korea1)の何れかと共通部分をもつ文字ブロックのみを加えて
+ (具体的な値は forcecjk と同じ)、残りを noncjk に設定する。
+ - prefercjkvar : prefercjk とほぼ同じで、違いは grek, grek1, cyrl
+ の 3 つ(結果的にギリシャ・キリル文字の全て)が noncjk であること。
+ - prefernoncjk : 以下に掲げる「必要最低限」のブロックを除き、全てを
+ noncjk にする。
+ * kanji: 漢字・部首・注音字母: hani, haniA, haniB, haniC, hani1,
+ hani2, cjk01, cjk02, cjk03, cjk05, cjk06, bopo, bopo1.
+ * kana: ひらがな・カタカナ: hira, kana, kana1.
+ * cjk: CJK 記号の一部・全角/半角互換形・彝文字: cjk04, cjk08,
+ cjk07, cjk09, cjk10, cjk11, cjk12, cjk13, sym15, yiii, yiii1.
+ * hangul: ハングル完成形・ハングル字母: hang, hang1, hang2, hangA,
+ hangB.
+ ※モード CCV が 2 の場合、cjk12 の再分割の中の cjk1b, cjk1c は
+ kana に変更される。
+
+■ kcatcode の値の意味
+
+ upTeX (v0.11~) では Unicode 文字を複数の文字ブロックに分類し、各文字
+ ブロック毎に kcatcode と呼ばれるパラメタを持たせている。(文字ブロック
+ の分類は Unicode 文字ブロックとほぼ一致する。) これはそのブロックに
+ 属する文字が入力ソース中に現れた時の upTeX の字句解析の動作を規定する。
+ なお以下では、入力文字コードが UTF-8 であると仮定する。また文字が属する
+ ブロックの kcatcode のことを単にその文字の kcatcode と呼ぶ。
+
+ (1) ある文字の kcatcode が 15 (noncjk) である場合、その文字は和文文字
+ として扱われず、UTF-8 表現のバイト列とみなされる。字句解析の結果は
+ それらのバイトの catcode の値に依存する。例えば、文字 α(U+03B1) の
+ kcatcode が 15 の状態で α がソースに現れたら、欧文 TeX において
+ ^^8e^^b1 というバイト列が現れた時と同じ結果になる。ここで inputenc
+ で utf8 (または utf8x) を指定してあれば、inputenc における「文字 α」
+ の処理に回るはずである。
+
+ (2) ある文字の kcatcode が 15 以外である場合、その文字は 1 つの文字と
+ して扱われ、次の catcode をもつ文字と同様に字句解析される。
+ - kcatcode が 18 (cjk) → catcode 12 と同様
+ - kcatcode が 16, 17, 19 → catcode 11 と同様
+ そして、コントロールシーケンスの一部でないと判断された場合は、それ
+ は指定された kcatcode を保持する和文文字トークンとなる。
+
+ (3) kcatcode が 16, 17, 18 の和文文字トークンの直後の改行文字は無視
+ される(pTeX の和文と同じ)。kcatcode が 19 の和文文字トークンの直後
+ の改行文字は空白トークンとなる(欧文と同じ)。これはハングルかななる
+ 文書の組版に好都合だからである。
+
+ 補足:
+ - ASCII 文字は常に欧文 TeX と同じ扱いになる。従って、ASCII ブロック
+ (latn) の kcatcode 指定は意味をもたない。
+ - kcatcode を表す upTeX のプリミティブは \kcatcode<数値> で、これは
+ その数値を符号位置とする文字が属するブロックの kcatcode を指し示す
+ レジスタを表す。
+
+■ 文字分類バージョン
+
+ upTeX での文字ブロックの分割(および各ブロックの kcatcode 値の既定値)は
+ 改版時に変更され、これが互換性の問題を起こす可能性がある。
+ a. Unicode の改版での文字ブロックの追加に追随する為の変更。
+ b. 複数の文字種が混在する 1 つの Unicode 文字ブロックに対し、その中
+ で文字種により処理を変えたいとする要望に応えるための Unicode 文字
+ ブロックの再分割。例えば v0.29 の改版では Halfwidth and Fullwidth
+ Forms (ブロックID cjk12)が「再分割」されている。
+
+ 本パッケージでは、ブロックの分割の互換性について以下の方針を採る。
+ - a のタイプの変更は「ある版の upTeX で未対応の文字ブロックの文字は
+ その版では決して使われない」ことを仮定すれば互換性を損なうことが
+ ない。従って、これに対しては特に対策を行わない。
+ - b のタイプの変更(「再分割」と呼ぶ)は、既存のソースの動作を変更
+ することになるので、これに対しては互換性の為の対策を行う。
+ - ブロック ID を用いたブロック指定については、その対象文字集合が
+ upTeX の版により変わらないようにする。
+ - モード指定(\cjkcategorymode)を行う場合は、それによる kcatcode の
+ 設定値が upTeX の版により変わらないようにする。(ただし、その版に
+ 対応する Unicode の版で追加された文字を除く。)
+ - パッケージを読み込むだけでは kcatcode への変更は一切行われない。
+ 従って、この場合の設定値は当然 upTeX の版に依存する。
+
+ 具体的な対応をこれから述べる。まず、文字ブロックの「再分割」の違いを
+ 「文字分類バージョン(CCV;Character Category Version)」と呼ぶことに
+ する。現状では次のものが存在する。
+
+ CCV 1 : upTeX v0.11 での定義
+ CCV 2 : upTeX v0.29 での定義
+
+ その上で、分割の変更について、以下のように対応する。ここでは CCV 2 に
+ おける cjk12 の再分割を例にする。
+
+ - cjk12 の再分割に関しては、再分割後のブロックに新たに ID を与える
+ (cjk1a, cjk1b, cjk1c)。cjk12 も引き続き使用可能である。CCV が 2
+ 以降の upTeX で cjk12 の kcatcode を変更する場合には、内部では
+ cjk1a~cjk1c を同時に変更する動作を行う。当然ながら CCV 1 の upTeX
+ では cjk1a~cjk1c の指定は使えない。
+
+ CCV 2 では分割が変更されただけでなく、cjk1b と cjk1c の kcatcode の
+ 既定値が 18(cjk) から 17(kana) に変更される。本パッケージでのモード
+ 設定における kcatcode の設定値は upTeX の既定値を基礎としていて、特に
+ forcecjk は既定値と全く同じ設定としている。既定値の変更については以下
+ のように対応する。
+
+ - パッケージオプションにおいて、「モード設定の際の設定値の基礎とする
+ CCV」(これを「モード CCV」と呼ぶ)を指定できるようにする。すなわち
+ 'ccvN' (N=1~2) でモード CCV が N になる。
+ - forcecjk の設定値は CCV が「モード CCV」である upTeX の既定値と
+ 一致する。それ以外のモードの設定値もそれに応じて変わる。
+ - モード CCV の既定値は 1 とする。従って、*モード設定を使用した場合*
+ は、kcatcode の設定値は用いる upTeX の CCV に依存しない。
+ - モード設定オプション無しでパッケージを読み込んだだけの場合は、
+ kcatcode の設定は何も変更されない。従ってこの場合の設定値は用いる
+ upTeX の CCV に依存する。
+
+ 例として次の場合を考える。
+ [upTeX の CCV が 1]
+ (1a) \usepackage{pxcjkcat}
+ (1b) \usepackage[forcecjk]{pxcjkcat}
+ (1c) \usepackage[ccv1,forcecjk]{pxcjkcat}
+ [upTeX の CCV が 2]
+ (2a) \usepackage{pxcjkcat}
+ (2b) \usepackage[forcecjk]{pxcjkcat}
+ (2c) \usepackage[ccv1,forcecjk]{pxcjkcat}
+ (2d) \usepackage[ccv2,forcecjk]{pxcjkcat}
+ (1a)(1b)(1c)(2b)(2c) は CCV 1 の既定値、(2a)(2d) は CCV 2 の既定値と
+ 同じ値に設定される。
+
+ 最後の注意点として、\cjkcategory でブロック指定に「文字」を使った場合
+ は単純にその文字の属する文字ブロックとみなされ、その動作は用いる upTeX
+ の CCV に依存し、モード CCV とは無関係である。
+
+■ Unicode ブロック ID 一覧
+
+ 文字分類バージョン(CCV) 1 でのブロック。ただし [2] の注釈を付したもの
+ は CCV 2 の upTeX で追加されたブロックである(先述の通り、Unicode 文字
+ ブロック追加による変更に関しては CCV は関知しない)。CCV 1 の upTeX で
+ は、例えば nkoo の範囲は実際には U+07C0~08FF となる。
+
+ ID Unicode 範囲 名称
+ latn 0000 .. 007F Basic Latin
+ latn1 0080 .. 00FF Latin-1 Supplement
+ latnA 0100 .. 017F Latin Extended-A
+ latnB 0180 .. 024F Latin Extended-B
+ latn2 0250 .. 02AF IPA Extensions
+ sym01 02B0 .. 02FF Spacing Modifier Letters
+ sym02 0300 .. 036F Combining Diacritical Marks
+ grek 0370 .. 03FF Greek and Coptic
+ cyrl 0400 .. 04FF Cyrillic
+ cyrl1 0500 .. 052F Cyrillic Supplement
+ armn 0530 .. 058F Armenian
+ hebr 0590 .. 05FF Hebrew
+ arab 0600 .. 06FF Arabic
+ syrc 0700 .. 074F Syriac
+ arab1 0750 .. 077F Arabic Supplement
+ thaa 0780 .. 07BF Thaana
+ nkoo 07C0 .. 07FF NKo
+ samr [2] 0800 .. 08FF Samaritan
+ deva 0900 .. 097F Devanagari
+ beng 0980 .. 09FF Bengali
+ guru 0A00 .. 0A7F Gurmukhi
+ gujr 0A80 .. 0AFF Gujarati
+ orya 0B00 .. 0B7F Oriya
+ taml 0B80 .. 0BFF Tamil
+ telu 0C00 .. 0C7F Telugu
+ knda 0C80 .. 0CFF Kannada
+ mlym 0D00 .. 0D7F Malayalam
+ sinh 0D80 .. 0DFF Sinhala
+ thai 0E00 .. 0E7F Thai
+ laoo 0E80 .. 0EFF Lao
+ tibt 0F00 .. 0FFF Tibetan
+ mymr 1000 .. 109F Myanmar
+ geor 10A0 .. 10FF Georgian
+ hang1 1100 .. 11FF Hangul Jamo
+ ethi 1200 .. 137F Ethiopic
+ ethi1 1380 .. 139F Ethiopic Supplement
+ cher 13A0 .. 13FF Cherokee
+ cans 1400 .. 167F Unified Canadian Aboriginal Syllabics
+ ogam 1680 .. 169F Ogham
+ runr 16A0 .. 16FF Runic
+ tglg 1700 .. 171F Tagalog
+ hano 1720 .. 173F Hanunoo
+ buhd 1740 .. 175F Buhid
+ tagb 1760 .. 177F Tagbanwa
+ khmr 1780 .. 17FF Khmer
+ mong 1800 .. 187F Mongolian
+ cans1 [2] 1880 .. 18FF Unified Canadian Aboriginal Syllabics
+ Extended
+ limb 1900 .. 194F Limbu
+ tale 1950 .. 197F Tai Le
+ talu 1980 .. 19DF New Tai Lue
+ khmr1 19E0 .. 19FF Khmer Symbols
+ bugi 1A00 .. 1A1F Buginese
+ lana [2] 1A20 .. 1AFF Tai Tham
+ bali 1B00 .. 1B7F Balinese
+ sund [2] 1B80 .. 1BFF Sundanese
+ lepc [2] 1C00 .. 1C4F Lepcha
+ olck [2] 1C50 .. 1CCF Ol Chiki
+ sym38 [2] 1CD0 .. 1CFF Vedic Extensions
+ latn4 1D00 .. 1D7F Phonetic Extensions
+ latn5 1D80 .. 1DBF Phonetic Extensions Supplement
+ sym03 1DC0 .. 1DFF Combining Diacritical Marks Supplement
+ latn3 1E00 .. 1EFF Latin Extended Additional
+ grek1 1F00 .. 1FFF Greek Extended
+ sym04 2000 .. 206F General Punctuation
+ sym05 2070 .. 209F Superscripts and Subscripts
+ sym06 20A0 .. 20CF Currency Symbols
+ sym07 20D0 .. 20FF Combining Diacritical Marks for Symbols
+ sym08 2100 .. 214F Letterlike Symbols
+ sym09 2150 .. 218F Number Forms
+ sym10 2190 .. 21FF Arrows
+ sym11 2200 .. 22FF Mathematical Operators
+ sym12 2300 .. 23FF Miscellaneous Technical
+ sym13 2400 .. 243F Control Pictures
+ sym14 2440 .. 245F Optical Character Recognition
+ sym15 2460 .. 24FF Enclosed Alphanumerics
+ sym16 2500 .. 257F Box Drawing
+ sym17 2580 .. 259F Block Elements
+ sym18 25A0 .. 25FF Geometric Shapes
+ sym19 2600 .. 26FF Miscellaneous Symbols
+ sym20 2700 .. 27BF Dingbats
+ sym21 27C0 .. 27EF Miscellaneous Mathematical Symbols-A
+ sym22 27F0 .. 27FF Supplemental Arrows-A
+ brai 2800 .. 28FF Braille Patterns
+ sym23 2900 .. 297F Supplemental Arrows-B
+ sym24 2980 .. 29FF Miscellaneous Mathematical Symbols-B
+ sym25 2A00 .. 2AFF Supplemental Mathematical Operators
+ sym26 2B00 .. 2BFF Miscellaneous Symbols and Arrows
+ glag 2C00 .. 2C5F Glagolitic
+ latnC 2C60 .. 2C7F Latin Extended-C
+ copt 2C80 .. 2CFF Coptic
+ geor1 2D00 .. 2D2F Georgian Supplement
+ tfng 2D30 .. 2D7F Tifinagh
+ ethi2 2D80 .. 2DDF Ethiopic Extended
+ cyrlA [2] 2DE0 .. 2DFF Cyrillic Extended-A
+ sym27 2E00 .. 2E7F Supplemental Punctuation
+ cjk01 2E80 .. 2EFF CJK Radicals Supplement
+ cjk02 2F00 .. 2FEF Kangxi Radicals
+ cjk03 2FF0 .. 2FFF Ideographic Description Characters
+ cjk04 3000 .. 303F CJK Symbols and Punctuation
+ hira 3040 .. 309F Hiragana
+ kana 30A0 .. 30FF Katakana
+ bopo 3100 .. 312F Bopomofo
+ hang2 3130 .. 318F Hangul Compatibility Jamo
+ cjk05 3190 .. 319F Kanbun
+ bopo1 31A0 .. 31BF Bopomofo Extended
+ cjk06 31C0 .. 31EF CJK Strokes
+ kana1 31F0 .. 31FF Katakana Phonetic Extensions
+ cjk07 3200 .. 32FF Enclosed CJK Letters and Months
+ cjk08 3300 .. 33FF CJK Compatibility
+ haniA 3400 .. 4DBF CJK Unified Ideographs Extension A
+ sym28 4DC0 .. 4DFF Yijing Hexagram Symbols
+ hani 4E00 .. 9FFF CJK Unified Ideographs
+ yiii A000 .. A48F Yi Syllables
+ yiii1 A490 .. A4CF Yi Radicals
+ lisu [2] A4D0 .. A4FF Lisu
+ vaii [2] A500 .. A63F Vai
+ cyrlB [2] A640 .. A69F Cyrillic Extended-B
+ bamu [2] A6A0 .. A6FF Bamum
+ sym29 A700 .. A71F Modifier Tone Letters
+ latnD A720 .. A7FF Latin Extended-D
+ sylo A800 .. A82F Syloti Nagri
+ sym39 [2] A830 .. A83F Common Indic Number Forms
+ phag A840 .. AB7F Phags-pa
+ saur [2] A880 .. A8DF Saurashtra
+ deva1 [2] A8E0 .. A8FF Devanagari Extended
+ kali [2] A900 .. A92F Kayah Li
+ rjng [2] A930 .. A95F Rejang
+ hangA [2] A960 .. A97F Hangul Jamo Extended-A
+ java [2] A980 .. A9FF Javanese
+ cham [2] AA00 .. AA5F Cham
+ mymrA [2] AA60 .. AA7F Myanmar Extended-A
+ tavt [2] AA80 .. ABBF Tai Viet
+ mtei [2] ABC0 .. ABFF Meetei Mayek
+ hang AC00 .. D7AF Hangul Syllables
+ hangB [2] D7B0 .. D7FF Hangul Jamo Extended-B
+ spc01 D800 .. DB7F High Surrogates
+ spc02 DB80 .. DBFF High Private Use Surrogates
+ spc03 DC00 .. DFFF Low Surrogates
+ spc04 E000 .. F8FF Private Use Area
+ hani1 F900 .. FAFF CJK Compatibility Ideographs
+ latn6 FB00 .. FB4F Alphabetic Presentation Forms
+ arab2 FB50 .. FDFF Arabic Presentation Forms-A
+ spc05 FE00 .. FE0F Variation Selectors
+ cjk09 FE10 .. FE1F Vertical Forms
+ sym30 FE20 .. FE2F Combining Half Marks
+ cjk10 FE30 .. FE4F CJK Compatibility Forms
+ cjk11 FE50 .. FE6F Small Form Variants
+ arab3 FE70 .. FEFF Arabic Presentation Forms-B
+ cjk12 FF00 .. FFEF Halfwidth and Fullwidth Forms
+ spc06 FFF0 .. FFFF Specials
+ linb 10000 .. 1007F Linear B Syllabary
+ linb1 10080 .. 100FF Linear B Ideograms
+ sym31 10100 .. 1013F Aegean Numbers
+ grek2 10140 .. 1018F Ancient Greek Numbers
+ sym40 [2] 10190 .. 101CF Ancient Symbols
+ sym41 [2] 101D0 .. 1027F Phaistos Disc
+ lyci [2] 10280 .. 1029F Lycian
+ cari [2] 102A0 .. 102FF Carian
+ ital 10300 .. 1032F Old Italic
+ goth 10330 .. 1037F Gothic
+ ugar 10380 .. 1039F Ugaritic
+ xpeo 103A0 .. 103FF Old Persian
+ dsrt 10400 .. 1044F Deseret
+ shaw 10450 .. 1047F Shavian
+ osma 10480 .. 107FF Osmanya
+ cprt 10800 .. 1083F Cypriot Syllabary
+ armi [2] 10840 .. 108FF Imperial Aramaic
+ phnx 10900 .. 1091F Phoenician
+ lydi [2] 10920 .. 109FF Lydian
+ khar 10A00 .. 10A5F Kharoshthi
+ sarb [2] 10A60 .. 10AFF Old South Arabian
+ avst [2] 10B00 .. 10B3F Avestan
+ prti [2] 10B40 .. 10B5F Inscriptional Parthian
+ phli [2] 10B60 .. 10BFF Inscriptional Pahlavi
+ orkh [2] 10C00 .. 10E5F Old Turkic
+ sym42 [2] 10E60 .. 1107F Rumi Numeral Symbols
+ kthi [2] 11080 .. 11FFF Kaithi
+ xsux 12000 .. 123FF Cuneiform
+ xsux1 12400 .. 12FFF Cuneiform Numbers and Punctuation
+ egyp [2] 13000 .. 1CFFF Egyptian Hieroglyphs
+ sym32 1D000 .. 1D0FF Byzantine Musical Symbols
+ sym33 1D100 .. 1D1FF Musical Symbols
+ sym34 1D200 .. 1D2FF Ancient Greek Musical Notation
+ sym35 1D300 .. 1D35F Tai Xuan Jing Symbols
+ sym36 1D360 .. 1D3FF Counting Rod Numerals
+ sym37 1D400 .. 1EFFF Mathematical Alphanumeric Symbols
+ sym43 [2] 1F000 .. 1F02F Mahjong Tiles
+ sym44 [2] 1F030 .. 1F0FF Domino Tiles
+ sym45 [2] 1F100 .. 1F1FF Enclosed Alphanumeric Supplement
+ cjk13 [2] 1F200 .. 1FFFF Enclosed Ideographic Supplement
+ haniB 20000 .. 2A6FF CJK Unified Ideographs Extension B
+ haniC [2] 2A700 .. 2F7FF CJK Unified Ideographs Extension C
+ hani2 2F800 .. 2FFFF CJK Compatibility Ideographs Supplement
+ spc07 E0000 .. E00FF Tags
+ spc08 E0100 .. EFFFF Variation Selectors Supplement
+ spc09 F0000 .. FFFFF Supplementary Private Use Area-A
+ spc10 100000 .. 10FFFF Supplementary Private Use Area-B
+
+ ※ ID の命名規則
+ - Unicode ブロック名にスクリプト(用字系)の名前が含まれるものは、それ
+ に対する ISO 15924 のコードを用いた。単一のスクリプトのブロックが
+ 複数ある場合は、名前が "Extended-A, B, ..." のものは A, B, ... を、
+ それ以外のものは 1, 2, ... (一部符号値順でない)を末尾に付加した。
+ "Arabic" → arab ; "Latin Extended-C" → latnC
+ なお、Hiragana は hira だが Katakana は kana であることに注意。
+ - それ以外は、CJK 関係(cjk)、特殊用途(spc)、それ以外(sym)の 3 つに
+ 恣意的に分類して、2 桁の番号を付けた。この番号は基本的に符号値の
+ 順とするが、後から追加されたブロックはそうならない。
+
+ CCV 2 では以下の変更がある。
+
+ - cjk12 (Halfwidth and Fullwidth Forms) が次の 3 つに分割される。
+ * cjk1b : U+FF10..U+FF19, U+FF21..U+FF3A, U+FF41..U+FF5A
+ すなわち ASCII 英数字の全角互換形。
+ * cjk1c : U+FF66..U+FF6F, U+FF71..U+FF9D
+ すなわちカタカナの半角互換形。句読点等の記号は含まない。
+ * cjk1a : cjk12 から cjk1b, cjk1c を除いた残り。
+ cjk12 の指定も使用可能である。
+
+■ 各モードでの kcatcode の値
+
+ モード CCV が 1 の場合。
+
+ 記号 fc pc pcv pnc JIS CID 名称
+ latn X - - - * Basic Latin
+ latn1 O - - X * * Latin-1 Supplement
+ latnA O - - X * Latin Extended-A
+ latnB O - - X * Latin Extended-B
+ latn2 O - - X * IPA Extensions
+ sym01 O - - X * Spacing Modifier Letters
+ sym02 O - - X * Combining Diacritical Marks
+ grek O - X - * * Greek and Coptic
+ cyrl O - X - * * Cyrillic
+ hang1 H - - - + Hangul Jamo
+ latn3 O - - X * Latin Extended Additional
+ grek1 O - X - * Greek Extended
+ sym04 O - - X * * General Punctuation
+ sym05 O - - X * Superscripts and Subscripts
+ sym06 O - - X * Currency Symbols
+ sym07 O - - X * Combining Diacritical Marks for Symbols
+ sym08 O - - X * * Letterlike Symbols
+ sym09 O - - X * Number Forms
+ sym10 O - - X * * Arrows
+ sym11 O - - X * * Mathematical Operators
+ sym12 O - - X * * Miscellaneous Technical
+ sym13 O - - X * Control Pictures
+ sym15 O - - - * Enclosed Alphanumerics
+ sym16 O - - X * * Box Drawing
+ sym17 O - - X * Block Elements
+ sym18 O - - X * * Geometric Shapes
+ sym19 O - - X * * Miscellaneous Symbols
+ sym20 O - - X * Dingbats
+ sym23 O - - X * Supplemental Arrows-B
+ sym24 O - - X * Miscellaneous Mathematical Symbols-B
+ sym26 O - - X * Miscellaneous Symbols and Arrows
+ cjk01 I - - - * CJK Radicals Supplement
+ cjk02 I - - - * Kangxi Radicals
+ cjk03 I - - - + Ideographic Description Characters
+ cjk04 O - - - * * CJK Symbols and Punctuation
+ hira K - - - * * Hiragana
+ kana K - - - * * Katakana
+ bopo I - - - + Bopomofo
+ hang2 H - - - + Hangul Compatibility Jamo
+ cjk05 I - - - * Kanbun
+ bopo1 I - - - + Bopomofo Extended
+ cjk06 I - - - + CJK Strokes
+ kana1 K - - - * Katakana Phonetic Extensions
+ cjk07 O - - - * Enclosed CJK Letters and Months
+ cjk08 O - - - * CJK Compatibility
+ haniA I - - - * CJK Unified Ideographs Extension A
+ hani I - - - * * CJK Unified Ideographs
+ yiii O - - - + Yi Syllables
+ yiii1 O - - - + Yi Radicals
+ hangA H - - - Hangul Jamo Extended-B
+ hang H - - - + Hangul Syllables
+ hangB H - - - Hangul Jamo Extended-B
+ spc04 O - - X * Private Use Area
+ hani1 I - - - * CJK Compatibility Ideographs
+ latn6 O - - X * Alphabetic Presentation Forms
+ cjk09 O - - - * Vertical Forms
+ cjk10 O - - - * CJK Compatibility Forms
+ cjk11 O - - - + Small Form Variants
+ cjk12 O - - - * * Halfwidth and Fullwidth Forms
+ cjk13 O - - - Enclosed Ideographic Supplement
+ haniB I - - - * CJK Unified Ideographs Extension B
+ haniC I - - - CJK Unified Ideographs Extension C
+ hani2 I - - - * CJK Compatibility Ideographs Supplement
+ O X - - (その他のブロック)
+ all, prc, pc1, pnc の欄はそれぞれ forcecjk, prefercjk, prefercjkvar,
+ prefernoncjk モードでの kcatcode の値。値の意味: X=noncjk(15),
+ I=kanji(16), K=kana(17), O=cjk(18), H=hangul(19)。JIS 欄の * はその
+ ブロック内の文字に JIS X 0208 に含まれるものがあることを示す。また CID
+ 欄の * は Adobe-Japan1 に、+ は Adobe-GB1, Adobe-CNS1, Adobe-Korea1 に
+ 含まれるものがあることを示す。
+
+ モード CCV が 2 の場合、cjk12 の再分割について以下のようになる。
+
+ 記号 fc pc pcv pnc JIS CID
+ cjk1a O - - - * * cjk12 で cjk1b, cjk1c 以外
+ cjk1b K - - - * * ASCII 英数字の全角互換形
+ cjk1c K - - - * * カタカナの半角互換形(記号は含まず)
+
+ ※ upTeX の CCV が 2 でモード CCV 指定が 1 の場合は cjk1a~cjk1c の
+ 設定値は cjk12 のものに従う。
+
+■ 更新履歴
+
+ README ファイルを参照。
+
+# EOF