onedrive
onedrive copied to clipboard
Feature Request: International Language Support
One of the major gaps that this client has is support for languages other than English - so that the client output is more understandable and meaningful to non-native English speakers.
I would like to gauge interest in whether it is worth pursuing an "internationalisation" patch to the client, most likely configured as a parameter detected / passed in at compile time + a value switch in the configuration file.
Obviously, to support languages would require a consistent approach to logging messages, have these stored in a specific file, where, depending on the language selected, the right message used.
The only way though to support languages other than English (US, UK, AU etc) would be from the wider folk using the client to contribute a translation and submit a PR, then have this PR reviewed by at least one or two other folk who are that language native speakers.
Initial support that I can think of which might be required:
- English (EN-US)
- English (EN-GB, EN-AU, EN-NZ etc)
- French
- German
- Spanish
- Japanese
- Chinese (Simplified)
- Russian
Thoughts?
A PR is quite a bit of overhead for "just changing one translation-string". There are quite nice UIs such as https://weblate.org/ which make the process easier.
@Rondom Thanks for the suggestion - will have to look into this further as an option
The installation process for Raspbian (on Raspberry Pi) is quite evolved on it's own and it might be to complicated to comprehend for person that is not well familiar with English already.
@tyger
The installation process for Raspbian (on Raspberry Pi) is quite evolved on it's own and it might be to complicated to comprehend for person that is not well familiar with English already.
Can you help expand on this?
The installation instructions for Raspbian is really straight forward - and really no differnt to any other Linux OS's as documented - https://github.com/abraunegg/onedrive/blob/master/docs/INSTALL.md#dependencies-raspbian-armhf
Curious as to why you think it is more complex on Raspbian ?
@abraunegg Sorry if I confused you. Well, probably I chose too strong words, what I meant is that even though it doesn't seem too complicated, but being able to walk all the way from installing Raspbian, then build the dependencies, the onedrive client and install it you need at least basic level of English and that is the reality. Hence I'm assuming that it might not be very beneficial.
Don't get me wrong, I don't think that installation is more complex on Raspbian, but it's not just sudo apt install onedrive
either.
Not a direct answer but some (somewhat incohreent) questions/thoughts...
-
I know no telemetry but do you know if you have mainland chinese users? https://blog.yoocare.com/how-to-access-onedrive-in-china/ says OneDrive is blocked in China but accessible using VPN .
-
Chinese simplified is only used by mainland china so you might want to add two other locales: zh_TW and zh_HK. I know you won't convert yourself but I still figure the following piece of information might come handy if/when you do decide to do i18n.
2a) zh_TW, used in Taiwan, uses traditional chars. ROC and PRC use almost the same language, and in most cases one can convert just traditional characters to simplified characters for non-technical terms to get the PRC version from ROC. Here's a list (just for G, click other chars)- http://www.iicm.org.tw/term/termb_G.htm where the first column is Taiwan Mandarin and second is Chinese Mandarin. (Nothing for "cloud storage" though :)). This list itself is crazy because they use traditional characters even for PRC version .
2b) zh_HK (HKG uses traditional but their language is different).
Also might I suggest using https://github.com/projectfluent/fluent if you decide to go down this path? Made by mozilla, and I've heard good things about it. No D API right now but you could call rust code using FFI (If I'm free I might be able to help you ...)
Adding to weblate suggestion, there is also crowdin (never used either ... )
@abraunegg I might be able to provide (really terrible) chinese (simplified) translations if you want. The first step to plan would be extracting out the word list in english
In the next few weeks I will be submitting a PR to provide international language support as this is long overdue.
Initially, support will be for the following languages:
- EN-AU (default)
- EN-US
I am looking for folk to do the following:
- Perform some performance regression testing to see if the logfile lookup / response has any negative performance over the existing client - I can do my testing, but this is nothing as compared to some real-world usage
- Check that nothing 'major' has been missed with application output
Once done, adding a new language will require:
- Updating the application code to reference the new translation
- Translating each of the application responses (100+) into the new language for correct application output
I will be looking to the community to assist here with creating new language translations.
@deskpronto This might be a better approach to ensure your language updates for Portuguese are included by default, and you do not have to maintain a separate fork & constantly make changes when a new application version is released.