Léxico de TI › Programação › COMPOUND_TEXT

COMPOUND_TEXT

Programação Svenska → Atualizado: 2026-10-09

A codificação de texto própria do X11 para seleções e títulos de janela, construída sobre a ISO 2022 para que uma mesma string pudesse trocar de conjunto de caracteres no meio — uma década antes de o UTF-8 tornar isso desnecessário.

O tipo STRING do protocolo X comportava apenas Latin-1, o que não ajudava muito em Tóquio. Por isso Robert Scheifler especificou o Compound Text para o X11R4, em 1989: uma sequência de bytes em que sequências de escape da ISO 2022 anunciam qual conjunto de caracteres vale dali em diante — ISO 8859-7 para grego, JIS X 0208 para japonês, GB 2312 para chinês — além de códigos de controle para a direção da escrita. O ICCCM o transformou no formato padrão para texto trocado entre clientes: um programa dono de uma seleção deveria poder entregá-la como COMPOUND_TEXT, e o WM_NAME adotou o mesmo tipo para títulos que não cabem em letras da Europa Ocidental.

O tratamento de locale da Xlib, a partir do R5, traduzia entre a codificação nativa do programa e o Compound Text com XmbTextListToTextProperty, e pouca gente além da própria Xlib chegou a tentar interpretar o formato por completo. Quando Juliusz Chroboczek propôs o átomo UTF8_STRING, no fim dos anos 1990, o EWMH o adotou como sua forma de texto, e GTK e Qt passaram a usar UTF-8 internamente. Hoje o Compound Text é o formato que um cliente moderno oferece por último na lista, para interlocutores mais velhos que o Unicode.

← Voltar ao léxico