WikiDer > Единый код хангыль

Unified Hangul Code
Единый код хангыль
Единый код хангыля.svg
Макет единого кода хангыль
Псевдоним (а)Кодовая страница Windows 949, Кодовая страница IBM 1363
Язык (и)Корейский
СтандартСтандарт кодирования WHATWG (как «EUC-KR»)[1]
КлассификацияРасширенный ISO 646,[а] кодирование с переменной шириной, Кодирование CJK
РасширяетсяEUC-KR
Другая связанная кодировка (и)КПС 9566-2003, КПС 9566-2011
  1. ^ Не в самом строгом смысле этого слова, поскольку байты ASCII могут отображаться как байты следа, хотя это ограничено байтами букв.

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

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

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

Терминология

Единый код хангыль не зарегистрирован в IANA как стандарт для передачи информации через Интернет.[7] Альтернативы включают UTF-8. Тем не менее W3C/WHATWG Стандарт кодирования, используемый HTML5 включает расширения Унифицированного кода хангыль в свое определение "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Коллекция отозванных сопоставлений «OBSOLETE / EASTASIA» включала сопоставления для Unified Hangul Code как «KSC5601.TXT» с автоматически полученными сопоставлениями для 7-битного KS X 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 называется Кодовая страница 1363 (IBM-1363) или "корейский MS-Win". Это комбинация SBCS Кодовая страница 1126 и DBCS Кодовая страница 1362.[16][17][18][19][20] Он отличается тем, что имеет однобайтовое отображение 0x5C в Выиграл знак (U + 20A9);[21][22][23] Windows сопоставляет 0x5C с U + 005C (кодовая точка Unicode для обратная косая черта) как в ASCII,[14] хотя шрифты часто по-прежнему отображают это как знак победы.[24] Отображение Unicode волнового тире (0xA1AD) также отличается: отображение IBM отдает предпочтение U + 301C,[25] в то время как отображение Microsoft отдает предпочтение U + 223C (оператор тильды).[26] Отображение IBM для UHC доступно как "ibm-1363" в ICU,[21] тогда как кодек ICU "windows-949" упоминается как IBM-1261 в некоторых комментариях к исходному коду ICU.[27]

Сноски

  1. ^ Корейский: 통합형 한글 코드[3], романизированныйТонхабхён Хангыль Кодеу
  2. ^ Корейский: 확장 완성형, романизированныйХвагчжан Вансонхён

Рекомендации

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

внешняя ссылка