hello
hello copied to clipboard
Add RTL as part of HIG
Hey, I translated helloSystem to Hebrew, this language is written from Right-To-Left (hence RTL) and requires special care in some cases (Sometimes flipping everything just works). Additional languages that use an RTL script: Arabic, Persian, Urdu, Divehi, N'Ko, Yidish, etc.
There are numerous documents about taking special care of some individual cases in RTL, for example: https://engineering.atspotify.com/2019/04/15/right-to-left-the-mirror-world/ https://material.io/design/usability/bidirectionality.html https://developer.apple.com/design/human-interface-guidelines/right-to-left/overview/introduction https://community.pega.com/knowledgebase/articles/user-experience/85/converting-your-ui-right-left-languages
I need to free some space for the VM, I want to test it and see that everything is in place.
Hello @yarons. Thanks for contributing translations. Highly appreciated. Do you know what specifically would need to be done in helloSystem to make it support RTL properly?
It depends, the UI is GTK or Qt based?
Qt
https://doc.qt.io/qt-5/qtquick-positioning-righttoleft.html
This is purely technical, the visual stuff are the other links I've sent earlier. There are some older guides for Qt 4.8 etc. I don't think it's relevant anymore.
Would be interesting to see how far off we are currently. What is your overall assessment of our 0.6.0 ISO?
Regarding the HIG or the translation?
My question is, if you run the 0.6.0 ISO, what is wrong/needs to be done so that everything is correct? (Screenshots of places where things are wrong and a description of how they should be would help to understand how big the delta is.)
I'd welcome pull requests that improve things, as long as they won't introduce undue code complexity/overhead. But since I don't know what needs to be done and how, I won't be working on it myself.
These are usually changes in the .ui files, I'm not sure how these are handled when you switch the language but I'll try to investigate it with you. The changes shoud be purely cosmetic, nothing logical so instead of having the buttons layed out in a certain way they will be reversed or mirrored or whatever, it really depends on the case. There's also a problem of over RTLing when some things need to get back to normal (usually progress bars, sliders, etc.).
If you can take some screenshots it will surely save us some time. I think that if it might delay the release we will do our best to aim for the next one, Hebrew users can wait :)
I managed to load the ISO in VirtualBox, I managed to make it work but couldn't install it (It keeps failing and restarting), I couldn't find where to switch the language of the UI, I can keep trying but it doesn't look good so far, any suggestions? Should I simply wait for 0.7.0?
Yes. Or you could use 0.6.0 which is the currently released version.
Well, without switching the UI language or installing to the local hard drive I'm not sure it's relevant to what we actually want to test :)
0.6.0 can be intstalled to the local hard drive.
I've tried, I got into a boot loop with VirtualBox.
I never test anything on virtual machines, only on real hardware.
I think this is the screen that their language should be, the direction of the interface and the beginning of the text is reversed, except for the picture and the text.
DEMO...
Not sure whether the whole screen should be flipped just because the language is LTR. I don't think this is how other desktop OSes are doing it?
In any case, this is currently not a priority, no one is working on it. Can be reopened in case anyone wants to work on it.
These languages are in the current set of languages:
- Use English for the main language = en
- Utiliser le français comme langue principale = fr
- Deutsch als Standardsprache verwenden = de
- Usar español como idioma principal = es
- Usa l'italiano come lingua principale = it
- Gebruik Nederlands als hoofdtaal = nl
- Använd svenska som huvudspråk = sv
- Bruk norsk som hovedspråk = no
- Brug dansk som hovedsprog = da
- Käytä pääkielenä suomea = fi
- Käytä pääkielenä suomea = fi
- Выбрать pусский как главный язык = ru
- Użyj polskiego jako języka głównego = pl
- Usar português do Brasil como idioma principal = pt
- Usar o português europeu como idioma principal = pt_PT
- 以简体中文作为主语言 = zh_CN
- 以繁體中文作為主要語言 = zh_TW
- 主に日本語を使用する = jp
- 주 언어로 한글 사용 = ko
Not sure whether the whole screen should be flipped just because the language is LTR. I don't think this is how other desktop OSes are doing it?
Wow. It's not something I'm looking forward to doing; so this would only happen if we find a volunteer who wants to do it.
I was referring to the HIG, not the actual directionality implementation and I'm not sure why Hebrew is not part of the language set, it is fully translated.
We are merely pointing to https://dl.acm.org/doi/book/10.5555/573097, there is no helloSystem HIG currently.
I'm not sure why Hebrew is not part of the language set, it is fully translated.
It would probably need more work, e.g., a better font, more RTL work, etc.
We are merely pointing to https://dl.acm.org/doi/book/10.5555/573097, there is no helloSystem HIG currently.
There are RTL references in this HIG, just search for Hebrew or Arabic and you'll find it.
Is there an open issue about the font and RTL work so I can try and help with it?
45/418 inPDF https://dl.acm.org/doi/book/10.5555/573097
@louies0623 indeed, so @probonopd, this issue was never relevant in that case, we just need to work on the issues with Hebrew display in terms of fonts and RTL then.
BTW is there a special reason to use an HIG from 1992? There are more recent versions.
@probonopd I think you can ask about the text font first. @yarons Do you think there are any fonts that can replace the Hebrew fonts in the current system. https://github.com/helloSystem/hello/issues/445
@louies0623 I will definitely work with you on that one, what is the license limitations so I won't offer any irrelevant options.
Font should be a "real world" font, not a "computer" font. Ideally should look like Helvetica.
License needs to have no restrictions on redistribution.
Newer is not always better :)
The one I linked was being worked on by Tog and other legends.
Although I do ten to agree in a way I find myself thinking about designing a system with a closed feedback loop as opposed to open feedback when some lessons have learned and the users are more demanding and the design should reflect different usage patterns. I totally think his work rocks yet many things have changed along the years and back in 1992 there were fewer users and fewer options and it did affect the user's usage patterns and perspective. Just my two cents, thanks.
Note that I also didn't say "older is always better" ;-)