Unicodeの互換文字 Unicodeの互換文字の概要

Unicodeの互換文字

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/01/12 14:59 UTC 版)

ナビゲーションに移動 検索に移動
Unicode > Unicodeの互換文字


文字の種類

字母やその他の
     用字系固有のもの
CJK統合漢字
• 発音記号
数字
約物
ダイアクリティカルマーク
記号:
互換文字
制御文字
その他
結合文字
合成済み文字

Unicodeコンソーシアムの用語集[1]によると、既存の文字コードとの互換性と往復変換のためだけに収録された文字のことである。 しかし、定義はその用語集に表れているものよりも複雑である。ユニコードコンソーシアムが文字に与えている特性[2]: Property)の1つとして、文字の分解互換分解がある。ほとんどの文字はこの特性に値を持たないが、5千を超える文字に互換文字から1つかそれ以上の他の文字へ互換分解がある。Unicodeは分解特性が設定されている文字が互換文字であると定めている。これらの互換性を指示することの理由はさまざまであり、詳細は後述する。文字は1文字に「分解」される場合もあるので、分解という用語は混乱を招くことがある。この場合、1文字の分解は単に等価な(もしくはおおむね等価な)別の文字への置き換えである。

この項目には、一部のコンピュータや閲覧ソフトで表示できない文字が含まれています詳細

正準と非正準

5,402種類のUnicode互換文字の互換分解特性には、互換文字を17の論理的なグループに分けるキーワードが含まれている。キーワードのないものは正準等価: Canonical Equivalent)なもしくは正準分解可能な文字: Canonical Decomposable Character)という用語で呼ばれる。これらの文字は最も近い関係を持つ。他のキーワードは以下のとおりである: <initial>、<medial>、<final>、<isolated>、<wide>、<narrow>、<small>、<square>、<vertical>、<circle>、<noBreak>、<fraction>、<subscript>、<superscript>、<compat>。これらのキーワードは、互換文字とその互換分解文字の並びとの間に存在する関係を暗示する。しかし、互換文字は — 正準であるかどうかを問わず — 3つの基本的なカテゴリに分けられる:

  1. 複数の代替字形に対応する文字と合成済みのダイアクリティカルマーク。完全なUnicodeのテキスト描画処理に対応していないソフトウェアフォントの実装をサポートするためもの。
  2. 他の文字コードから収録された文字。さもなければUnicodeの目的であるプレーンテキストよりむしろリッチテキストの構成要素としてUCSに追加されたもの。
  3. その他の意味的には異なるが、視覚的には似ている文字。

これらの意味的に異なる文字は他の文字のグリフと似たグリフで表示されることがあるので、テキスト処理ソフトウェアは起こりうる混乱を解決するようエンドユーザーのために努力すべきである。テキスト文字列の比較や照合(並べ替え)を行うとき、異なる字形や文字のリッチテキスト版がテキスト処理の結果を変えるべきではない。たとえば、ソフトウェアの利用者は大文字のラテン文字‘I’をページ上で検索したときに、そのソフトウェアが視覚的に類似したローマ数字の‘’を見つけられなかったら混乱するかもしれない。

互換マッピングの種類

グリフの置換と合成

互換文字の中には、テキスト処理や表示を行うソフトウェアにとってUnicode標準へ適合するためにまったく重要でないものも存在する。これらは以下の通り:

  • 合成済みダイアクリティカルマーク。たとえば‘Å’(U+00C5)など。Unicodeはこれらの書記素を大文字のラテン文字‘A’に‘Combining Ring Above’(U+030A)を結合した、2つの別々の文字として扱うことを好む。
  • 合字。ラテン文字において、‘ffi’のような合字は従来の文字コードではしばしば別々の文字として符号化される。Unicodeの合字に対するアプローチはそれらをリッチテキストとして扱い、もし有効にされたら、グリフ置換で扱うことである。
  • 合成済みローマ数字。たとえば、ローマ数字の12 (‘’: U+216B) は、ローマ数字の10 (‘’: U+2169) と2つのローマ数字1 (‘’: U+2160) に分解できる。
  • 合成済み分数記号。これらの分解はキーワード <fraction> を持つ。完全に適合するテキスト処理実装は分数‘¼’(U+00BC)と合成された分数‘1⁄4’(数字‘1’に分数用スラッシュ(U+2044)と数字‘4’を付けたもの)を同じように表示すべきである[3]
  • 文脈依存のグリフや字形。これらは基本的にアラビア文字で発生する。OpenTypeやTrueType GXのようにグリフ置換の機能を持つフォントを使うことにより、Unicodeに適合するソフトウェアは文字が単語の先頭、中央、末尾のどこに現れるか、あるいは単独で現れるかに応じて、同じ文字を適切なグリフに置換できる。このようなグリフ置換機能は東アジア言語の一部で縦書き(上から下への)テキスト描画を行うためにも必要である。この場合グリフは全角、半角、小書きなどの字形に置換されたり合成されたりしなければならない。Unicode適合でないソフトウェアや他の文字コードを使うソフトウェアは、位置に応じて同じ字母を使う代わりに複数の独立した文字を同じ字母に使う。これによってテキスト処理はさらに複雑になる。

