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 の集合) としてグループ化します。 異なる script の letter は、 意味的 (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