Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Унифицированный код хангыль ( UHC ), [2] [a] или расширенный Wansung , [4] [b], также известный в Microsoft Windows как кодовая страница 949 ( Windows-949 , MS949 или двусмысленно CP949 ), является кодовой страницей Microsoft Windows для корейский язык . Это расширение кода Wansung ( KS C 5601 : 1987, кодируется как EUC-KR ), включающее все 11172 слога хангыль, присутствующие в Johab (KS C 5601: 1992 приложение 3). [4] [2]Это соответствует заранее составленным слогам, доступным в Unicode 2.0 и более поздних версиях.

Недостатком кода Wansung является то, что он назначает коды только для 2350 предварительно составленных слогов хангыль, которые имеют свои собственные кодовые точки KS X 1001 (KS C 5601) (из 11172 в целом, не считая тех, которые используют устаревшее хамо), и требует, чтобы другие использовали восемь Последовательности -байтовые композиции, которые не поддерживаются некоторыми частичными реализациями стандарта. [5] UHC решает эту проблему, присваивая единые коды для всех возможных слогов, построенных с использованием современного джамо, путем выполнения назначений вне пространства кодирования, используемого для KS X 1001.

Диапазон ведущего байта расширяется до 0x 81 – FE, а диапазон ведомого байта расширяется до 0x41–5A, 0x61–7A и 0x81 – FE (в EUC-KR оба диапазона равны 0xA1 – FE). Коды вне диапазонов EUC-KR используются для дополнительного хангыля. [6]

Терминология [ править ]

Единый код хангыль не зарегистрирован в IANA в качестве стандарта для передачи информации через Интернет. [7] Альтернативы включают UTF-8 . Однако стандарт кодирования W3C / WHATWG, используемый HTML5, включает расширения Unified Hangul Code в свое определение «EUC-KR». [1]

Microsoft присваивает Windows-949 метку «ks_c_5601-1987», [8] [9], которая правильно применяется к самому KS X 1001 ( KS C 5601 - это оригинальное название KS X 1001). [10] WHATWG рассматривает метку «ks_c_5601-1987» как синоним «EUC-KR» с целью «совместимости с развернутым контентом». [11] Консорциум Unicode „ИСП / EASTASIA“ коллекция «ы отозванные отображений , включенное отображение для Unified хангылите кодекс как„KSC5601.TXT“, с автоматически полученными отображениями для 7-битного КС Х 1001 включена в качестве„KSX1001.TXT“ . [12]

