Unicodeの文字

Unicode 文字

[20] Unicode 文字 (character) は、 Unicode における文字です。

仕様書

意味

[4] Unicode文字 (character) は、 「Unicode Consortium文字と考えるもの」 としか説明のしようがありません。

[5] それは一般人が「文字」と感じるものと必ずしも一致しません (これは The Unicode Standard も明言しています。) し、 各国の文字政策や教育で「文字」と扱われているものとも必ずしも一致しません。 学術研究や他の文字コード規格の「文字」とも必ずしも一致しません。

[6] Unicode文字は歴史的、政治的経緯によって歪んでおり、 必ずしも利用しやすい、実装しやすい形になってはいません。

[8] The Unicode Standard における文字は、 筆記言語 (written language) の最小の構成要素の抽象表現であって意味 (semantic) な値を持つものです。 文字は、 自然言語 (text) 技術的記法 (technical notation) を構成する letter句読点 (punctuation) 、 その他の記号 (sign) を含みますが、これに限りません。 >>7

[28] たとえば「A」「0」「あ」「字」「、」「☆」のような Unicode文字があります。

[21] このような「文字」の説明は、図形文字の説明に近いようですが、 Unicode文字には他にも書式文字制御文字のようなものがあります。

[9] 自然言語文に使う letter は、 script (言語記述に一緒に使う letter集合) としてグループ化します。 異なる scriptletter は、 意味 (semantically) 図形 (graphically) に、 はたまた発音 (pronunciation) 的に対応関係にあるとしても、 Unicode では別の文字で表現します。 >>7

[24] ラテン文字の「A」とギリシャ文字の「Α」 は、見た目で区別がつかず字源は共通であるにも関わらず、 別の script とみなされ、従って別の Unicode文字とされています。

[25] もっともこの同じ script か別の script かの決定には客観的基準があるわけでもないようで、 Unicode Consortium の判断によれば、ということになります。 用字系

[23] 利用者が1つの文字と認識するものが、 複数の Unicode符号点で表されることもあります。 基底文字結合文字で組み合わせて表現されることもあれば、 スロバキア語ch」、 北米原住民語「th」 のように複数の基底文字の列で表現されることもあります。 >>7

[26] 1つのUnicode文字になるか複数のUnicode文字になるかは、 Unicode Consortium の判断によります。 例えば 「が」 は1つのUnicode文字で表せますが、 「か゚」 は「か」 + 半濁点の2つのUnicode文字でしか表せません。

結合列, 書記素クラスター

[10] 文字は、メモリー表現にのみ関係する符号点によって表現され、 メモリー上の文字列や、 ディスク上やデータ転送で使います。 The Unicode Standard文字符号のみを扱います。 >>7 文字符号化

[22] The Unicode Standard は、 文字グリフを区別しております。 >>7 グリフ

[27] アラビア文字語頭形語末形のように、 1つのUnicode文字に複数のグリフが対応し、使い分けられることがあります。

[11] Unicode には抽象文字という概念があります。 Unicode文字とは抽象文字符号点に割り当てたもの (符号化済文字) ということになるのでしょうが、 抽象文字と (割り当てられた) Unicode文字が1対1に対応するわけでも、 それを目指しているわけでもないようです。

文字の性質

[2] Unicode文字の性質

文字の処理

[3] Unicode文字の処理

ES3 における定義

[12]

The phrase “Unicode character” will be used to refer to the abstract linguistic or typographical unit represented by a single Unicode scalar value (which may be longer than 16 bits and thus may be represented by more than one code point). This only refers to entities represented by single Unicode scalar values: the components of a combining character sequence are still individual “Unicode characters,” even though a user might think of the whole sequence as a single character.

[13] ES3 仕様書では16ビット符号単位に「文字」という語を当てているため、 Unicode における本来の「文字」の意味で「Unicode文字」という語を用いています。

HTML における定義

定義

[19]

The term Unicode character is used to mean a Unicode scalar value (i.e. any Unicode code point that is not a surrogate code point).

仕様書

歴史

[14] (X)HTML5 Tracking ( 版) http://html5.org/tools/web-apps-tracker?from=3871&to=3872

[18] ここで定義が追加されました。

[1] Editorial: let code point and friends be defined by Infra (annevk著, ) https://github.com/whatwg/html/commit/59595d9c2ccadb9332c15048be5d30174532ee70