SS (ISO-2022)
読み:エスエス
外語:SS: Single Shift
ISO/IEC 2022で用いられる符号拡張機能で、次の一字だけ、GL領域またはGR領域にバッファーを呼び出すための制御コードの総称。
概要
似た符号にLS(Locking Shift)がある。
LSがキーボードのCapsLockキーのように他のLSが出現するまで永続的に機能するのに対し、SSはShiftキーのように次の一文字だけに影響を与える。
特徴
由来
この仕様は、最初の改訂版であるISO 2022:1982から登場した。
G2を呼び出すコードとG3を呼び出すコード、合わせて二種類がある。
G0とG1を呼び出すコードは無いが、この使用形態は8ビット符号で、GLにはG0、GRにはG1が既に呼び出されている状況から、G2とG3を使用するような状況が想定されているからである。
要するに、EUCのためにある仕様ともいえる。
符号の種類
次の二種類がある。
- SS2 (次の1文字だけG2をGL/GRに呼び出す) (8/14または1/11 4/14)
- SS3 (次の1文字だけG3をGL/GRに呼び出す) (8/15または1/11 4/15)
通常は8ビット符号系でC1制御文字である8/14または8/15を使うが、7ビット符号系でC1制御文字が使えない場合、SS2は1/11 4/14と、SS3は1/11 4/15と、それぞれ表現可能である。
なお、ISO/IEC 2022の仕様上、SS2/SS3の後に続く文字は、GL/GRどちらでも良い。GLに呼び出す(7ビットとして使う)のが原則だが、EUCで利用可能なように、GRに呼び出しても良い(シングルシフトに続く符号のMSBが1でも良い)ことになっている。
使用例
SS2またはSS3はその特徴から文字にとっては前置であり、SS2やSS3にG2またはG3の符号を続ける。
バッファーにある文字は、ISO/IEC 2022の仕様から1バイト系、2バイト系、3バイト系、4バイト(以上)系のいずれかであるが、それは適時、処理系が判断せねばならない。
- G2が1バイト系である場合の例: SS2 11/1
- G3が2バイト系である場合の例: SS3 11/0 10/1
もし処理系を作る場合は、符号長は原則として指示された時点で判断できるので(4バイト以上の符号を除く)、呼び出しの時点でその符号長を取得するような実装となるだろう。
再検索