Кодовая страница IBM 949 является еще одним расширением EUC-KR, не имеющим отношения к нему. Международные компоненты для Unicode (ICU) используют «cp949», «949» или «ibm-949» для обозначения этой кодовой страницы IBM, [13] и «ms949» или «windows-949» (или несколько вариантов «ks_c_5601-» 1987 ") для обозначения отображения UHC в Windows. [14] Python , напротив, распознает «cp949», «949», «ms949» и «uhc» как метки для UHC и не включает кодек IBM-949. [15] Из этикеток, содержащих номер кодовой страницы, WHATWG распознает только «windows-949». [11]

Кодовая страница IBM для Unified Hangul Code называется Code page 1363 ( IBM-1363 ) или "Korean MS-Win". Это комбинация кодовой страницы SBCS 1126 и кодовой страницы DBCS 1362. [16] [17] [18] [19] [20] Она отличается тем, что имеет однобайтовое отображение 0x5C на знак Won (U + 20A9); [21] [22] [23] Windows отображает 0x5C в U + 005C (кодовая точка Unicode для обратной косой черты ), как в ASCII, [14] хотя шрифты часто по-прежнему отображают это как знак Won. [24] Отображение в Юникоде волнового тире(0xA1AD) также отличается: отображение IBM отдает предпочтение U + 301C [25], тогда как отображение Microsoft отдает предпочтение U + 223C (оператор тильды). [26] Отображение IBM для UHC доступно как «ibm-1363» в ICU, [21] тогда как кодек ICU «windows-949» упоминается как IBM-1261 в некоторых комментариях к исходному коду ICU. [27]

Сноски [ править ]

  1. ^ Корейский : 통합형 한글 코드 [3] , латинизированный :  Tonghabhyeong Hangeul Kodeu
  2. ^ Корейский : 확장 완성형 , романизированный :  Hwagjang Wanseonghyeong

Ссылки [ править ]

  1. ^ a b van Kesteren, Anne , "5. Индексы (§ индекс EUC-KR)" , Стандарт кодирования , WHATWG
  2. ^ a b «ИНФОРМАЦИЯ: Наборы символов хангыль (корейский)» , Служба поддержки Microsoft, Microsoft
  3. ^ «한글 코드 에 대하여» (на корейском языке). W3C.
  4. ^ a b Зигри, Дьюла (18.06.2002). «КСК и УХК» .
  5. ^ Шин, Jungshik. "Что такое KS X 1001 (KS C 5601) и другие коды хангыля?" . Хангыль и Интернет в Корее FAQ .
  6. ^ Лунде, Кен (13 января 2009). «Приложение F: Методы кодирования поставщика» (PDF) . CJKV Обработка информации (2-е изд.). O'Reilly Media . ISBN  978-0-596-51447-1.
  7. ^ «Наборы символов» . Iana.org . Проверено 11 января 2017 .
  8. ^ «Свойство Encoding.WindowsCodePage - .NET Framework (текущая версия)» . MSDN . Microsoft.
  9. ^ «Идентификаторы кодовой страницы» , Центр разработки для Windows , Microsoft
  10. ^ IBM ; Консорциум Unicode . "convrtrs.txt" . Международные компоненты для Unicode . Версия 59180.0.1. <quote from = "Jungshik Shin"> [...] использование KS C 5601 или связанных имен для обозначения EUC-KR или windows-949 очень вводит в заблуждение [...] Это просто название корейского кода 94 x 94 стандарт набора символов, который может быть вызван либо в GL (со сбросом MSB), либо в GR (с установленным MSB).
  11. ^ a b van Kesteren, Энн . «4.2. Имена и ярлыки» . Стандарт кодирования . WHATWG.
  12. ^ Jungshik Шин. «KSX1001.TXT: KS X 1001 в таблицу Unicode» . Unicode, Inc.
  13. ^ "ibm-949_P110-1999 (псевдоним cp949)" , Converter Explorer , Международные компоненты для Unicode
  14. ^ a b "windows-949-2000" , Converter Explorer , Международные компоненты для Unicode
  15. ^ «кодеки - Реестр кодеков и базовые классы § Стандартные кодировки» . Документация Python 3.7.2 . Фонд программного обеспечения Python.
  16. ^ «Кодированные идентификаторы набора символов - CCSID 1363» , IBM Globalization , IBM, заархивировано из оригинала 29 ноября 2014 г.
  17. ^ "Кодовая страница 1126 информационного документа" . Архивировано из оригинала на 2017-01-16.
  18. ^ "Информационный документ CCSID 1126" . Архивировано из оригинала на 2016-03-27.
  19. ^ "Кодовая страница 1362 информационного документа" . Архивировано из оригинала на 2017-03-17.
  20. ^ "Информационный документ CCSID 1362" . Архивировано из оригинала на 2016-03-27.
  21. ^ a b «ibm-1363» , Converter Explorer , Международные компоненты для Unicode
  22. ^ Кодовая страница CPGID 01126 (pdf) (PDF) , IBM
  23. ^ Кодовая страница CPGID 01126 (txt) , IBM
  24. ^ Каплан, Майкл С. (2005-09-17), "Когда обратная косая черта не является обратной косой чертой?" , Сортировка всего
  25. ^ "ibm-1363_P110-1997 (ведущий байт A1)" . Демонстрация ICU - Converter Explorer . Международные компоненты для Unicode.
  26. ^ "windows-949-2000 (ведущий байт A1)" . Демонстрация ICU - Converter Explorer . Международные компоненты для Unicode.
  27. ^ См. Для справки ucnv_lmb.cpp (Брендан Мюррей, Джим Снайдер-Грант), где главный байт 0x11 прокомментирован как относящийся к «корейскому: ibm-1261» после определенияULMBCS_GRP_KO, но он сопоставлен с"windows-949"кодеком ICU вOptGroupByteToCPNameпозже массив в файле.

Внешние ссылки [ править ]

  • Справочник Microsoft по Windows-949
  • Документация IBM для IBM-1363
  • Преобразование Windows-949 в Unicode
  • Файлы сопоставления международных компонентов для Unicode (ICU): ibm-1363_P110-1997.ucm , ibm-1363_P11B-1998.ucm и windows-949-2000.ucm
  • Демонстрация ICU для Windows-949 (с сопоставлениями ASCII)
  • Демонстрация ICU для IBM-1363 (с 0x5C в качестве знака Won)