Right-to-left languages are displayed reversed

Hi,
I have a lot of albums in Hebrew, which is written right-to-left.
Roon displays all titles backwards. i.e. if it happened in English, “Michael Jackson” would be shown as “noskcaJ leahciM”.

You can imagine that’s hard for me to look at. If that can be sorted it would make me a lot happier!

Thanks

Hi @Chikolad – would you mind posting a screenshot of what you’re seeing? And can you also let us know what operating system you’re running?

Also, to be clear – this is Tidal content you’re viewing in Roon, right?

Absolutely! Let’s figure out how to reproduce this issue and we’ll get things sorted. While we’re not currently able to display RIght-to-Left languages in Roon, we should definitely be able to display names in the right order!

Looking forward to getting this worked out @Chikolad – thanks for the report.

Hi @mike, thank you for your reply.

I accidentally wrote “Tidal displays…” when I meant “Roon displays” - it was late at night :smile: I edited the question now to be correct.
Tidal displays Hebrew well, it’s Roon that displays it backwards.

Here is a screenshot of a good example of the problem.
The artist’s name should be “מתי כספי” and not “יפסכ יתמ”.
Also all tracks, main albums, and in general everything that’s in Hebrew is in reversed order of letters.

Thanks!
Please let me know if that’s something that can be fixed soon.

Any update on this?
I don’t think it should be very hard to support right-to-left and it would make a ton of difference for me.
Is it a fix I can expect in the following builds or is it not planned at all?

Cheers

Sorry for the lack of follow up here @Chikolad. Unfortunately, our graphics engine does not support right-to-left at all right now, and while it seems straightforward, it’s actually a technically complex change.

We’re watching localization requests carefully as we consider support for a number of left-to-right languages. Those are also a good amount of work, but they’re technically straightforward. While I wouldn’t say never, I think it’s likely to be some time before we add right-to-left support.

Sorry about that @Chikolad :frowning:

Well that’s a big disappointment @mike.
My Hebrew music doesn’t get played at all now in Roon. There’s obviously no metadata and album art for it, but I don’t expect it and I could live without it, but reading everything in reverse is just painful.
I’m aware I’m probably the only Roon user currently affected by this issue so my problem gets a very low priority.
Maybe you can use a “patch” instead of a holistic solution for now and just reverse the strings of titles that are in RTL languages?

does hebrew always work like this? where the strings can just be reversed? or are there ligatures and combining characters?

I can probably do the reversal “patch” pretty easily.

Arabic is a lot harder due to the above characteristics, and just reversing wouldn’t help.

also could you type the name of a hebrew artist/album here so i can add it from tidal and test :smile:

1 Like

Hi @danny, thank you very much for looking into this.
Yes, Hebrew doesn’t have cursive writing and each letter is separate, so they can just be reversed.
I’m aware that it can’t work in Arabic. Luckily for me it won’t affect me because I don’t know the language :smile:

The only thing that might not work if you’re reversing whole strings is if they’re combined with English or other languages and then you have to handle each word separately which makes it a little more complicated, but that will rarely happen in music titles. I’m not gonna be bothered by that.

The example I gave you was actually from my local files, not from Tidal. But in order to make things easier for you I found a Hebrew artist page in Tidal:


The artist is named “יהודה פוליקר” (Yehuda Poliker).
Here’s a link to one of his albums:
tidal.com/album/27177989

I added the album to my favorites in Tidal and synced with Roon, and indeed everything appears reversed in Roon.
If you do the same you can compare the titles in the Tidal app/web app vs. Roon and see the reversal.

If there’s anything I can do to help I’ll be glad to, including writing the code snippet for the reversal :stuck_out_tongue_closed_eyes:

Thanks,
Lior

Done. I can’t roll this out as a bug fix release, as too much changed, but it’ll be in the next proper release – could be a few weeks out.

look ok?

@danny, you’re a genius!
Yes! I can read that now lol

Thank you so much for taking care of this. I’ll eagerly wait for the next build :smiley:

@mike is correct in that adding full Hebrew support is a much harder issue to alignments and so forth, but this little thing wasn’t too bad.

I realize that, and this patch will probably not work in all cases, but it will in most.
I suggested it as a quick & dirty solution in the meanwhile, it’s better than nothing for me.
And if the ability to edit track titles is also coming soon, it might help me with the rest of cases that this patch won’t work for (combined Hebrew and English for instance).

Thank you @mike and @danny!

Can you give me a case of mixed Latin and Hebrew script? Both how they would be in the character stream and how they should be displayed?

The way I do it right now, the Hebrew parts are reversed in the stream, while the Latin parts are not. I include spaces when calculating Hebrew parts, but if the character after the last space in the stream is non-Hebrew, I mark that space as non-Hebrew.

An example I noticed the other day - There’s a song in my library with this title:
Time After Time (אל תוותרי עלי)
And that is how it should be displayed.
Roon currently displays Time After Time (ילע ירתוות לא)
Regarding how it’s ordered in the stream (string) - the character right after the first ‘(’ is ‘א’. If I understand your solution correctly, you got it right. You should indeed mark beginnings and ends of consecutive Hebrew parts of a stream and reverse only those within the stream (I originally figured you would just reverse the whole title, including Latin characters, if the title contains Hebrew).

I managed to find an album in Tidal that demonstrates such a combination in the album title and in the artists of every track:
tidal.com/album/38651138
You can use that to test your code.

Once again, thank you very much for handling this quite esoteric issue!

Yah, Time After Time should be ok now with my changes.

The Shir - Shlomo album is bad, because the dash is not included in the list of chars. I’ve added an exception for dash too and it looks fine.

I fear a bad situation will happen with colons, semicolons, commas, periods, and most of all, parentheses and brackets!

I can include all punctuation in the “Hebrew set to flip around”, and then manually swap ( ) { } [ ] < > and the other various languages left/right oriented punctuation… ugh.

You’re right, especially about parentheses and brackets, which are flipped in Hebrew.
I’m going to let you decide how deep you want this patch to go and how perfect it should be. You won’t hear me complaining anyway as long as I can read the titles without wrecking my brain :grin:
Don’t lose any sleep over it :wink:

ok, let me know if you run into any punctuation that needs to be supported

2 Likes

Hello,

i just downloaded the Trial to experiment the Roon and found out that Hebrew letters are shown backwards, i am watching a network library on my Qnap NAS.
i saw that there is some kind of patch for that?

thanks
Nir

We have a patch for many cases coming in our next release. Stand by!