Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RTL Support #2347

Open
yarons opened this issue Jan 23, 2024 · 4 comments
Open

RTL Support #2347

yarons opened this issue Jan 23, 2024 · 4 comments

Comments

@yarons
Copy link
Contributor

yarons commented Jan 23, 2024

The Arabic, Urdu, and Hebrew are breaking in multiple ways.

First:

Letter ordering - regardless of font selection.
The sentences appear reversed (as if these were processed with rev).

For example:

If the string reads Hello World, it will appear on screen as dlroW olleH.
There's a library called pyfribidi, which supports most RTL languages pretty well.

Second:

Since those specific alphabets are written from Right-To-Left (hence RTL), the languages should also appear mirrored, so the menus should align to the right side of the screen instead of left like they are now.

Example:

RTL

RTL

vs
LTR (The one used in English)

LTR

This will require fundamental changes to the underlying simple-term-menu.

@svartkanin
Copy link
Collaborator

The translations are here https://github.com/archlinux/archinstall/blob/master/archinstall/locales/ar/LC_MESSAGES/base.po. Are these correct and displayed in that way?

@yarons
Copy link
Contributor Author

yarons commented Jan 24, 2024

I checked those (Arabic and Urdu) on the native console with a proper usefont (out of the box they both appear like squares) and I experienced both the phenomenons that I've mentioned, the text appears in the wrong order and aligned to the left.

BTW I've also filled an issue against simple-term-menu.

@svartkanin
Copy link
Collaborator

This has nothing to fo with the simple term menu and the squares appear because the default font isn't supporting non latin characters.

As I don't speak any of those languages I can't confirm that the display is wrong or not.

Are you able to confirm that the linked translations are correct? And could you share a screenshot of how they are wrongly appearing?

@yarons
Copy link
Contributor Author

yarons commented Jan 24, 2024

I'm setting the font issue aside, this is how Hebrew looks on iTerm (connected to an Archlinux VM):
Screenshot 2024-01-24 at 11 31 06

The text itself is reversed ("dlroW olleH" instead of "Hello World").
The directionality of the menu itself is also reversed (aligned to the left instead of right).

So if I want to express my experience in English this is it:
UTC Select timezone

This is the same screen on the Linux terminal (VM Console):
Screenshot 2024-01-24 at 11 39 49

Arabic (Same issues, the letters appear in reversed order, since it's only 5% translated this is the only screen I could find with Arabic text):
Screenshot 2024-01-24 at 11 39 08

This is Urdu which has the same problem in addition to the lack of properly supported fonts in the terminal (It's basically an extended version of Arabic):
Screenshot 2024-01-24 at 11 41 59

The Arabic translation is correct, I don't speak Urdu at all but I know some of it is correct from the words I can identify (Transliterated terms to the rescue).
Any other info I can provide you with?
Thank you so much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants