ISO/IEC 2022,Informationstechnologie – Zeichensatzstruktur- und -erweiterungstechniken (englischInformation Technology – Character code structure and extension techniques) ist eineISO-Norm, die eine Technik zur Kodierung mehrerer Zeichensätze sowie Sprachen, die nicht in 7 Bits kodiert werden können, definiert.
Der Zeichensatz sollte das Problem unterschiedlicher zueinander inkompatibler Zeichenkodierungen lösen sowie die Kodierung ostasiatischer Schriftsysteme ermöglichen. Ein in ISO 2022 kodierter String kann problemlos durch 7-Bit-Kanäle transportiert werden, was die Verwendung des Zeichensatzes im Mail- und Usenet-Verkehr ermöglicht. Mithilfe von meist drei oder vier Byte langenEscape-Sequenzen kann zwischen mehreren Zeichensätzen geschaltet werden. Pro Escapesequenz können, abhängig von ihrer Definition, entweder 94, 8.836 (in einer 94×94-Matrix) oder 830.584 (in einer dreidimensionalen 94×94×94-Matrix) Zeichen kodiert werden.
Jedoch konnte sich ISO/IEC 2022 nur im ostasiatischen Mailverkehr durchsetzen, für westliche Sprachen wurde keine Version veröffentlicht. Stattdessen wurdeUnicode entwickelt, um diese Aufgabe zu erfüllen.
Es gibt drei Versionen von ISO/IEC 2022 für die drei ostasiatischen Schriften,ISO-2022-JP,ISO-2022-KR undISO-2022-CN.
ISO-2022-JP kodiert diejapanische Schrift. Sie wird häufig im Mailverkehr eingesetzt, ansonsten wird eher aufShift JIS oderEUC-JP zurückgegriffen.
Die ursprüngliche Version wird in RFC 1468[1] beschrieben und enthält die folgenden vierEscape-Sequenzen:
ESC ( B schaltet zuASCII (1-Byte)ESC ( J schaltet zuJIS-Roman (1-Byte)ESC $ @ schaltet zuJIS X 0208:1978 (2-Byte)ESC $ B schaltet zuJIS X 0208:1983 (2-Byte)ISO-2022-JP-1 wird in RFC 2237[2] beschrieben und fügt eine weitere Escapesequenz hinzu:
ESC $ ( D schaltet zuJIS X 0212:1990 (2-Byte)ISO-2022-JP-2 wird in RFC 1554[3] beschrieben und fügt weitere Escapesequenzen zur Unterstützung weiterer Sprachen hinzu. Sie erweitert ISO-2022-JP-1 um die folgenden Escapesequenzen:
ESC $ A schaltet zuGB2312-1980 (2-Byte)ESC $ ( C schaltet zuKS C 5601-1987 (2-Byte)ESC . A schaltet zuISO 8859-1 (1-Byte)ESC . F schaltet zuISO 8859-7 (1-Byte)ISO-2022-JP-3 erweitert die ursprüngliche Version um folgende Escapesequenzen:
ESC ( I schaltet zuJIS X 0201 (1-Byte)ESC $ ( O schaltet zuJIS X 0213:2000, Plane 1 (2-Byte)ESC $ ( P schaltet zuJIS X 0213:2000, Plane 2 (2-Byte)ISO-2022-JP-2004 erweitert ISO-2022-JP-3 um die folgende Escapesequenz:
ESC $ ( Q schaltet zuJIS X 0213:2004, Plane 1 (2-Byte)ISO-2022-KR kodiert diekoreanische Schrift und wird nebenEUC-KR auf koreanischen Websites verwendet. Sie enthält nur eine einzige Escapesequenz:
ESC $ ( C schaltet zuKS C 5601-1987 (2-Byte)ISO-2022-CN kodiert diechinesische Schrift (sowohlKurz- als auchLangzeichen) und wird in RFC 1922[4] beschrieben. Sie wird fast nie verwendet,EUC-CN bzw.Big5 und im MailverkehrHZ sind viel häufiger anzutreffen. Die Kodierung enthält die folgenden Escapesequenzen:
ESC $ ( A schaltet zuGB2312-1980 (2-Byte)ESC $ ( G schaltet zuCNS 11643-1992, Plane 1 (2-Byte)ESC $ ( H schaltet zuCNS 11643-1992, Plane 2 (2-Byte)ISO-2022-CN-EXT erweitert den ursprünglichen Zeichensatz um die folgenden Escapesequenzen:
ESC $ ( E schaltet zuISO-IR-165 (2-Byte)ESC $ ( I schaltet zuCNS 11643-1992, Plane 3 (2-Byte)ESC $ ( J schaltet zuCNS 11643-1992, Plane 4 (2-Byte)ESC $ ( K schaltet zuCNS 11643-1992, Plane 5 (2-Byte)ESC $ ( L schaltet zuCNS 11643-1992, Plane 6 (2-Byte)ESC $ ( M schaltet zuCNS 11643-1992, Plane 7 (2-Byte)