[9] 符号化単独追加制御機能の種類 JIS X 0202:1998 6.5:
[10] >>9 は標準化の程度に拠る分類ですが、 それに合わせて符号化表現 (いずれもエスケープ・シーケンス) に違いがあります。
[11] 単独制御機能は ISO/IEC2022:1994 6.5, ISO/IEC6429:1991 5.5 で規定されています。
[12] 標準化された単独制御機能 (Fs) は、 ISO/IEC JTC1/SC2 の承認が必要です。 Fs と 3Ft は ISO-IR に登録が必要です。
2 | 3 | 4 | 5 | 6 | 7 | |
---|---|---|---|---|---|---|
0 | ACS 告知 | 私用 | C1 | C1 | DMI | PCD † ☆ |
1 | CZD 指示 | 私用 | C1 | C1 | INT | |
2 | C1D 指示 | 私用 | C1 | C1 | EMI ☆ | † ☆ |
3 | 単独制御機能 | 私用 | C1 | C1 | RIS ☆ | † |
4 | 多バイト指示 | 私用 | C1 | C1 | CMD ※ ☆ | |
5 | DOCS | 私用 | C1 | C1 | ☆ | |
6 | IRR | 私用 | C1 | C1 | ☆ | |
7 | 私用 | C1 | C1 | † | ☆ | |
8 | GZD4 指示 | 私用 | C1 | C1 | ☆ | |
9 | G1D4 指示 | 私用 | C1 | C1 | ||
10 | G2D4 指示 | 私用 | C1 | C1 | ☆ | |
11 | G3D4 指示 | 私用 | C1 | C1 | LS1R ※ ☆ | ※ |
12 | (GZD6 指示) | 私用 | C1 | C1 | LS2R ※ ☆ | LS3R |
13 | G1D6 指示 | 私用 | C1 | C1 | LS3R | LS2R |
14 | G2D6 指示 | 私用 | C1 | C1 | LS2 | LS1R |
15 | G3D6 指示 | 私用 | C1 | C1 | LS3 ☆ | ---- |
[1] 標準単独制御機能は符号化単独追加制御機能の一種です。
[2]
Fs
型のエスケープ・シーケンス、すなわち
で表現します JIS X 0202:1998 6.5.1。
ここで、 ESC
FsFs
は ISOREG
に登録された終端バイト
(06/00
〜07/14
) です。
[6] ISO-IR の終端バイト Fs には次のものがあります。 >>5 なお MARC-8 は非標準の独自のエスケープシーケンスを使っており、 一部が衝突しています。 >>7
6/0
:
DISABLE MANUAL INPUT
(DMI
),
ISO/IEC 6429,
ISO-IR 326/1
:
INTERRUPT
(INT
),
ISO/IEC 6429,
ISO-IR 336/2
:
ENABLE MANUAL INPUT
(EMI
),
ISO/IEC 6429,
ISO-IR 346/3
:
RESET TO INITIAL STATE
(RIS
),
ISO/IEC 6429,
ISO-IR 356/4
:
CODING METHOD DELIMITER
(CMD
),
ISO/IEC 6429,
ISO-IR 1896/5
: ISO-IR 未割当6/6
: ISO-IR 未割当6/7
: ISO-IR 未割当6/8
- 6/10
: ISO-IR 未割当6/11
: ISO-IR 未割当6/12
: ISO-IR 未割当6/13
: ISO-IR 未割当6/14
:
LOCKING-SHIFT TWO
(LS2
),
ISO/IEC 2022,
ISO-IR 626/15
:
LOCKING-SHIFT THREE
(LS3
),
ISO/IEC 2022,
ISO-IR 637/0
: ISO-IR 未割当、予約
PCD
7/1
: ISO-IR 未割当7/2
: ISO-IR 未割当7/3
: ISO-IR 未割当7/4
- 7/11
: ISO-IR 未割当7/12
:
LOCKING-SHIFT THREE RIGHT
(LS3R
),
ISO/IEC 2022,
ISO-IR 647/13
:
LOCKING-SHIFT TWO RIGHT
(LS2R
),
ISO/IEC 2022,
ISO-IR 657/14
:
LOCKING-SHIFT ONE RIGHT
(LS1R
),
ISO/IEC 2022,
ISO-IR 66[3] 標準単独制御機能は、 ISO/IEC JTC 1/SC 2 で承認された後、 ISO 2375 に従って ISOREG に登録されます。通常はその後、 ISO または ISO 承認団体の規格として出版されます。 JIS X 0202:1998 6.5.1
[4] >>2, >>3 のように、
制御機能の中では制御文字に次いで短い表現を与えられる分、
JTC 1/SC 2 の承認という比較的高いハードルが設けられています。
実際には ISO/IEC 2022 を構成する LS1R
などの重要な制御機能が割当てられています。
[15] 登録単独制御機能は、符号化単独追加制御機能の一種です。
[17] 符号化表現:
登録単独制御機能は 3Ft
型エスケープ・シーケンス、
すなわち
で表現されます JIS X 0202:1998 6.5.2。
ここで、 ESC
02/03
I* FtFt
は終端バイトで 04/00
〜07/15
です。
I
は中間バイトですが、
今のところ使われていませんし、今後も使われそうにありません。
[18] 標準化: 登録単独制御機能は ISOREG に登録して使います JIS X 0202:1998 6.5.2。
[24] この方式で ISO-IR に登録されている制御機能はありません。 今後も登録されることはないと思われます。
[8] 私用制御機能は符号化単独追加制御機能の一種で、 標準化された意味を持たないものです。 情報交換の当事者間の合意で私用できます JIS X 0202:1998 6.5.3。
[13] 符号化表現:
Fp
型または 3Fp
型のエスケープ・シーケンス、
すなわち
または ESC
Fp
によって表現します JIS X 0202:1998 6.5.3。
ここで、 ESC
02/03
I* FpFp
は私用終端バイトで
03/00
〜03/15
です。
I
は中間バイトです。
[14] すなわち、標準単独制御機能や登録単独制御機能のエスケープ・シーケンスで終端バイトに
03/00
〜03/15
は自由に使っても良いということです。
[26]
ctext は仕様の版に対する要件の記述に使っていました。
[27] ここで V は 2/m で、 仕様の第n版のとき m = n - 1 とします。 終端バイトが 3/0 なら第n版の拡張を無視しても良いことを、 3/1 なら第n版の拡張を無視してはいけないことを表します。
[42]
VT
では
3F 型の私用制御機能
3/3 - 3/9
が使われています。
[30]
VT
では
3/1 - 3/9, 3/12 - 3/15
が使われています
(3/1, 3/2 は2種類)。
[54]
Tektronix 4014
では
ESC
3/8 - 3/11
が使われていました。
[16]
Mule は文字の合成の情報を保持するために
-
ESC
03/00
を使っていました。
>>25ESC
03/04
o ESC '0' -- start relative composition o ESC '1' -- end composition o ESC '2' -- start rule-base composition (*) o ESC '3' -- start relative composition with alternate chars (**) o ESC '4' -- start rule-base composition with alternate chars (**)
[34] Mule-UCS の utibetan.el
に >>16 を使ったものがあります。
[19] 3F
型エスケープ・シーケンスは、
符号化単独追加制御機能のうち、
登録単独制御機能と私用制御機能に使われます。
[20] 仕様書:
[21] 構文:
エスケープ・シーケンス /= 3F 型エスケープ・シーケンス
3F 型エスケープ・シーケンス := 登録単独制御機能 / 私用単独制御機能 / 3F 型予約エスケープ・シーケンス
登録単独制御機能 := ESC
%x23 [%x21-23 *I] Ft
私用単独制御機能 := ESC
%x21 *I Fp
3F 型予約エスケープ・シーケンス := ESC
%x21 (%x20 / %x24-2F) *I Ft
I := %x20-2F ;; 中間バイト
Fp := %x30-3F ;; 私用終端バイト
Ft := %x40-7E ;; 標準終端バイト
[22] 標準単独制御機能:
標準単独制御機能は Fs
型エスケープ・シーケンスで表現します。
[23]
私用制御機能の別の表現: 私用制御機能には
Fp
型エスケープ・シーケンスを使うこともできます。