結合文字
#文字コード
Unicode の特徴の1つとして、複数の部品の合成によって 1文字を表すことを可能している点がある
合成のために用いる文字を 結合文字 ( combining character ) と呼ぶ
ñ の文字は、n と合成用のチルダ(~)の組み合わせによって表現される
合成のベースになる文字 n: 基底文字
チルダ(~): 結合文字
基底文字と結合文字は、それぞれ1つの符号位置を持ち、複数の符号位置の組み合わせによって1文字が構成される
結合文字は合成のためにのみ用い、単独では用いない!
ñ という合成した形に対して、Unicode は 1つの符号位置を与えているため、以下の両方が存在する
複数の符号位置を用いて合成を表す符号化
n ( U+006E ) と ~ ( U+0303 )
合成済みの単一の符号位置を用いる符号化
ñ ( U+00F1 )
code:text
ñ ( U+00F1 ) = n ( U+006E ) + ~ ( U+0303 )
2つ以上の結合文字を連続させて、基底文字の上下に複数のダイアクリティカルマークをつけることも可能
結合文字は、ラテン文字だけでなく、平仮名や片仮名でも、合成用の濁点・半濁点がある
「ぱ」を表す方法 2つ
ぱ U+3071
ぱ U+306F(は) と U+309A(合成用の半濁点)
code:text
ぱ ( U+3071 )
は ( U+306F ) + 合成用の半濁点 ( U+309A )
Unicode には、合成用でない濁点(゛)・半濁点(゜)も用意されていて、JIS X 0208 における単独の濁点・半濁点を対応づけられる
1つの文字が複数の符号化表現を持つことは問題になるため、いずれかの表現方式に揃える方法が、正規化 ( normalization )という手法として用意されている
(っ‘-’)╮=͟͟͞͞ブォン
参考にした書籍
[改訂新版]プログラマのための文字コード技術入門 第3章 3.7 "結合文字 1文字が1符号位置ではない"
Tips
この記事書くにあたって、Mac で特殊文字の入力が少し手こずってしまい、色々参考にした
キーボードビューアを起動、Optionキーを押して表示されるデッドキーを使って入力する方法がやりやすかった
https://note.com/asn5x/n/n16ed654532ea
https://support.apple.com/ja-jp/guide/mac-help/mh27474/mac