В Unicode , Private Use Area ( НСД ) представляет собой диапазон кодовых точек , которые, по определению, не будут назначены символы в Консорциумом Unicode . [1] Определены три области частного использования: одна в базовой многоязычной плоскости ( U + E000 – U + F8FF ) и по одной в каждой и почти закрывающей плоскости 15 и 16 ( U + F0000 – U + FFFFD , U + 100000 – U + 10FFFD). Кодовые точки в этих областях нельзя рассматривать как стандартные символы в самом Юникоде. Они намеренно оставлены неопределенными, чтобы третьи стороны могли определять свои собственные символы без конфликта с назначениями Консорциума Unicode. В соответствии с Политикой стабильности Unicode [2] области частного использования будут по-прежнему выделены для этой цели во всех будущих версиях Unicode.
Назначения для персонажей из области частного использования не обязательно должны быть «частными» в смысле строго внутренними по отношению к организации; ряд схем распределения был опубликован несколькими организациями. Такая публикация может включать в себя шрифт, поддерживающий определение (показывающий глифы), и программное обеспечение, использующее символы частного использования (например, графический символ для функции «печать документа»). По определению, несколько частных лиц могут назначать разные символы одной и той же кодовой точке, в результате чего пользователь может видеть один частный символ из установленного шрифта там, где предназначался другой.
Определение
Согласно определению Unicode, кодовым точкам в областях частного использования назначаются символы - они не являются несимвольными, зарезервированными или неназначенными. Их категория - " Other, private use (Co)
", имена персонажей не указаны. Никаких репрезентативных глифов не предусмотрено, а семантика символов оставлена на усмотрение частного лица.
Символам частного использования назначаются кодовые точки Unicode, интерпретация которых не указана в этом стандарте и использование которых может определяться частным соглашением между сотрудничающими пользователями. Эти символы предназначены для частного использования и не имеют определенной интерпретируемой семантики, кроме как по частному соглашению.
…
Для символов частного использования не предусмотрены диаграммы, поскольку любые такие символы по самой своей природе определены только вне контекста этого стандарта. [3]
Назначение
В базовой многоязычной плоскости (плоскость 0) блок под названием «Область частного использования» имеет 6400 кодовых точек.
Самолеты 15 и 16 почти [примечание 1] полностью отнесены к двум дополнительным Зонам частного использования, Зоне дополнительного частного использования-A и Зоне дополнительного частного использования-B соответственно. В UTF-16 для этих и только этих плоскостей используется подмножество суррогатов высокого уровня (U + DB80..U + DBFF), которые называются суррогатами высокого частного использования .
v т е Юникод: области частного использования | ||||
---|---|---|---|---|
Определение по свойству символа: General Category=Co[a] [b] | ||||
Диапазон | Самолет | Имя блока | Количество кодовых точек | Примечание |
U + E000..U + F8FF | БМП (0) | Зона частного использования | 6 400 | |
U + F0000..U + FFFFD [c] | ЩЕНОК (15) [d] | Дополнительное частное использование - A | 65 534 | UTF-16 кодирует эти символы с помощью кодовых точек из блока High Private Use Surrogates (U + DB80..U + DBFF) в BMP. |
U + 100000..U + 10FFFD [c] | ЩЕНОК (16) [d] | Дополнительная зона частного использования-B | 65 534 | |
Заметки
|
История
До разработки UTF-16 U + D800..U + DFFF также входили в зону частного использования. Эти кодовые точки были заменены на суррогатные половинки, используемые UTF-16. [ необходима цитата ]
Исторически сложилось так, что плоскости от E0 (224) до FF (255) и группы от 60 (96) до 7F (127) универсального кодированного набора символов (то есть от U + E00000 до U + FFFFFF и от U + 60000000 до U + 7FFFFFFF) также были предназначено для частного использования. Эти диапазоны были удалены из указанных диапазонов частного использования, когда UCS была ограничена семнадцатью самолетами, доступными в UTF-16. [4]
Применение
Инициатива по стандартизации использует
Многие люди и организации создали коллекции персонажей для PUA. Некоторые из этих соглашений о частном использовании опубликованы, поэтому другие разработчики PUA могут стремиться к неиспользуемым или менее используемым кодовым точкам, чтобы предотвратить дублирование. Некоторые символы и сценарии, ранее закодированные в соглашениях о частном использовании, фактически были полностью закодированы в Unicode, что потребовало сопоставлений из PUA с другими кодовыми точками Unicode.
Одно из наиболее известных и широко применяемых соглашений PUA поддерживается ConScript Unicode Registry (CSUR). CSUR, который официально не поддерживает или связан с Консорциумом Unicode, обеспечивает отображение для построенных сценариев, таких как Клингонской pIqaD и Ференги скрипт (Star Trek), тенгваре и Cirth (рукописные и рунические скрипты Дж.Р.Р. Толкиена), Александр Мелвилл Белл Видимый Речь и алфавит доктора Сьюза из « По ту сторону зебры» . CSUR ранее закодирован нерасшифрованные Фестские символы, а также шавиан и Дезрают алфавиты, которые все были приняты для официальной кодировки в Unicode.
Еще одно распространенное соглашение PUA поддерживается Medieval Unicode Font Initiative (MUFI). Этот проект пытается поддержать все сокращения писцов , лигатуры, заранее составленные символы , символы и альтернативные формы букв, встречающиеся в средневековых текстах, написанных латинским алфавитом. Конкретная цель MUFI - экспериментально определить, какие символы необходимы для представления этих текстов, и чтобы эти символы были официально закодированы в Unicode. Начиная с версии 5.1 Unicode, 152 символа MUFI были включены в официальную кодировку Unicode.
Некоторые согласованные коллекции символов PUA существуют частично или полностью, потому что Консорциум Unicode не спешит их кодировать. Некоторые, например, непредставленные языки, скорее всего, в будущем будут закодированы. Некоторые необычные случаи, такие как вымышленные языки, выходят за рамки обычных возможностей Unicode, но явно не исключаются принципами Unicode и могут со временем проявиться (например, системы письма Star Trek и Толкина). В других случаях предлагаемая кодировка нарушает один или несколько принципов Unicode и, следовательно, вряд ли когда-либо будет официально признана Unicode - в основном, когда пользователи хотят напрямую кодировать альтернативные формы, лигатуры или комбинации базовых символов и диакритических знаков (например, Схема TUNE).
Издательская организация | Тема | Используемая площадь PUA | Шрифт |
---|---|---|---|
CSUR | Искусственные скрипты | ПУА (БМП) и Самолет 15 | Code2000 |
MUFI | Средневековые сценарии | PUA (BMP) | несколько |
SIL | Фонетика и языки | PUA (BMP) | Charis SIL |
ТИТУС | Древние и средневековые письменности | PUA (BMP) | TITUS Cyberbit Basic |
- Emoji - это кодировка графических символов или смайлов, используемых в японских беспроводных сообщениях и веб-страницах. В Unicode 6.0 и более поздних версиях многие из них были закодированы в блоке « Разные символы и пиктограммы» и в других местах SMP .
- GB / T 20542-2006 («Расширение набора тибетских кодированных символов A») и GB / T 22238-2008 («Расширение набора тибетских кодированных символов B») - это китайские национальные стандарты, которые используют PUA для кодирования предварительно составленных тибетских лигатур .
- GB 18030 и GBK используют PUA для временного кодирования символов, отсутствующих в стандартах Unicode.
- Институт эстонского языка использует НСД для кодирования латиницы и кириллицы precomposed символов [5] , которые не имеют кодировки Unicode.
- Project Font Free Tengwar использует другое отображение из призывник регистра Unicode , который в значительной степени следует 2001-03-07 Tengwar дискуссионного документа Майкл Everson, но расходится в некоторых деталях.
- Стандарт MARC 21 использует PUA для кодирования восточноазиатских символов, присутствующих в MARC-8 [6] , которые не имеют кодировки Unicode.
- СИЛЫ Corporate НСД использует PUA для кодирования символов , используемых в языках меньшинств , которые еще не были приняты в Unicode.
- Проект STIX Fonts использует PUA для предоставления исчерпывающего набора шрифтов математических символов и алфавитов, многие из которых теперь также доступны в SMP, например, в блоке Mathematical Alphanumeric Symbols .
- Новое кодирование тамильского Unicode (TUNE) [7] - это предложенная схема кодирования тамильского языка, которая устраняет очевидные недостатки в текущей кодировке Unicode.
Использование поставщика
Неформально диапазон от U + F000 до U + F8FF известен как область корпоративного использования.
- Список Adobe Glyph List использовал PUA для некоторых своих глифов. [8]
- Apple перечисляет диапазон из 1 280 символов в своей документации для разработчиков [9] U + F400 – U + F8FF в PUA для использования Apple. Из них только 311 используется в диапазоне U + F700 – U + F8FF ( NeXT ( NeXTSTEP и OPENSTEP ) и Apple (Mac OS X AppKit)). [10]
- Одним из них является U + F8FF, логотип Apple, обычно поддерживаемый 8-битными наборами Apple.
- WGL4 использует PUA (U + F001 и U + F002) для кодирования дубликатов лигатур f (U + FB01) fl (U + FB02). [11]
- Несуществующая функция Microsoft Services For Macintosh использовала U + F001 - U + F029 в качестве замены для специальных символов, разрешенных в HFS, но запрещенных в NTFS , и U + F02A для логотипа Apple. [12] [13]
- В старых версиях своего компонента RichEdit Microsoft отображала U + F020 – U + F0FF внутри PUA на символьные шрифты. Для любого символа в этом диапазоне RichEdit покажет символ из символьного шрифта вместо определяемого конечным пользователем символа (EUDC) [14] [15]
- AutoCAD [ требуется пояснение ] использует U + F8FC – U + F8FE для ⌀ (знак диаметра), ± ( знак плюс-минус ) и ° (знак градуса) соответственно.
- Некоторые шрифты помещают клавишу с логотипом Windows в
U+F000
. - Номер
U+F000
является номер последовательности , начиная с 13 или 18 в некоторых видеоиграх , как Agar.io . - В Ubuntu ,
U+E0FF
отображается как «Круг друзей» логотип [16] иU+F200
является «убунту» в гарнитуре Ubuntu с помощью верхнего индекса «Круг друзей» (это само по себеU+F0FF
). [17] - 3270 шрифт включает Debian логотип на
U+F100
- В Linux Libertine шрифта,
U+E000
отображает Tux , талисман Linux - Шрифт Высокого шрифт значка использует PUA для отображения различных глифов.
- Powerline, плагин строки состояния для vim, используйте U + E0A0 – U + E0A2 и U + E0B0 – U + E0B3 для дополнительных символов рисования прямоугольников . [18] [19]
- На гарнитуре Fira Sans, используемой в Firefox OS ,
U+E003
отображается логотип Mozilla (голова динозавра). - Lotus Multi-Byte Character Set (LMBCS) - кодировка и набор символов, которые используются внутри Lotus / IBM Lotus 1-2-3 , Symphony , SmartSuite , Notes , Domino, а также в ряде сторонних продуктов, таких как Microsoft Works , использует некоторые символы (
U+F862
-U+F89F
иU+F8FB
-U+F8FE
) в области частного использования для символов, не определенных в Unicode. Из них,U+F8FB
как известно, зарезервирована для коронки валюты символа ( «Kr»), а такжеU+F8FC
иU+F8FD
позже были отображено наU+FB02
( й ) иU+FB01
( ц ) соответственно. Кроме того, когда коды UTF-16 встроены в LMBCS, коды UTF-16, соответствующиеU+F601
сквозномуU+F6FF
, заменяются кодами UTF-16, которые будут содержать нулевые байты , поскольку LMBCS не содержит встроенных нулевых байтов. [20] [21] - IBM зарезервировала несколько идентификаторов кодовых страниц для кодовых страниц PUA: кодовая страница 1445 (IBM AFP PUA No. 1), кодовая страница 1446 (ISO 10646 UCS-PUP15 ), кодовая страница 1447 (ISO 10646 UCS-PUP16 ), кодовая страница 1449 (IBM PUA по умолчанию).
- Файловая система находится в ОС Windows использует
U+F000
дляU+F0FF
блокировки , чтобы избежать специальных символов .
Блоки Unicode PUA
В Unicode есть три блока PUA. [22]
Зона частного использования | |
---|---|
Диапазон | U + E000..U + F8FF (6400 кодовых точек) |
Самолет | BMP |
Скрипты | Неизвестный |
Назначенный | 6400 кодовых точек |
Неиспользованный | 0 зарезервированных кодовых точек |
История версий Unicode | |
1.0.0 (1991) | 5632 (+5 632) |
1.0.1 (1992) | 6 400 (+768) |
Примечание . В версии 1.0.1 был перемещен и расширен блок Private Use Area (ранее находившийся по адресу U + E800-U + FDFF в версии 1.0.0). [23] [24] [25] |
Дополнительное частное использование - A | |
---|---|
Диапазон | U + F0000..U + FFFFF (65 536 кодовых точек) |
Самолет | СПУА-А |
Скрипты | Неизвестный |
Назначенный | 65 534 кодовых точки |
Неиспользованный | 0 зарезервированных кодовых точек 2 несимвола |
История версий Unicode | |
2.0 (1996) | 65 534 (+65 534) |
Примечание : [24] [25] |
Дополнительная зона частного использования-B | |
---|---|
Диапазон | U + 100000..U + 10FFFF (65 536 кодовых точек) |
Самолет | СПУА-Б |
Скрипты | Неизвестный |
Назначенный | 65 534 кодовых точки |
Неиспользованный | 0 зарезервированных кодовых точек 2 несимвола |
История версий Unicode | |
2.0 (1996) | 65 534 (+65 534) |
Примечание : [24] [25] |
Персонажи частного использования в других наборах символов
Концепция резервирования определенных кодовых точек для частного использования основана на аналогичном более раннем использовании в других наборах символов. В частности, многие устаревшие символы в сценариях Восточной Азии продолжают использоваться в определенных именах или других ситуациях, и поэтому некоторые наборы символов для этих сценариев допускают использование символов частного использования (например, определяемые пользователем плоскости CNS 11643 или гайдзи в некоторых японских кодировках). Стандарт Unicode ссылается на эти виды использования под названием «Определение символов конечного пользователя» (EUCD). [3]
Кроме того, блок управления C1 содержит два кода, предназначенных для "функций управления" в частном использовании ECMA-48 : 0x91 для частного использования, один (PU1) и 0x92. частное использование два (PU2). [26] [27] Unicode включает их вU + 0091 Cc
), а некак символычастного использования (категорияCo
). [24] [28]
Кодировки, которые не имеют областей частного использования, но имеют более или менее неиспользуемые области, такие как ISO / IEC 8859 и Shift JIS , стали свидетелями развития неконтролируемых вариантов этих кодировок. [29] Что касается Unicode, компании-разработчики программного обеспечения могут использовать Области частного использования для своих желаемых дополнений.
Заметки
- ^ Последние два символа каждой плоскости определены как не-символы . Остальные 65 534 символа каждого из самолетов 15 и 16 назначены как символы частного использования.
Рекомендации
- ^ Консорциум Unicode. Глоссарий терминов Unicode: «Область частного использования (PUA)»
- ^ «Политика стабильности кодировки символов Unicode» . 2012-05-29 . Проверено 15 августа 2012 .
- ^ a b Стандарт Unicode, глава 16.5 Символы частного использования
- ^ Уистлер, Кен (2000). «Необходимые изменения в ISO / IEC 10646 в отношении PUA» . UTC / 00-015.
- ^ «База данных писем» . Eki.ee . Проверено 11 апреля 2013 .
- ^ «Наборы символов: символы Восточной Азии: альтернативные сопоставления Unicode для символов MARC 21, назначенных для области частного использования (PUA): спецификации MARC 21 для структуры записи, наборов символов и носителей обмена (Библиотека Конгресса)» . Loc.gov. 2004-09-02 . Проверено 11 апреля 2013 .
- ^ "tunerfc.tn.nic.in" . tunerfc.tn.nic.in. Архивировано из оригинала на 2010-07-29 . Проверено 11 апреля 2013 .
- ^ «Подрайон корпоративного использования Unicode, используемый Adobe Systems» . 22 октября, 1998. Архивировано из оригинала 5 декабря 2003 года.
- ^ «NSOpenStepUnicodeReservedBase - Документация разработчика Apple» . Apple , Inc . Проверено 16 октября 2020 .
- ^ Apple Computer, Inc. (2005) [1994]. «CORPCHAR.TXT - Реестр (внешняя версия) использования Apple символов корпоративной зоны Unicode» . c03. Unicode Inc. Источник 2020-10-16 .
- ^ См. WGL4 Unicode Range от U + 2013 до U + FB02
- ^ «SFM преобразует имена файлов Macintosh HFS в NTFS Unicode» . Служба поддержки Microsoft . 24 февраля, 2014. Архивировано из оригинала на 27 мая 2016 года.
- ^ "ntfs.util.c" . 2008.
Недопустимые символы имени файла NTFS кодируются [ sic ] с использованием символов Unicode частного использования SFM (Services for Macintosh).
- ^ База знаний Microsoft, диапазон символов между U + F020 и U + F0FF в области частного использования Unicode сопоставлен с символьными шрифтами в Richedit 4.1 .
- ^ «Обработка символов PUA в программном обеспечении Microsoft» . SIL International . 2003-04-25. Архивировано из оригинала на 2015-05-11 . Проверено 4 марта 2014 .
- ^ «Комментарий № 8: Ошибка № 651606 (круг друзей): Ошибки: семейство шрифтов Ubuntu» . Launchpad . Проверено 17 октября 2020 .
- ^ «Комментарий № 2: Ошибка № 853855: Ошибки: семейство шрифтов Ubuntu» . Launchpad . Проверено 17 октября 2020 .
- ^ Вопрос о плагине строки состояния Powerline на Stack Exchange, в котором упоминаются символы области частного использования
- ^ Рисунки, показывающие символы частной области использования в исправленных шрифтах Powerline.
- ^ "lmb-excp.ucm" . 2000-02-10.
- ^ "Anhang 2. Многобайтовый лотос Zeichensatz (LMBCS)" [Приложение 2. Многобайтовый набор символов Lotus (LMBCS)]. Lotus 1-2-3 Version 3.1 Referenzhandbuch [ Справочное руководство по Lotus 1-2-3 версии 3.1 ] (на немецком языке) (1-е изд.). Кембридж, Массачусетс, США: Lotus Development Corporation . 1989. С. A2–1 - A2–13. 302168.
- ^ «Глава 16: Особые области и символы формата» (PDF) . Стандарт Юникода . Консорциум Unicode.
- ^ «Дополнение к Unicode 1.0.1» (PDF) . Стандарт Юникода . 1992-11-03 . Проверено 9 июля 2016 .
- ^ а б в г «База данных символов Юникода» . Стандарт Юникода . Проверено 9 июля 2016 .
- ^ а б в «Нумерованные версии стандарта Unicode» . Стандарт Юникода . Проверено 9 июля 2016 .
- ^ Стандарт ECMA-48, пятое издание - июнь 1991 §8.2.14 Разные функции управления, §8.3.100, §8.3.101
- ^ C1 Управляющий набор символов ISO 6429 (1983)
- ^ Unicode 6.1.0, Глава 4 , Таблица 4-9
- ^ Карта (внешняя версия) из японской кодировки Mac OS в Unicode 2.1 и выше.