Localization, general and/or "own" app fork (adding language)

My person trusts that he is welcome to ask developers and suppoters of delta-chat here in regard of localization.

In the specific case it’s about making the software useable in Khmer (km) language.

My person had seen that there is a merely commercial use common here, which isn’t accessable and proper to use in this case of “mine”.

Having looked around a little, my person found such as “string.xml” files, which look as if containing at least the core localisation “hooks”.

Is this assuming right?

Our translations are currently done over transifex:


But yes, strings.xml (https://github.com/deltachat/deltachat-android/blob/master/res/values/strings.xml) is the file containing the translation string on android, so in a fork your person could theoretically edit it directly or probably better (if you want to keep english as default language), your person can instead define a new language (new folder with the naming “values-[language code]”, with its own strings.xml and register it in /res/values/arrays.xml. Though using transifex still might be easier to get into, even if their interface is not the best.

1 Like

Appreciation for giving into, Master Simon,

It wouldn’t be proper if turning given in faith back into trade. So use of this possibility isn’t open (at least unasked use of third part resources whould be also not proper)

Great to get known about register in arrays.xml.

My person currently uses (has started at least) given enviroment for it here: https://sangham.net/en/tech/delta-chat/string.xml

lets see if it grows well and of course open to use to give into for everyone. Sure, it can be used for good purposes and not commercial by everybody then, being inspired toward wholesome.

If your person encounters any problems/dificulties, feel free to ask them here and we will try to help you.

Sadhu, Sadhu

Good master Simon, valued team and user,

would it be possible to add (replace) the new files direct for running app on one’s device? If possible, where could those files be found on one’s device?

To run a test-version, my person thought to leave it bilingual. Having put the english in {}-breaks, would this sign require \ before? And would a variable, appearing two times in a string cause troubles?

As localication might require change of logos, at least app-text, where could those things be found?

Nearly everything is possible, but this is so hard that it would be unpractical for normal users to perform.

Is the idea to have both languages at the same time?? My person doesn’t understand what your person is trying to do here.

For what are variables needed?

There are no texts embedded in images to my persons knowledge.

My Person sees two possibilities for your person here if the goal is just to add a language translation to the app:

  1. maintaining a Fork - The hard way - change the files and self compilation. It needs to be adjusted or redone with every update (pulling in the changes from the main app or re-forking the new version of the main app)
  2. Add the language to the official app via PO file (if your person doesn’t want to use transifex, we could do over an translation file*) or transifex.
    That way is easier, because it doesn’t require as much maintenance and the language will be available for everyone in the next version after adding the language.

Also missing translation keys/phrases/words fall back to English.

* we would send your person the translation file (.po), your person can translate it locally with programs like the GNOME Translation Editior (https://wiki.gnome.org/Apps/Gtranslator) and send it back to our team which then uploads it to transifex. That way your person would not need to touch transifex.

Appreciation good Master Simon,

so replacement or adding of a text-string file wouldn’t work similar as to add such for example on the server of a php program/website, right?

The billingual would be just a temporary test solution. Sometimes words have special context and also common understanding of other cultures needs to be concerned. Seeing both, origin and new language, does not require much switching and searching.

The thought was to make (not sure how for now) either a app-folk that contains “values-km” (Khmer) or add them on running system.

Translation is already done to 70%: see https://sangham.net/en/tech/delta-chat/string.xml

As strings are designed like this for now:
<item quantity="one">%d ម៉ោង{%d hour}</item>
or maybe add \n to make it more readable: <item quantity="one">%d ម៉ោង\n{%d hour}</item>

  1. does double appearing of %d (variable) cause problems?
  2. does the sign “{” or “}” require “\” before to be not missinterpreted?

Sadhu (expression of appreciation) for pointing on a translation tool. My person is limited to given, and currently only an old small tablet and some simple older software avaliable to work with.

Pictures, logo… other texts: Logo might be needed to rerender. So titles carry “delta-chat”. At least there is text under a app-icon on ones phone/tablet (not readable in foreign language.

That would expect two variables instead of one, so it will cause problems.

No, it should not be needed.

When your person can give more information about your persons device we can better help (maybe research programs your person could use), so what android version is it, how much RAM, how is the internet connection?

So the app-name would need to be translated, too? that’s not an image, that’s also text.
Normally we don’t localize the app-name, though, is there a special reason?
Is Khmer a supported system language by android?

Why no add the language to the official app, that would be easiest for end users and translators?

Your person can also give us the .xml file when it is done, .po is just a dedicated translation format that is also text based.
When it’s done @r10s can put in the app and then it will be included in the next update.

@SamanaJohann @Simon yeah, when strings.xml is translated sufficiently, i am happy to add the file to the usual translation progress, Khmer (km) language will be available on all platforms then (android/ios/desktop).

in the long run, Transifex is easier for us, esp. for updates or when more persons are working on translations, however, as said, for now, i am happy to get strings.xml :slight_smile:

1 Like

[quote=“Simon, post:9, topic:1299”]

That would expect two variables instead of one, so it will cause problems.[/quote]
Good to be sure then, not problem to replace them in one language to escape such for the test version (billing.)

[quote=“Simon”]

No, it should not be needed.[/quote]
Sadhu

[quote=“Simon”]

When your person can give more information about your persons device we can better help (maybe research programs your person could use), so what android version is it, how much RAM, how is the internet connection?[/quote]

Very “Zuvorkommen” and generously, Sadhu.
If looking for info on the four/five year huawai-tablet, my person was given for staying reachable and to make translation works, it says:

[quote=“Simon”]

So the app-name would need to be translated, too? that’s not an image, that’s also text.
Normally we don’t localize the app-name, though, is there a special reason?
Is Khmer a supported system language by android?[/quote]
Yes, at least for the Sangha-app (dedicated for the Monks an follower), a fork. In it’s case even Name.
As for common use, if one wishes to take on for good purposes, a sign that indicates identification is required to gain trust. A latin and mathematical sign is far off any identification.
Android support Khmer, being the foremost communication instument, although very few apps in this language. Being simple and the only localized, 90 of population uses FB. Telegram, being simple and accessable, althought not localized yet, is used by about 50-60% incl. the whole school system (as covid solution).

[quote=“Simon”]

Why no add the language to the official app, that would be easiest for end users and translators?[/quote]
As receiver of alms in faith, it would be corruption to project them backwardly. But as told, all blessings if one likes to take on developed for the Sangha, if for good purposes. Another thing is that the used commercial platform is total out of reach, not to speak of work for common purposes or even trades in/for the world, good Master Simon.

My person, as told, wouldn’t hidde things up, and leave them accessable to take on for good purposes (not for harming other beings) which certain (actually all) common licenses, by law, are not fit (eg. one must accept bad or harmful use=agree with such, look GNU and other Commons). Such to be bond to, would lead to be not touchable at all. Of course, if someone may use it otherwise as shared, it’s just his to bear. Nobody would take control over it.

As the app is for now (most in regard of no possibility to gain access without gaining email via telephon and complete set up, wouldn’t reach many common user, very less. If, and there are lot of things to be expected, a “smart” developer takes on it fast, he could make all kinds of ugly things.
So things need to be made with care to do not cause a lot of harm for many, very unprotected and total new from 0-100 in some month.

My person trust hat he could share a little more for bachground understanding. Please may one understand it just as infos, not as agruments against ones own inspirations.

(pardon for layout, nesting of quotes seems limited supported, tried different now)

Good master r10,

as soon as wiki-work is done, it will be of course rerendered to original format, added as code instead of text and a link to download the file (xml) there. So should be seen then as given to take for good and harmless purposes use. Maybe another week. My person has reached out for about 5,6 additional languages, but possible only touching others, when seeing it is of use in another world.

1 Like

Valued Delta-team,

thought of giving a way for information and link to gain a given email for “own” fork in the welcome message. Is it possible to add a link or even more html or similar in one string? Or would it reqire special language and/or doing such in another file?

To leave access in both directions, for the case a Brazilian translation gets completed: Brazilian work topic