UCS、Unicodeの文字特性とUnicodeのアルゴリズムはソフトウェア実装がこれらの文字を、その対応する分解から正しく表示するために必要なものをすべて提供する。そのためこれらの分解可能な互換文字は冗長で不必要なものとなる。それらが文字コードに存在することによって、テキストを正しく比較や照合するために余分なテキスト処理が必要になってしまう(Unicode正規化を参照)。しかも、これらの互換文字によって意味が追加されたり区別されたりすることはない。これらの文字にはテキスト描画処理とフォントがUnicode適合であるときに提供される描画結果との、視覚的な違いもない。さらに、これらの文字は他の文字コードとの往復変換のために必要なわけでもない。翻字によって、分解された文字を他の文字コードの対応する合成済み文字にマップできるからである。同様に、アラビア文字の語尾形のような文脈依存の字形は、その単語中の位置によって適切な従来文字コードの字形文字にマップできる。

これらの互換文字を捨てるために、テキスト処理ソフトウェアはいくつかのUnicodeの規約に適合しなければならない。ソフトウェアは以下のことができなければならない:

  1. 字母を表す文字と1つかそれ以上の独立した合成用ダイアクリティカルマークからダイアクリティカルマーク付きの書記素を合成すること。
  2. (書き手や読み手の判断によって)合字や文脈依存のグリフ変化形を置換できること。
  3. フォントデータから、もしくは必要に応じて合成することにより、小書き、縦書き、半角、全角用のグリフに置換してCJKVのテキストを(書き手や読み手の判断によって)縦方向に描画できること。
  4. 分数用スラッシュ‘’(U+2044) と任意の他の文字を使って分数を組み立てられること。
  5. ‘Combining Long Solidus Overlay’ (‘ ̸’: U+0338) と他の記号と組み合わせられること。たとえば、‘∃’(U+2203)、‘∈’(U+2208)、‘∋’(U+220B)に対する‘’(U+2204)、‘’(U+2209)や‘’(U+220C) 。

互換文字であると指定された5,402種類の文字のうち合計3,779文字が、不完全なUnicode実装のためにまとめて収録されている互換文字である。これらにはキーワード <initial>、<medial>、<final>、<isolated>、<fraction>、<wide>、<narrow>、<small>、<vertical>、<square> を付けられた互換文字がすべて含まれる。さらに、ほとんどすべての正準分解とほとんどの <compat> キーワードが付いた互換文字が含まれる (<compat> キーワードが付いた文字のうち例外となるのは囲み英数字、囲み漢字および後続の節で述べるものである)。

リッチテキスト互換文字

他の互換文字の多くは、Unicodeがリッチテキストであると考え、それゆえUnicodeとUCSの目標から外れたものからなる。ある意味では前節で述べた互換文字 — 従来のソフトウェアが合字や縦書きテキストを表示するためのもの — でさえリッチテキスト形からなると言える。なぜならばリッチテキストの規約がテキストの表示される方法を決定するからである。しかし、テキストの表示に合字を使うか使わないかや縦書きと横書きのどちらを使うかの選択は、どちらも意味を含まないリッチテキストである。それらは単なるスタイルの違いである。これはのような斜体、上付き文字、下付き文字やリストマーカーのような、スタイルがそれに伴う何らかの意味を暗示する他のリッチテキストとは対照的である。

プレーンテキストの比較、照合、処理、格納の目的では、リッチテキストの変化形は意味的に冗長である。たとえば、上付き数字 4 の使用は標準の数字 4 を使ってからそれを上付きにするリッチテキスト規約を使うことと識別不可能な可能性が高い。このようなリッチテキストを代替する文字は、来往するプレーンテキスト文字にリッチテキストの整形を施したものと視覚的に区別がつかないので、曖昧さを作り出す。これらのリッチテキスト互換文字には以下のものが含まれる:

  • 数学用英数記号。これらの記号は単にラテン文字とギリシア文字インド・アラビア数字に15の異なる書体で繰り返し複製しただけである。これらは数式表記用に任意の文字を提供するパレットを目的としている。しかし、これらは文字の符号化と視覚的なグリフの符号化との区別や、プレーンテキストの文字のみをサポートするというUnicodeの目標を損ないがちである。このようなスタイルを代わる代わる並べた数学記号用のパレットは、リッチテキストの規約を代わりに使うことで簡単に作成できる。
  • 括弧付き文字(マーカー)。これらは基本的にリストマーカー用として用意された文字である。プレーンテキストの構成要素ではない。しかも、UCSが提供する括弧付き文字の種類は限られているので、他のリッチテキスト規約を使うほうが適切である。
  • 丸付き英数字と丸付き漢字。この丸付き字形もマーカーがよくある用途である。繰り返しになるが、文字とともにリッチテキスト規約を使って文字を丸で囲むほうがより柔軟である。
  • さまざまな幅の空白とノーブレークスペース。これらの文字は単に、通常の空白 (U+0020) やノーブレークスペース (U+00A0) のリッチテキスト版である。代わりにトラッキング、カーニング、ワードスペーシング属性のような、他のリッチテキスト規約を使うべきである。
  • 上付き文字と下付き文字。上付きと下付きの文字はその多くが国際音声記号や他の文字体系とは実際に意味が異なる文字であり、実際にはリッチテキストの範疇には含まれない。しかし、それ以外のギリシア文字、ラテン文字、数字に関しては、単なるリッチテキストの表現形を構成しているだけである。これらのリッチテキストの上付き文字や下付き文字はこのリッチテキスト互換文字用のカテゴリに正しく所属する。これらのほとんどは "Superscripts and Subscripts" か "Basic Latin" ブロックに存在する。

以上のリッチテキスト互換文字のいずれについても、グリフの表示は通常その互換分解(関連)文字と異なる。しかし、これらは互換文字であるとみなされ、ユニコードコンソーシアムは使わないことを推奨している。なぜならばそれらはUnicodeがUCSと関連する規約によってサポートしようとしているプレーンテキスト文字ではないからである。リッチテキストはUnicodeの規約ではなく、HTMLCSSRTF等々のUnicode以外の規約によって処理されるべきである。

リッチテキスト互換文字は5,402種類の互換文字のうち1,451種類を占める。キーワード <circle> と <font> が付けられた互換文字は(以下に述べる意味的な違いのある3つを除けば)すべてこの中に含まれる; <compat> と正規文字のうち空白の変種11種; および "Superscripts and Subscripts" ブロックにある、キーワード <superscript> と <subscript> が付けられたもののうちいくつか。

意味的に違いのある文字

多くの互換文字は表現するグリフを他の文字と共有するかもしれないが、意味的には違いのある文字である。これらの文字のうちいくつかは、1つの用字系や表記体系に特化した他の文字コードのほとんどのために含まれている場合がある。たとえば、ISOや他のラテン文字集合はπ (pi) 用の文字を含んでいる可能性が高い。なぜならば、基本的に1つの表記体系や用字系に集中するとき、それらの文字コードはそうでもしなければよく使われる数学記号であるπ用の文字を含むことはないからである。しかし、Unicodeでは、数学者は世界中の既知の用字系から自由に文字を使ったり、数学的な集合や数学的な定数の代わりとして統合漢字を選択したりできる。今まで、Unicodeはごく少数の数学定数用に特定の意味的サポートを追加しただけである(たとえばプランク定数:ℎ U+210E やオイラー数:ℇ U+2107 はどちらもUnicodeが互換文字であると考えているものである)。そのためUnicodeはギリシア文字やヘブライ文字に基づくいくつかの数学記号を互換文字に指定している。これには以下のものが含まれる:

  • ヘブライ文字に基づく記号 (4): アレフ ( U+2135)、ベート ( U+2136)、ギーメル ( U+2137) およびダレット ( U+2138)
  • ギリシア文字に基づく記号 (8): ベータ (ϐ U+03D0)、シータ (ϑ U+03D1)、ファイ (ϕ U+03D5)、パイ (ϖ U+03D5)、カッパ (ϰ U+03F0)、ロー (ϱ U+03F1)、大文字のシータ (ϴ U+03F4)、プロスゲグラメニ (ι U+1FBE)
  • ラテン文字の異体 (1): Long Latin Letter S (ſ U+017F)。このラテン文字の字母はゲール語で使われる。

これらの互換文字はその互換分解文字とは、名前に "symbol" が付けられているという点でのみ区別されるが、数式の表記においては長年異なる意味を表している。しかし、すべての現実的な目的ではそれらは互換等価なギリシア文字やヘブライ文字と同じ意味を共有している。これらは意味的に識別可能な文字の境界線上にあると考えられるので、互換文字の合計数には含めていない。

Unicodeはその他の字母に似た記号28種類も互換文字に指定している。

加えて、いくつかの用字系は意味を区別するために上付きや下付きのグリフ位置を使う。これらの場合、上付き文字や下付き文字は単なるリッチテキストではなく、表記体系において — ダイアクリティカルマークと字母の混合と同様に — 異なる文字を構成する(合計130種)。

  • 国際音声記号のような発音記号からの、抽象的な音素を表現する文字112種類。グリフの位置が意味的な違いを表す ( U+1D2C – U+1D6A, U+1D78, U+1D9B – U+1DBF, U+02B0 – U+02B8, U+02E0 – U+02E4)
  • 漢文ブロックからの15文字 ( U+3191 – U+319F)
  • ティフナグ文字からの1文字: Tifinagh Modifier Letter Labialization Mark ( U+2D6F)
  • グルジア文字からの1文字: Modifier Letter Georgian Nar ( U+10FC)
  • ラテン1補助ブロックに含まれる男性記号 (º U+00BA) と女性記号 (ª U+00AA) の序数標識

最後に、Unicodeはローマ数字が同じグリフを共有するラテン文字と互換等価であると指定している。ここでUnicode標準はしばしば防ごうと努めてきた、グリフと文字の混同と同じ過ちを犯している。確かにこれらの文字が同じグリフを共有していた場合の視覚的な曖昧さを解決する必要はあるが、桁記号記数法の数字用である片方はラテン文字の大文字や小文字の‘i’とは確実に意味的な違いがある。同様の視覚的な曖昧さはラテン大文字A (U+0041) とギリシア大文字アルファ (Α U+0391) のような文字の間にもあるが、Unicodeはこれらの文字を統合していない。

  • 大文字のローマ数字: 1 ( U+2160)、5 ( U+2164)、10 ( U+2169)、50 ( U+216C)、100 ( U+216D)、500 ( U+216E)、1000 ( U+216F)
  • および小文字版: 1 ( U+2170)、5 ( U+2174)、10 ( U+2179)、50 ( U+217C)、100 ( U+217D)、500 ( U+217E)、1000 ( U+217F)
  • 18種類の合成済みローマ数字の大文字版と小文字版(2-4、6-9 および 11-12)

ローマ数字の1000は実際には同じ意味的な単位を表す第三の字形またはグリフを表現する第三の文字を持つ: One Thousand C D ( U+2180)。このグリフからは、ラテン文字 M 使用の慣習によって生ずるものを見られる。奇妙なことに、Unicodeは sign-value ローマ数字をまったく異なる(しかし視覚的には類似した)ラテン文字に統合しているが、インド・アラビアの位取り十進記数法に使われる数字はUCS全体を通して24回繰り返され(10種類の数字に合計240のコードポイントが使われ)、それらの間にはいかなる関係や分解マッピングも定義されていない。

互換文字の中に(18種類の合成済みローマ数字と11種類のヘブライ文字やギリシア文字に基づく記号に加えて)これら146種類の視覚的には類似しているが意味的に異なる文字が存在していることが、互換文字の話題を複雑にしている。内容の書き手は互換文字を使わないよう推奨することを提案している者もいる。しかし、特定の専門領域ではこれらの文字は重要であり、互換文字に混ざられなかった他の文字ときわめて類似している。たとえば、特定の学会においてはローマ数字の使用を同じグリフを共有するラテン文字と区別することには、楔形文字の数字と古代ギリシア文字の数字を区別することと違いがない。ローマ数字の文字をラテン字母の文字にまとめることは、意味的な違いを失わせる。同様の状況が上付きや下付きのグリフを使用する発音記号にも存在する。発音記号を使用する専門分野の学会では、書き手はリッチテキスト規約の助けを借りずに達成できるべきである。


  1. ^ Unicode Consortium - Glossary - Compatibility Character(英語)
  2. ^ Unicode Terminology English - Japanese, P-Q, Unicode, Inc.
  3. ^ The Unicode Consortium (2006-11-03). The Unicode Standard, Version 5.0. Addison-Wesley Professional. pp. p212. ISBN 978-0321480910. http://www.unicode.org/versions/Unicode5.0.0/ch06.pdf#G12861. 
  4. ^ 対応フォントが非常に少ない。表示できるのは「Nafees Nastaleeq」などごく少数。
  5. ^ 対応フォントが非常に少ない。表示できるのはDejaVuフォント(「DejaVu Sans」)などごく少数。


「Unicodeの互換文字」の続きの解説一覧




Unicodeの互換文字と同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Unicodeの互換文字」の関連用語

Unicodeの互換文字のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Unicodeの互換文字のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのUnicodeの互換文字 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS