LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Спасибо. Остается неясным как при такой методике можно вывести символы >65536.

А где ты их возьмешь? -iso10646-1 — это только BMP.

$ man unicode

The UCS standard (ISO 10646) describes a 31-bit character set architec‐
ture  consisting  of  128  24-bit  groups, each divided into 256 16-bit
planes made up of 256 8-bit rows with 256  column  positions,  one  for
each character.  Part 1 of the standard (ISO 10646-1) defines the first
65534 code positions (0x0000 to 0xfffd), which form the Basic Multilin‐
gual  Plane  (BMP), that is plane 0 in group 0.

UPD. К слову, xlib внутри своих функций оперирует UCS-4, а не UCS-2 (перекодирование из UTF-8 в UCS-2 и UCS-4 - это RFC 2279). см. преобразование /lib/libX11/src/xlibi18n/lcUniConv/utf8.h

Исправление Zubok, :

Спасибо. Остается неясным как при такой методике можно вывести символы >65536.

А где ты их возьмешь? -iso10646-1 — это только BMP.

$ man unicode

The UCS standard (ISO 10646) describes a 31-bit character set architec‐
ture  consisting  of  128  24-bit  groups, each divided into 256 16-bit
planes made up of 256 8-bit rows with 256  column  positions,  one  for
each character.  Part 1 of the standard (ISO 10646-1) defines the first
65534 code positions (0x0000 to 0xfffd), which form the Basic Multilin‐
gual  Plane  (BMP), that is plane 0 in group 0.

UPD. К слову, xlib внутри своих фйункций оперирует UCS-4, а не UCS-2 (перекодирование из UTF-8 в UCS-2 и UCS-4 - это RFC 2279). см. преобразование /lib/libX11/src/xlibi18n/lcUniConv/utf8.h

Исходная версия Zubok, :

Спасибо. Остается неясным как при такой методике можно вывести символы >65536.

А где ты их возьмешь? -iso10646-1 — это только BMP.

$ man unicode

The UCS standard (ISO 10646) describes a 31-bit character set architec‐
ture  consisting  of  128  24-bit  groups, each divided into 256 16-bit
planes made up of 256 8-bit rows with 256  column  positions,  one  for
each character.  Part 1 of the standard (ISO 10646-1) defines the first
65534 code positions (0x0000 to 0xfffd), which form the Basic Multilin‐
gual  Plane  (BMP), that is plane 0 in group 0.