ISO 2022 designator sequences

The following escape sequences may be used to alter the assignments of the graphic character sets.

esc ( ID
shift 94-character set into G0
esc ) ID
shift 94-character set into G1
esc * ID
shift 94-character set into G2
esc + ID
shift 94-character set into G3
esc $ ( ID
shift multi-byte 94-character set into G0
esc $ ) ID
shift multi-byte 94-character set into G1
esc $ * ID
shift multi-byte 94-character set into G2
esc $ + ID
shift multi-byte 94-character set into G3
esc - ID
shift 96-character set into G1
esc . ID
shift 96-character set into G2
esc / ID
shift 96-character set into G3

Some implementations (for example, Mule) also use

esc , ID
shift 96-character set into G0

but ISO 2022 does not permit a 96-character set in G0.

The ID, which ISO-2022 calls a final character, may be in the range 30-7E. Values in the subrange 30-3F are reserved for private use, and 7E means an empty set. Others are to be registered with ECMA before use. A summary of the registry is available online.

Values of ID for 94-character sets include:

B
US-ASCII (= left half of ISO 8859 sets)
I
right half of JIS X0201-1976 (katakana)
J
left half of JIS X0201-1976 (JIS-Roman)

Values of ID for multi-byte 94-character sets are:

@
JIS C 6226-1978
A
GB 2312-1980
B
JIS X0208-1990
C
KSC 5601-1987
D
JIS X0212-1990
E
GB 2312-1980 plus GB 8565-1989
G
CNS 11643-1986 level 1
H
CNS 11643-1986 level 2
I
CNS 11643-1992 plane 3
J
CNS 11643-1992 plane 4
K
CNS 11643-1992 plane 5
L
CNS 11643-1992 plane 6
M
CNS 11643-1992 plane 7

For the first 3 of these an older G0 designator esc $ ID is also allowed.

Values of ID for 96-character sets include:

A
right half of ISO 8859-1:1987 (ISO Latin-1)
B
right half of ISO 8859-2:1987 (ISO Latin-2)
C
right half of ISO 8859-3:1988 (ISO Latin-3)
D
right half of ISO 8859-4:1988 (ISO Latin-4)
F
right half of ISO 8859-7:1987 (ISO Latin-Greek)
G
right half of ISO 8859-6:1988 (ISO Latin-Arabic)
H
right half of ISO 8859-8:1988 (ISO Latin-Hebrew)
L
right half of ISO 8859-5:1989 (ISO Latin-Cyrillic)
M
right half of ISO 8859-9:1989 (ISO Latin-5)
T
Thai character set TIS 620-2533:1990
V
right half of ISO 8859-10:1992 (ISO Latin-6)

Note on ISO notation

In ISO documents, bytes are called octets, and (except in ISO/IEC 10646) are represented by pairs of decimal numbers. For example, the hexadecimal code 2D (the character `-' in US-ASCII) is represented as 2/13.


Part of Notes on CJK Character Codes and Encodings.