Unicodeでは、スクリプトとは、1 つ以上の表記体系でテキスト情報を表すために使用される文字やその他の記号の集合です。[ 1 ]アルメニア語のように、1 つの表記体系と言語のみをサポートするスクリプトもあります。ラテン文字のように、英語、フランス語、ドイツ語、イタリア語、ベトナム語、ラテン語自体、その他多くの言語をサポートするスクリプトもあります。複数の代替表記体系を使用する言語もあり、そのため複数のスクリプトも使用されます。例えば、トルコ語では、 20 世紀以前はアラビア文字が使用されていましたが、20 世紀初頭にラテン文字に移行しました。スクリプトを補完するものとして、記号と Unicode制御文字があります。
統一された発音記号と句読点は、多くの場合、「共通」または「継承」された文字体系の特性を持ちます。しかし、個々の文字体系は独自の句読点と発音記号を持つことが多く、そのため多くの文字体系には文字だけでなく、発音記号やその他の記号、句読点、数字、さらには独自の記号や空白文字も含まれています。
Unicode 17.0 では、102 種類の現代文字と 70 種類の古代文字または歴史文字を含む 172 種類の文字が定義されています。[ 2 ] [ 3 ]さらに多くの文字がエンコード処理中であるか、ロードマップでエンコード用に暫定的に割り当てられています。[ 4 ]
複数の言語が同じ文字体系を使用する場合、特に発音記号やその他の記号において、しばしば違いが生じます。例えば、スウェーデン語と英語はどちらもラテン文字を使用しています。しかし、スウェーデン語には文字å(スウェーデン語のOと呼ばれることもあります)がありますが、英語にはそのような文字はありません。また、英語では上記の発音記号の結合リングをどの文字にも使用しません。一般的に、同じ文字体系を共有する言語は、多くの文字を共有しています。スウェーデン語と英語の表記体系にはこのような周辺的な違いがありますが、両者は同じラテン文字を使用していると言われています。したがって、Unicodeによる文字体系の抽象化は、基本的な整理手法と言えます。異なるアルファベットや表記体系間の違いは残りますが、Unicodeの柔軟な文字体系、結合記号、照合アルゴリズムによってサポートされています。
文字体系は「文字」と同義語として扱われることもありますが、文字体系によって支えられている具体的な文字体系を指す場合もあります。例えば、ベトナム語の文字体系はラテン文字によって支えられています。また、文字体系は複数の文字体系を含む場合もあります。例えば、日本語の文字体系は漢字、ひらがな、カタカナの3つの文字体系を用いています。
ほとんどの文字体系は、表意文字、音節文字、アルファベット文字(または分節文字)、アブギダ文字、アブジャド文字、特徴文字といったいくつかのカテゴリーに大別できます。しかし、これらの特徴は、どの文字体系にも様々な割合で含まれている可能性があり、そのため、体系を単純に分類することはしばしば困難です。このような混在によって分類が困難になる体系は、「複合システム」と呼ばれることがあります。
Unicodeは、その豊富なスクリプト体系を通じて、これらのあらゆる種類の文字体系をサポートしています。また、Unicodeは文字にさらなる特性を追加することで、さまざまな文字を区別し、Unicodeテキスト処理アルゴリズム内での文字の動作を区別できるようにしています。
Unicode は、明示的または特定のスクリプト プロパティに加えて、3 つの特別な値を使用します。[ 5 ]
Unicodeでは、各文字に一般的なカテゴリプロパティが割り当てられています。そのため、すべての文字はスクリプトに属するだけでなく、一般的なカテゴリも持ちます。通常、スクリプトには大文字、小文字、修飾文字などの文字が含まれます。一部の文字は、 Dz (U+01F2) のような合成済み合字のタイトルケース文字とみなされます。このようなタイトルケース合字はすべてラテン文字とギリシャ文字に含まれており、すべて互換性文字であるため、Unicodeでは著者による使用を推奨していません。今後、新しいタイトルケース文字が追加される可能性は低いでしょう。
ほとんどの文字体系では、大文字と小文字を区別しません。これらの文字体系では、すべての文字が「その他の文字」または「修飾文字」に分類されます。ウニハン文字などの表意文字も「その他の文字」に分類されます。ただし、ラテン文字、キリル文字、ギリシャ文字、アルメニア文字、グルジア文字、デゼレト文字など、大文字と小文字を区別する文字体系もいくつかあります。これらの文字体系にも、大文字でも小文字でもない文字が存在します。
文字体系には、記号(発音記号を含む)、数字(数字)、句読点、区切り文字(スペースなどの単語区切り文字)、記号、非グラフィック形式文字など、その他の一般的なカテゴリの文字も含まれる場合があります。これらの文字は、その文字体系に固有のものである場合に、その文字体系に含まれます。その他の同様の文字は、一般的に統一され、句読点ブロックまたは発音記号ブロックに含まれます。ただし、一般的な文字体系と継承された文字体系を除き、どの文字体系においても、文字の大部分はアルファベットです。
バージョン17.0以降Unicode は、ISO 15924 リストのコードに対して 175 個のスクリプト エイリアス (「プロパティ値エイリアス」) を定義しています。Unicode は、Zyyy未決定のスクリプトの ISO 15924 コードにエイリアス「Common」を、Zinh継承されたスクリプトの ISO 15924 コードに「Inherited」を、コード化されていないスクリプトの ISO 15924 コードに「Unknown」を割り当てますZzzz。ISO 15924 で定義されているスクリプト コードの中には、Unicode で使用されていないものがあり、これにはZsym(記号) やZmth(数式表記) などが含まれます。
マインツ応用科学大学、ナンシー国立タイポグラフィ研究アトリエ(ANRT)、カリフォルニア大学バークレー校の貢献者によるプロジェクト「Missing Scripts」は、現在の研究状況によると、認識されている合計294の文字体系のうち、 Unicode標準にまだエンコードされていない131の文字体系のリストを作成しました。[ 6 ]