インド標準情報交換コード( ISCII ) は、インドのさまざまな表記体系を表すためのコード体系です。主要なインド系文字とローマ字翻字をエンコードします。サポートされている文字体系は、ベンガル語–アッサム語、デーバナーガリー語、グジャラート語、グルムキー語、カンナダ語、マラヤーラム語、オリヤー語、タミル語、テルグ語です。ISCII はペルシア語に基づくインドの表記体系をエンコードしていませんが、その表記体系切り替えコードは、カシミール語、シンド語、ウルドゥー語、ペルシア語、パシュトー語、アラビア語に対応しています。ペルシア語に基づく表記体系は、その後PASCIIエンコードでエンコードされました。
ISCIIは一部の政府機関以外では広く使用されていないが、ATR機構のない変種がクラシックMac OS、Mac OS Devanagariで使用されていた[1]が、現在ではUnicodeによってほぼ廃止されている。Unicodeはインド系文字体系ごとに別々のブロックを使用し、各ブロック内ではISCIIレイアウトをほぼ維持している。[2] : 462
背景
ブラーフミー文字由来の表記体系も同様の構造を持っています。[2] : 462 そのため、ISCIIは同じコードポイントで同じ音声値を持つ文字をエンコードし、さまざまなスクリプトを重ねます。たとえば、ISCIIコード0xB3 0xDBは[ki]を表します。これは、マラヤーラム語ではകി、デーヴァナーガリー語ではकि、グルムキー語ではਕਿ、タミル語ではகிとしてレンダリングされます。表記体系は、マークアップによるリッチテキストまたは以下で説明するATRコードによるプレーンテキストで選択できます。
単一のエンコードを使用する理由の1つは、ある表記体系から別の表記体系への翻字が容易になるという考えです。 [2] : 462 しかし、互換性がないことが多々あるため、これは実際には現実的な考えではありません。
ISCIIは8ビットのエンコーディングです。[3] : 4 下位128コードポイントはプレーンASCIIで、上位128コードポイントはISCII固有です。文字を表すコードポイントに加えて、ISCIIは、次のバイトに2種類の情報のいずれかが含まれていることを示すニーモニックATRを持つコードポイントを使用します。1セットの値は次の書記体系インジケーターまたは行末まで書記体系を変更します。別のセットの値では、太字や斜体などの表示モードを選択します。ISCIIは、デフォルトの書記体系を示す手段を提供していません。
コードページレイアウト
次の表はデーヴァナーガリー文字の文字セットを示しています。アッサム語、ベンガル語、グジャラート語、グルムキー語、カンナダ語、マラヤーラム語、オリヤー語、タミル語、テルグ語のコードセットは類似しており、各デーヴァナーガリー文字は各表記体系の同等の文字に置き換えられています[2] : 462。 各文字は、10進コードとUnicodeの同等文字とともに示されています。
特別なコードポイント
- INV文字—コードポイントD9(217)
- INV(不可視子音)文字は、結合要素を単独で表示するための疑似子音として使用されます。たとえば、क(ka)+्(halant)+ INV = क्(半分のka)。Unicodeの同等文字はU+200D ZERO WIDTH JOINER(ZWJ)です。ただし、後述するように、ISCII halant文字を重複させたり、ISCII nuktaと組み合わせたりすることで、 UnicodeのZWNJまたはZWJによって作成された効果を実現できます。このため、AppleはISCII INV文字をUnicodeの左から右へのマークにマッピングし、ラウンドトリップを保証します。[1]
- ATR文字 - コードポイントEF(239)
- ATR (属性) 文字の後にバイト コードが続くと、次の ATR シーケンスまたは行末まで、異なるフォント属性 (太字など) または異なる ISCII またはPASCII言語 (ベンガル語など) に切り替えることができます。フォント属性は Unicode の一部ではなく、各スクリプトには異なるコード ポイントのセットがあるため、これと直接同等の Unicode 文字はありません。
- EXT文字—コードポイントF0(240)
- EXT (ヴェーダ語の拡張) 文字の後にバイト コードが続くと、ヴェーダ語のアクセントを示します。ヴェーダ語のアクセントは個別のコード ポイントに割り当てられているため、これに直接対応する Unicode 文字はありません。
- ハラント文字्—コードポイント E8 (232)
- ハラント文字は子音から暗黙の母音を削除し、子音の間で使用して結合子音を表します。たとえば、क (ka) + ् (halant) + त (ta) = क्त (kta) です。シーケンス ् (halant) + ् (halant) は、明示的なハラントとの結合を表します。たとえば、क (ka) + ् (halant) + ् (halant) + त (ta) = क्त です。シーケンス ् (halant) + ़ (nukta) は、半子音との結合を表します (使用可能な場合)。たとえば、क (ka) + ् (halant) + ़ (nukta) + त (ta) = क्त です。
- ヌクタ文字 ़—コードポイント E9 (233)
- 他の ISCII 文字の後のnukta文字は、メインの ISCII セットに存在しないいくつかの珍しい文字に使用されます。たとえば、क (ka) + ़ (nukta) = क़ (qa) です。これらの文字は、次の表に示すように、Unicode であらかじめ合成された形式を持っています。
ISCII変換用のコードページ
Unicode (UTF-8) から ISCII / ANSI コーディングに変換するには、次のコード ページを使用できます。
- 57002: デヴァナーガリー (ヒンディー語、マラーティー語、サンスクリット語、コンカニ語)
- 57003: ベンガル語
- 57004: タミル語
- 57005: テルグ語
- 57006: アッサム語
- 57007: オディア語
- 57008: カンナダ語
- 57009: マラヤーラム語
- 57010: グジャラート語
- 57011: パンジャブ語(グルムキー語)
すべての言語のコードポイント
参考文献
- ^ ab Apple (2005-04-05) [1998-02-05]. 「Mac OS デーバナーガリ文字エンコーディングから Unicode 2.1 以降へのマップ (外部バージョン)」. Unicode コンソーシアム.
- ^ abcd The Unicode Standard v15.0 Chapter 12 (PDF) . The Unicode Consortium . 2024年8月13日閲覧。
- ^ abcde IS13194:1991 (ソフトコピー) (PDF) . Beureau of Indian Standards. 1999.
- ^
- この表は、ISCII標準の表2と表3(ここ[3])およびUnicode標準コード表の対応表から導き出すことができます。
外部リンク
- ISCII と各種フォント間のコンバータ
- Padma – ISCII を Unicode に変換する Mozilla 拡張機能。2019 年 10 月 1 日にWayback Machineにアーカイブされました。
- Padma – テルグ語の ISCII から Unicode への変換ツール
- ISCII と Unicode 間の PHP スクリプト
