IT用語集 › プログラミング › COMPOUND_TEXT

COMPOUND_TEXT

プログラミング Svenska → 更新: 2026-10-21

セレクションやウィンドウタイトルのためのX11独自の文字エンコーディング。ISO 2022を土台に、1つの文字列の途中で文字集合を切り替えられた。UTF-8が登場するまでの話である。

プロトコルの STRING 型はLatin-1しか持てず、東京ではまるで役に立たなかった。そこでRobert Scheifler がX11R4(1989年)で策定したのがCompound Textである。ISO 2022のエスケープシーケンスで「ここから先はこの文字集合」と宣言するバイト列で、ギリシャ語ならISO 8859-7、日本語ならJIS X 0208、中国語ならGB 2312を使い、書字方向の制御コードも含む。ICCCMはこれをクライアント間のテキスト受け渡しの標準形式とし、セレクションの所有者は COMPOUND_TEXT でも渡せるべきだとした。WM_NAMEも、西欧文字で書けないタイトルにこの型を使う。

R5以降のXlibはロケールの仕組みを通じ、プログラム固有のエンコーディングとの変換を XmbTextListToTextProperty で行ったが、Xlib以外でこの形式を完全に解析しようとする者はほとんどいなかった。1990年代末にJuliusz Chroboczekが UTF8_STRING アトムを提案すると、EWMHがこれをテキスト形式に採用し、GTKとQtも内部でUTF-8へ移行した。現在のCompound Textは、Unicode以前の相手のために、最後に提示される形式である。

← 用語集に戻る