В чем разница между «сочетанием символов» и «букв-модификаторов»? - PullRequest
0 голосов
/ 31 января 2019

В стандарте Unicode есть диакритические знаки, такие как U + 0302, АКЦЕНТ КОМБИНИРОВАНИЯ CIRCUMFLEX (◌̂) и U + 02C6, АКЦЕНТ МОДИФИКАЦИОННОГО БУКВЫ CIRCUMFLEX (ˆ).Я знаю, что символы объединения объединяются с предыдущей буквой, скажем, для создания буквы типа «ô», но для чего используются буквы-модификаторы?Является ли это просто печатным представлением комбинирующего символа, и если да, то чем он отличается от обычного U + 005E, CIRCUMFLEX ACCENT (^)?

[Меня не интересует сам обход, носкорее это класс символов (кажется, что их много, как вы можете видеть здесь ).]

Ответы [ 2 ]

0 голосов
/ 31 января 2019

В чем разница между «сочетанием символов» и «букв-модификаторов»?

Объединением символов

Объединение символов всегда применяется кпредыдущий базовый символ.Вот пример, взятый из раздела 5.13 Рендеринг непространственных меток из Стандартная версия Unicode 11.0 - Базовая спецификация , где последовательность из четырех комбинирующих символов применяется к базовому символу a:

combine1

Вот еще один пример.Запуск этого тривиального кода Java ...

System.out.println("Base character:                 \u0930");
System.out.println("Base with combining characters: \u0930\u0903\u0951");

.... дал такой вывод:

combine2

В этом случаевывод был шире, чем базовый символ;один из комбинирующих символов был помещен над базовым символом, а другой - справа от базового символа.

Я предоставил оба примера в виде снимков экрана, поскольку может быть трудно найти шрифт дляправильно визуализировать полученные символы.

Изменение букв

В отличие от комбинирования символов, изменение букв является автономным.Хотя они также обычно изменяют другой символ (обычно, но не обязательно предыдущий символ), они сами являются базовыми символами и визуально различимы.Чтобы использовать ваш пример, вот вывод из приложения Java, печатающего базовый символ a, за которым следуют U + 0302, ACCENT CIRCUMFLEX ACCENT (◌̂) и U + 02C6, CIRCUMFLEX ACCENT ACCENT (ˆ) соответственно:

A 0302: Â

A 02C6: Aˆ

ПИСЬМО МОДИФИКАТОРА АКЦЕНТА CIRCUMFLEX отображается справа от A, тогда как АКЦЕНТ КОМБИНИРОВАНИЯ CIRCUMFLEX отображается выше него.

Фактическое значение (семантика) символа окружности в видеизменение буквы зависит от контекста.Например, на французском языке окружность на o в côté влияет на его произношение, а окружность на u в sûr - нет;вместо этого он используется для визуального различения sûr (что означает уверен ) от идентично выраженного sur (что означает на ).Во французском языке окружность на o всегда влияет на произношение, а на u никогда не влияет.

Это просто печатное представление комбинирующего символа ...

Нет - модифицирующая буква имеет значение.В случае французского дифрафика это значение может быть обусловлено контекстом на основе буквы, которую он изменяет, как описано выше.Но значение может быть заключено в самой модифицирующей букве. Например, :

Буквы-модификаторы обычно используются в технических фонетических транскрипционных системах, где они расширяют использование сочетаний меток для создания фонетических различий.Некоторые из них были также адаптированы для обычной языковой орфографии.Например, U + 02BB ПОВРЕЖДЕННОЕ ПИСЬМО ДЛЯ МОДИФИКАТОРА используется для обозначения 'okina (гортанная остановка) в орфографии для гавайского языка.

Этот пример также показывает, что модифицирующая буква не должна быть связана с каким-либодругой персонаж.Это никогда не происходит при комбинировании символов.

Также обратите внимание, что буква-модификатор не обязательно является буквой в любом алфавите, и большинство букв-модификаторов фактическисимволы (например, диафрагма).

Чем это отличается от простого U + 005E, CIRCUMFLEX ACCENT (^)?

Это просто символ, используемый для представленияогибающий акцент.В отличие от сочетания символов и букв-модификаторов, он не может быть семантически или визуально связан с любым другим символом.

См. Следующие разделы в Стандартная версия 11.0 Unicode® - Базовая спецификация для более подробной информации:

  • 7.8 Буквы модификатора
  • 7.9 Объединение знаков
0 голосов
/ 31 января 2019

Буквы модификатора не объединяются.Они семантически используются в качестве модификатора, в отличие от простых эквивалентов, таких как U + 005E.

https://www.unicode.org/versions/Unicode11.0.0/ch07.pdf#G15832

7.8 Буквы модификатора

Буквы-модификаторы в том смысле, в каком они используются в Стандарте Юникода, - это буквы или символы, которые обычно пишутся рядом с другими буквами и которые каким-то образом модифицируют их использование.Они формально не объединяют метки (gc = Mn или gc = Mc) и не графически объединяются с базовой буквой, которую они изменяют.Они являются базовыми персонажами сами по себе.Смысл, в котором они изменяют другие буквы, больше зависит от их семантики в использовании;они часто имеют тенденцию функционировать, как если бы они были диакритиками, указывая на изменение в произношении буквы или иным образом отличая использование буквы.Обычно эта диакритическая модификация применяется к символу, предшествующему букве модификатора, но буквы модификатора могут иногда модифицировать следующий символ.Иногда буква-модификатор может просто стоять отдельно, представляя собственный звук.


Пример пяти U + 0302 против U + 02C6 против U + 005E: ô̂̂̂̂ oˆˆˆˆˆo ^^^^^

...