При добавлении правила "NFD; [:Nonspacing Mark:] Remove; NFC"
в демонстрацию ICU Transliterator символ Ø
(\u00d8
== LATIN CAPITAL LETTER O WITH STROKE
) остается как есть (т. е. STROKE не удаляется).
В списке немаркирующих пробелов (категория Mn
), Я не могу найти ничего с именем COMBINING DIAGONAL STROKE
, похожего на COMBINING SHORT STROKE OVERLAY
(\u0335
) или COMBINING LONG STROKE OVERLAY
(\u0336
).
Однако я нахожу COMBINING SHORT SOLIDUS OVERLAY
(\u0337
) и COMBINING LONG SOLIDUS OVERLAY
(\u0338
). Они кажутся похожими, но в моем браузере отображают гораздо более толстые линии в сочетании с o
и O
.
данные Unicode, к которым я обращался для \u00d8
, не дают декомпозиции для этот персонаж.
В то же время демонстрация ICU Collator сопоставит каждый из ø
, o
, Ø
, O
, o\u0337
и O\u0338
с одной и той же кодовой точкой, используя первичный (уровень = 1 = базовая буква) сортировщик.
Означает ли это, что локаль Collator, используемая в демонстрации, была настроена на идентификацию базового символа таким образом, что спецификация Unicode умалчивает?
Если да, то нужен ли мне пользовательский транслитератор на основе правил, если я хочу убрать ШТРОК из LATIN [CAPITAL, SMALL] LETTER *
символов при транслитерации?