Jump to content

Romanization for sorting CJK (Chinese, Japanese, Korean) characters


Tsumiki

Recommended Posts

Please specify the following:

  • Poweramp build number: build-979-bundle-play [979004-b6cd2e6]
  • your device model: Sony Xperia 1 II XQ-AT52
  • your Android version: Android 13
  • your custom ROM name/version: LineageOS Official 20-20230727-NIGHTLY-pdx203
  • steps to reproduce: Install, import a large number of media containing tags in CJK scripts (Hiragana, Katakana, Kanji, etc.), then open any category eg. Album Artist.

As you may see in the attached screenshots, ALL non-latin/CJK characters are nested below the alphabetical scrollbar in the # section, instead of being properly sorted alphabetically according to their romanization (romaji/pinyin). This makes navigating a large library of East Asian media extremely cumbersome and unusable, as one would have to scroll to the bottom and then scroll down even further to manually find the media to play. Currently the characters appears to be sorted according to their Unicode number, as Hiragana appear before Katakana characters in the order of the https://en.wikipedia.org/wiki/Hiragana_(Unicode_block) and Kanji and Hanzi comes after in the order of https://en.wikipedia.org/wiki/List_of_CJK_Unified_Ideographs,_part_1_of_4.

The proper way should be either: 1. Merging the CJK-tagged media into the alphabetical scrollbar according to their pinyin/romaji romanization (あ->A, 安->A), and make them appear after the Latin-tagged media in each section. AND/OR 2. Add into the scrollbar a hiragana section to sort Hiragana, Katakana and Kanji according to their https://en.wikipedia.org/wiki/Gojūon romanization.

Both options have issues regarding how to sort media tagged in CJK Unified Ideographs (Hanzi & Kanji), as they are shared between the CJK languages and may have drastically different romanizations depending on language. IMO the app should give the user an option in the settings on how to intrepret the Hanzi/Kanji media in their library. eg Settings->Library->"Sort CJK characters in the order of" with the options being Pinyin (Chinese), Gojuon (Japanese) or Hangul (Korean). If the option selected is Pinyin, then the CJK Unified Ideograph characters should be merged with the Latin alphabet sorting, while if the option selected is Gojuon, then extend the scrollbar to add a Hiragana section to sort all CJK characters (Hiragana, Katakana block and Unified Ideograph block) in the Gojuon order. If the user choose to sort in Pinyin or Hangul order, for example, but still have media tagged in Hiragana and Katakana, then the scrollbar should also be extended to accomodate Gojuon sorting for these characters.

 

Sorry for all this request, but really hope CJK sorting is implemented. I've been a loyal customer for likely 10 years now and have used Poweramp from Android 4.0 to 13. I'm not familiar with programming for Android but I trust there must be libraries you can import to add the fuction into the app? Thank you so much and love your app!!! ❤️

Screenshot_20231214-202015_Poweramp.png

Screenshot_20231214-201941_Poweramp.png

Link to comment
Share on other sites

5 minutes ago, andrewilley said:

Not a bug, just something that's not supported as yet. You are correct that Unicode sorting would be applied at the moment.

You can upvote it in the Feature Requests area though:

Andre

Why is this feature request having so much downvote though? I think request for smart number sorting should be separate from the request to add support for non-English language sorting, as these apply for different user needs. Anyways. CJK support is really a personal need for me, and, considering that the app has official translations in Japanese, Korean and Simplified and Traditional Chinese, it's quite confusing that the app at the moment doesn't *actually* support dealing with songs in these languages. Hope this support is added soon.

Tsumiki

Link to comment
Share on other sites

The title of the topic is incorrect as Poweramp sorts items based on unicode value and all languages included to your Android firmware unicode+sqlite are supported.

Sorting is placing items in order, it’s not related to thе AZ scrolling bar. You can change AZ bar to normal scroller via Settings -> Library -> Lists -> AZ scroll.

As for supporting romanization to intermix Chinese/Japanese items with the latin items - this was already requested previously and this can be supported via additional “sort” fields (which are partially already used for e.g. article insensitive sorting). I think this can be added to the voting.

Thanks!

Link to comment
Share on other sites

42 minutes ago, Tsumiki said:

Why is this feature request having so much downvote though

Honestly it's pretty disheartening to see this kind of animus towards localization needs. Every vote for something is a vote against something else, so I don't think there should be negative votes period. Armchair guesswork here, but a handful of spiteful users (with their own pet requests) probably ganged up on a low vote item thinking it would be somehow advantageous to them. Idk.

Link to comment
Share on other sites

I was in two minds about whether to allow the Minus voting option at all when we first set this up, on the basis that it doesn't show whether something is actually popular but just tactically reduces the priority of other items. For example why the heck would Writing Cover Images Back into Audio Files (a very common and popular discussion topic in these forums) be scoring at -6 ? And Outputting to Local Speakers via DLNA/etc (again, a common request) be at -8. I see no reason for anyone to downvote these at all; if you don't need them, don't vote for them. 

Andre

Link to comment
Share on other sites

2 hours ago, maxmp said:

As for supporting romanization to intermix Chinese/Japanese items with the latin items - this was already requested previously and this can be supported via additional “sort” fields

I think adding support for reading and using the various 'sort' tags (which, if found in a specific song, would override the regular tag sorting) would be a good start, such as:

Track Title Sort Order : TSOT / XSOT / TITLESORT
Album Sort Order : TSOA / XSOA / ALBUMSORT
Track Artist Sort Order : TSOP / XSOP / ARTISTSORT
Album Artist Sort Order : TSO2 / TXXX:ALBUMARTISTSORT / ALBUMARTISTSORT
Composer Sort Order : TSOC

Andre

Link to comment
Share on other sites

9 hours ago, maxmp said:

The title of the topic is incorrect as Poweramp sorts items based on unicode value and all languages included to your Android firmware unicode+sqlite are supported.

Sorting is placing items in order, it’s not related to thе AZ scrolling bar. You can change AZ bar to normal scroller via Settings -> Library -> Lists -> AZ scroll.

As for supporting romanization to intermix Chinese/Japanese items with the latin items - this was already requested previously and this can be supported via additional “sort” fields (which are partially already used for e.g. article insensitive sorting). I think this can be added to the voting.

Thanks!

You're technically correct that the Hiragana and Katakana characters are already alphanbetically sorted based on Gojuon because that's their order in the Unicode block. However the same is *not* true for Kanji & Hanzi (Unified Ideographs block). Those are arranged by stroke count due to differences in pronounciation between language. This makes navigating the Unicode-sorted lists in the app very inconvenient at the moment:

For example, if I want to find Angela Zhang (張韶涵, Zhang Shaohan), I should not have to calculate the stroke count for her surname 張 to approximate where her name would appear in the album artist list and then painstakingly find her among the rest. I would natually want to think of her name Zhang and find her in the Z section of the scrollbar.

Same for Japanese names and titles. I would expect Utada Hikaru (宇多田ヒカル) 's name be either in the U section or a seperate hiragana う (u) section. Or, if I choose to sort all CJK characters based on Pinyin, her name should be in the Y section as her surname is read as Yuduotian in Chinese.

As for the A-Z scrollbar, I proposed adding a hiragana scrollbar for Japanese sorting originally because that would be the user experience Japanese-language users are most familiar with, but I can accept having them merged in the latin sections if that's not feasible.

Link to comment
Share on other sites

6 hours ago, andrewilley said:

I think adding support for reading and using the various 'sort' tags (which, if found in a specific song, would override the regular tag sorting) would be a good start, such as:

Track Title Sort Order : TSOT / XSOT / TITLESORT
Album Sort Order : TSOA / XSOA / ALBUMSORT
Track Artist Sort Order : TSOP / XSOP / ARTISTSORT
Album Artist Sort Order : TSO2 / TXXX:ALBUMARTISTSORT / ALBUMARTISTSORT
Composer Sort Order : TSOC

Andre

The problem is these ALBUMSORT ALBUMARTISTSORT fields in ID3 is not commonly used, if at all, by East Asian music stores such as Mora, Ototoy, NeteaseMusic and QQMusic, it is also not generated by EAC, meaning users would have to manually added it for every music file, which I'm not sure the less tech-savvy general user knows how to do. Even if you're using MP3Tag to supplement tag information via MusicBrainz, MusicBrainz supplies CJK names *as is* in the sort field IIRC, which makes it useless to identify the correct sort order. A function within the app to figure out the correct order for CJK names and titles based on romanization would still be needed.

Link to comment
Share on other sites

These sort of discussions make me feel very happy that I grew up in a country where our language has just 26 letters which are used to build up anything else, makes life a lot simpler! We can thank the ancient Phoenicians for that concept.

Sorting symbolic languages must be a real headache, as even Unicode (which was designed to simplify handling of multiple character sets) doesn't seem to do it as some users would want. 

Andre

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...