Skip to content

Improve kickoff's group for non-latin language.

Xuetian Weng requested to merge work/icu-name into master

Use icu transliterator to convert i18n'ed name into ascii for initial character grouping.

This is achieved through exposing a new model property in the kicker model. It also slightly changes how everything orders.

Strategy used by this code mainly focused on CJK language.

  1. Japanese locale will group all Han script together. Katakana will be converted to hiragana.
  2. Hangul will decompose and use consonant as group name.
  3. Han will use icu "Han-Latin" transliteration to convert to pinyin.

BUG: 433297

Relevant qt bug https://bugreports.qt.io/browse/QTBUG-91258

Right now, ViewSection.FirstCharacter for "display" is used for such grouping, but it doesn't work very well for non-latin like Chinese.

Pre:

图片

Now (requires with additional one-line change in kickoff, basically for Chinese, pinyin will be used Gao -> 高 Ge -> 个):

图片

Japanese 图片

Korean 图片

Other latin language not affected, e.g. Greek/Russian 图片 图片

Edited by Xuetian Weng

Merge request reports