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 (deltachat-android/strings.xml at master · deltachat/deltachat-android · GitHub) 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.)


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


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:


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).


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

Nearly finished the first “beta” of Khmer-localization, my person would like to ask in regard of auto line breaks, since there are usually no spaces between word. Some software solves it by word break tools (using dictionaries of languages), some by simply cutting after a certain no. of chars, some are huge troubled to give useful layout.
Would wordbreak, usually done by zero-space signs be required, useful or not needed. Asking, because it would require certain additional effort to put all zero space into the text in proper way.

Valued Delta chat team, good Master @Simon , good Master @r10s ,

as a share of merits:

Here would find first version of Khmer translation of string.xml here (also xml-file): string.xml Khmer [] , generously given by Upasika Villa for the Sangha and their followers.

Changes are visible here: string.xml Khmer []

Generally it’s thought for a “fork”, yet not having find ways to progress such. How ever, as for your possible use:

Generally “Delta Chat” is here replaced by the name " សារហារីសង្ឃ" (Sāra-hārī Saṅgha; Pali-language for “The Sangha’s (community) admirable messenger” which one might like to replace (សារហារី Sārahārī, would be a nice name anyway).
Two or three text-string contain some info and links for this particular use.

Some additional work isn’t done yet, such as adding all word breaks by zero-spaces, currently no means to do it.

Original text is placed after each string as info-text, useful for prove reading.

If possible included into a apk for testing, to obtain such, would be of course of good use.

May the generous work of Upasika Villa be felt as given to use for all good and harmless undertakings by many and may, who after able, take part on the merits by rejoicing with the done deeds.

Oh… just saw that saved English as Khmer inattentive… should be fine now https://sangham.net/_media/km/tech/delta-chat/strings_km_1.0beta.xml , Master @Simon , @r10s

(just saw that used Dev-version seems to have different string texts, such as disappearing messages for 5 instead of 4 weeks)

សូមមួយភ្លែត… :smiley:

thanks a lot for the translation, i filed an issue and will push the whole xml file these days to transifex so that it comes into all apps (will go to android/windows/macos/linux/ios then)

we’ll see if futher updates are possible this way as well or if transifex is needed then, but for now, i will figure things out :slight_smile:

btw, what is the name of Khmer in Khmer alphabet? we need that for the language-selection at settings/view where we always show the native language name.

My person became aware yesterday, good master r10s,

ភាសារខ្មែរ (peasa khmer), Khmer-language, ខ្មែរ would stand alone.
Khmer, btw. deprives from the Pali word khema, meaning “land, person at peace, secure” and is often used as synonym for Arahat (a perfect One) in the old text of the Sublime Buddhas teachings.

This would be the corresponding English string-files for a possible fork and the comparison here might be helphelpful for edits:


If trouble with replace individual text, may good master let it be known. It would be hardly happen that someone would contribute on usual place.
(Telegram is used by almost all Cambodians and till now no localization could be gained in usuall voluntary ways. Register there would be most problem as email isn’t usual in South and East Asia at all. Next o it, facebook is the nealy only used access to internet and people are used to use what “authorities” suggest to use.)

If there is a possible to merge the “fork”-xlm into a apk-version, it might be more effective for tests and improvement. Download hosted on sangham.net might make share also easier, and the string.xml wiki-page can be opened for edits without regregistration.