Унифицированный код хангыль ( 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 и более поздних версиях.
Псевдоним (а) | Кодовая страница Windows 949, Кодовая страница IBM 1363 |
---|---|
Язык (и) | Корейский |
Стандарт | Стандарт кодирования WHATWG (как «EUC-KR») [1] |
Классификация | Extended ISO 646 , [а] переменной ширины кодирование , CJK кодирование |
Расширяется | EUC-KR |
Другая связанная кодировка (и) | KPS 9566 -2003 , KPS 9566-2011 |
| |
Код 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] Отображение Unicode волнового тире (0xA1AD) также отличается: отображение IBM отдает предпочтение U + 301C [25], тогда как отображение Microsoft отдает предпочтение U + 223C (оператор тильды). [26] Отображение IBM для UHC доступно как «ibm-1363» в ICU, [21] тогда как кодек ICU «windows-949» упоминается как IBM-1261 в некоторых комментариях к исходному коду ICU. [27]
Сноски
- ^ Корейский : 통합형 한글 코드 [3] , латинизированный : Tonghabhyeong Hangeul Kodeu
- ^ Корейский : 확장 완성형 , романизированный : Hwagjang Wanseonghyeong
Рекомендации
- ^ a b van Kesteren, Anne , "5. Индексы (§ индекс EUC-KR)" , Стандарт кодирования , WHATWG
- ^ а б «ИНФОРМАЦИЯ: наборы символов хангыль (корейский)» , служба поддержки Майкрософт, Майкрософт
- ^ «한글 코드 에 대하여» (на корейском). W3C.
- ^ а б Жигри, Дьюла (18.06.2002). «КСК и УХК» .
- ^ Шин, Юнгшик. "Что такое KS X 1001 (KS C 5601) и другие коды хангыля?" . Хангыль и Интернет в Корее FAQ .
- ^ Лунде, Кен (13 января 2009 г.). «Приложение F: Методы кодирования поставщика» (PDF) . CJKV Обработка информации (2-е изд.). O'Reilly Media . ISBN 978-0-596-51447-1.
- ^ «Наборы символов» . Iana.org . Проверено 11 января 2017 .
- ^ «Свойство Encoding.WindowsCodePage - .NET Framework (текущая версия)» . MSDN . Microsoft.
- ^ «Идентификаторы кодовой страницы» , Центр разработки для Windows , Microsoft
- ^ IBM ; Консорциум Unicode . "convrtrs.txt" . Международные компоненты для Unicode . Версия 59180.0.1.
[...] использование KS C 5601 или связанных имен для обозначения EUC-KR или windows-949 очень вводит в заблуждение [...] Это просто название корейского кода 94 x 94 стандарт набора символов, который может быть вызван либо в GL (со сбросом MSB), либо в GR (с установленным MSB).
- ^ а б ван Кестерен, Энн . «4.2. Имена и ярлыки» . Стандарт кодирования . WHATWG.
- ^ Юнгшик Шин. «KSX1001.TXT: KS X 1001 в таблицу Unicode» . Unicode, Inc.
- ^ «ibm-949_P110-1999 (псевдоним cp949)» , Converter Explorer , Международные компоненты для Unicode
- ^ а б "windows-949-2000" , Converter Explorer , Международные компоненты для Unicode
- ^ «кодеки - реестр кодеков и базовые классы § Стандартные кодировки» . Документация Python 3.7.2 . Фонд программного обеспечения Python.
- ^ «Идентификаторы кодированного набора символов - CCSID 1363» , IBM Globalization , IBM, заархивировано из оригинала 29 ноября 2014 г.
- ^ «Кодовая страница 1126 информационного документа» . Архивировано из оригинала на 2017-01-16.
- ^ «Информационный документ CCSID 1126» . Архивировано из оригинала на 2016-03-27.
- ^ «Кодовая страница 1362 информационного документа» . Архивировано из оригинала на 2017-03-17.
- ^ «Информационный документ CCSID 1362» . Архивировано из оригинала на 2016-03-27.
- ^ а б «ibm-1363» , Converter Explorer , Международные компоненты для Unicode
- ^ Кодовая страница CPGID 01126 (pdf) (PDF) , IBM
- ^ Кодовая страница CPGID 01126 (txt) , IBM
- ^ Каплан, Майкл С. (17 сентября 2005 г.), "Когда обратная косая черта не является обратной?" , Сортировка всего
- ^ «ibm-1363_P110-1997 (ведущий байт A1)» . Демонстрация ICU - Converter Explorer . Международные компоненты для Unicode.
- ^ "windows-949-2000 (ведущий байт A1)" . Демонстрация ICU - Converter Explorer . Международные компоненты для Unicode.
- ^ См. Для справки 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)