名前: ZR 日時: 2007-07-18 22:00:18 IPアドレス: 59.140.98.*
>>48761 訂正。 (誤) - TeX の \char<数値> は符号位置が <数値> であるプリミティブである。pTeX/ upTeX ではこれは和文にも使える。 (正) - TeX の \char<数値> は符号位置が <数値> である欧文文字を出力するプリミ ティブである。pTeX/upTeX ではこれは和文にも使える。 現状の \katcode の仕様をまとめてみました。 # 間違ってたら教えて >ttkさん ■ upTeX (v0.09) の \kcatcode の仕様 - kcatcode は「Unicode ブロック」毎に値をもつ。\kcatcode<n> は符号 位置 n の文字の属するブロックの kcatcode を指す。ただし便宜上これ を「位置 n (の文字)の kcatcode」と呼ぶ。 - n が 80h 以上の時、n の kcatcode は、入力(TeX ソース)に位置 n の 文字の UTF-8 表現が現れた時の動作を規定する。 * \kcatcode<n> が 15 以外: 符号位置 n で指定された値の kcatcode を もつ和文文字トークンと解釈する。 * \kcatcode<n> が 15: UTF-8 表現の各バイトが欧文文字トークンになる。 catcode はそれぞれの文字(バイト)の catcode 値による。 # 7Fh 以下の文字(= 7Fh 以下のバイト)は和文文字トークンにならない。 # pTeX では和文文字トークン自体は kcatcode を持たない。 - n が FFh 以下の時、n の kcatcode は、\char<n> の動作を規定する。 * \kcatcode<n> が 15 以外: 符号位置 n の和文文字を出力。 * \kcatcode<n> が 15: 符号位置 n の欧文文字を出力。 catcode はそれぞれの文字(バイト)の catcode 値による。 # 100h 以上の \char<n> は常に和文扱い。 - katcode 表とは別に和文処理全体の有効性のスイッチ \enablecjktoken/ \disablecjktoken が存在する。\disablecjktoken の状態では、上の 2 つ の事例ではともに kcatcode が 15 である時の動作を行う。 - kcatcode の既定値は、「ASCII ブロック」(U+0000〜007F)が 15 である外は 「Latin-1 ブロック」(U+0080〜U+00FF)を含めて全て 15 以外である。また、 和文スイッチの既定値は \enablecjktoken である。
この書き込みへの返事: