asterics / AsTeRICS-Grid

Free and simple to use app for augmentative and alternative communication (AAC) with offline support, flexible input methods and media access
https://grid.asterics.eu/
GNU Affero General Public License v3.0
55 stars 17 forks source link

Translation to additional languages #369

Open ms-mialingvo opened 7 months ago

ms-mialingvo commented 7 months ago

The current options for language translations are missing some languages that I need.

Possible solution (A) Make it possible for people to add languages as they want. Those new languages would need to be available for everyone to use afterwards. Pro: It wouldn't result the huge list that we'd get if we'd import all 639-3 ISO codes. Languages that aren't included in 639-3 like very specific dialects (as I need one) still could get added. Contra: People would've to follow the instruction to use 639-3 codes, otherwise it could become a mess of codes.

Possible solution (B) Add all options from 639-3. Pro: That list contains pretty much all possible languages and dialects anyone would ever want to translate to. (See e.g. https://iso639-3.sil.org/code_tables/639/data?title=&field_iso639_cd_st_mmbrshp_639_1_tid=All&name_3=arabic&field_iso639_element_scope_tid=All&field_iso639_language_type_tid=All&items_per_page=200 for arabic) Contra: It would result in a huge drop-down list. I'd still need for you, Benjamin, to specifically program the one dialect that I need that isn't there, but I'm pretty sure that would be a one-time exception.

ms-mialingvo commented 4 months ago

Re-thinking this, solution A is better because of the flexibility.

klues commented 3 weeks ago

Proposal: what about adding a second select box next to "grid content language", which allows to optionally choose from a list of all countries? Without selection of a country, translations internally will still be saved only by language-code (e.g. de), with selection of the country language code and country code (e.g. de-ch). Using this method we have quite all possibilities covered (but not if there are several dialects within a single country).

Additionally I would only add this option to for the grid content language and stay with the 2-digit code for the application language for now.

klues commented 3 weeks ago

new idea: just add a checkbox "enable localized languages" and when checked, show localized languages within the select box for choosing the content language. For now add these localized languages: https://www.andiamo.co.uk/resources/iso-language-codes/

klues commented 2 weeks ago

At first I thought this will be quite some work, then I thought it's very easy, finally it was quite some work - see the commits above 😆

I've implemented this and released it to "latest":

Open questions:

Please try to test everything well, in order to make sure I haven't introduced any bugs.

ms-mialingvo commented 2 weeks ago

Oooh, awesome!! :) Thank you so much! I will test it on Friday or the weekend.

for German there is no de-de for Germany. Do we need it?

I guess you mean de-loc for dialects within Germany? Because de-de wouldn't make sense to me, the same way there is no pt-pt for Portugal etc, de is already "German in Germany".

(Anyway, the answer to both open questions would be 'no' as far as I'm concerned.)

klues commented 2 weeks ago

I'm not sure what the common understanding is regarding these locales, but de-de is definitely existing. The same for es-es (what we also have not in AG now). See e.g. this list of locales, where both are listed: https://simplelocalize.io/data/locales/ I assume it comes down to a discussion if German from Germany or Spanish from Spain are the base language or not. For English it seems like the majority has agreed that both exist, en-us and en-gb.

However, if you don't need them, let's keep it as it is.

ms-mialingvo commented 1 week ago

Oh, okay. I'm used to seeing "de" for Germany and "de-xx" for outside-Germany-German in ISO codes but there are so many variations of these ISO lists...

windows edge On Windows Tablet, Edge browser the dropdown doesn't show e.g. "Arabic, Egypt" but "Arabic, country.eg". On Apple and Android (Firefox browser) it's naming the countries. It's just a tiny blemish, but if there's a way to easily correct that, that would be perfect.

On Android (Firefox browser), languages that are bought through acapella look like this: android firefox ...but I guess the naming is up to the TTS app and there's nothing AG can do about it?

Indian English is missing, can you add that? There are also TTS voices for Mandarin, Cantonese and Sichuanese but ISO mostly just lists "Chinese" as language. Not quite sure how to solve that but as long as no one plans to make gridsets for those languages/dialects it's not an issue, I guess.