# Translating Syncthing (on Weblate)

**URL:** https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772
**Category:** Development
**Created:** [February 9, 2023, 7:51am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772 "2023-02-09T07:51:29Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [February 9, 2023, 7:51am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/1 "2023-02-09T07:51:29Z")

</div>

Anyone is welcome to contribute translations for Syncthing. Just **sign up at [Hosted Weblate](https://hosted.weblate.org/projects/syncthing/)** and get started on any existing language. The base (source) language is English, but you can easily cross-check from other already translated languages that you know. New languages can be requested using the _Start new translation_ button at the bottom, but need approval from a maintainer.

Note that there is no formal review process, so please get in touch directly with others working on your language if there are disagreements and try working together.

The previously used translation platform, _Transifex_, is currently still in use for the Android app component. We plan to migrate that as well in the coming months.

---

<div class="post-metadata">

### Author: ![calmh](https://forum.syncthing.net/user_avatar/forum.syncthing.net/calmh/32/15311_2.png) [@calmh](https://forum.syncthing.net/u/calmh)
#### Post date: [February 9, 2023, 7:58am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/2 "2023-02-09T07:58:01Z")

</div>



---

<div class="post-metadata">

### Author: ![tomasz86](https://forum.syncthing.net/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@tomasz86](https://forum.syncthing.net/u/tomasz86)
#### Post date: [February 20, 2023, 4:17am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/3 "2023-02-20T04:17:38Z")

</div>

I wanted to translate the newly added strings, but it looks like there’s a problem.

> The translation is temporarily closed for contributions due to maintenance, please come back later.
> 
> The translation was automatically locked due to following alerts: [Could not merge the repository.](https://hosted.weblate.org/projects/syncthing/gui/#alerts)

```plaintext
Rebasing (1/57)
dropping e48b1e85bf16d70627a988144829813130861545 Translated using Weblate (Valencian) -- patch contents already upstream
Rebasing (2/57)
dropping 27dca4c65e9e4acac0290e3de5d19b0a1b569815 Translated using Weblate (Czech) -- patch contents already upstream
Rebasing (3/57)
dropping e17517f74b2a834e42a7889d15c1ea203b522cf8 Translated using Weblate (Danish) -- patch contents already upstream
Rebasing (4/57)
error: could not apply 63960e33b... Translated using Weblate (German)
Resolve all conflicts manually, mark them as resolved with
"git add/rm <conflicted_files>", then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase", run "git rebase --abort".
Could not apply 63960e33b... Translated using Weblate (German)
Auto-merging gui/default/assets/lang/lang-de.json
CONFLICT (content): Merge conflict in gui/default/assets/lang/lang-de.json
 (1)

```

---

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [February 20, 2023, 7:49am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/4 "2023-02-20T07:49:51Z")

</div>

Saw the notification, will check what’s going on as soon as I’m at my laptop again.

---

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [February 20, 2023, 8:32am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/5 "2023-02-20T08:32:25Z")

</div>

So it seems the automatic retrieval and committing of changes to our main repository creates conflicts when Weblate tries to rebase its commits on top of the updated upstream branch where they are already contained. Merging works fine however, so I switched it over to try a merge instead of a rebase. That fixed the immediate error, let’s see how it behaves in the coming weeks.

---

<div class="post-metadata">

### Author: ![tomasz86](https://forum.syncthing.net/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@tomasz86](https://forum.syncthing.net/u/tomasz86)
#### Post date: [February 20, 2023, 9:27am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/6 "2023-02-20T09:27:08Z")

</div>

Great! Thanks for a very quick reaction. Still getting used to Weblate though 😅.

---

<div class="post-metadata">

### Author: ![imsodin](https://forum.syncthing.net/user_avatar/forum.syncthing.net/imsodin/32/3317_2.png) [@imsodin](https://forum.syncthing.net/u/imsodin)
#### Post date: [September 28, 2023, 10:08am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/7 "2023-09-28T10:08:01Z")

</div>

@acolomb I got some errors from the syncthing-android transifex script a while ago, probably the API upgrade/deprecation you mentioned at some point. Would it be possible to move syncthing-android translations too? Just gauging whether I should try to fix those scripts (at some point, no prio/hurry at all on my side) or if this could fix 2 issues at the same time.

---

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [September 28, 2023, 12:00pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/8 "2023-09-28T12:00:39Z")

</div>

It’s definitely possible and still on my agenda. However the first prerequisite in my head is to get a local build of syncthing-android set up at all. Thus being able to investigate how it interacts with the translation system at all. Being a total Android app development novice, this is not a small task. Sorry I can’t give you an estimate on when I’ll have time for it.

If there is a good tutorial on how to get started / a summary of how i18n and Transifex integration currently works for the Android app, that would be a great starting point for me.

---

<div class="post-metadata">

### Author: ![imsodin](https://forum.syncthing.net/user_avatar/forum.syncthing.net/imsodin/32/3317_2.png) [@imsodin](https://forum.syncthing.net/u/imsodin)
#### Post date: [September 28, 2023, 3:55pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/9 "2023-09-28T15:55:09Z")

</div>

on phone atm, everything from memory, can give a better explanation next week:

top-level readme has instructions to build of you want to manually set everything up. alternative is using docker, there are instructions in the readme in that sub dir, or using android studio. i’d recommend docker.

scripts to push/pull translations are in the scripts dir. i believe the translation string filnames/structure is an android standard.

---

<div class="post-metadata">

### Author: ![tomasz86](https://forum.syncthing.net/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@tomasz86](https://forum.syncthing.net/u/tomasz86)
#### Post date: [November 5, 2023, 2:56pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/10 "2023-11-05T14:56:37Z")

</div>

Not sure what is going on exactly, but Weblate seems to have been stuck with this alert for about 2 weeks now.

 ![image](https://forum-uploads.syncthingcdn.net/original/2X/7/715459e69fb5bbad9e521971ecaa5d10eac7a145.png)

 ![image](https://forum-uploads.syncthingcdn.net/original/2X/e/ea0d8e4aee2540d0b818ba21f75f56e07b2bff61.png)

---

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [November 5, 2023, 10:05pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/11 "2023-11-05T22:05:09Z")

</div>

That’s perfectly normal AFAICT. It’s caused by how we interact with Weblate through scripts. It appeared about 2 weeks ago because that’s when I last reset the Weblate internal Git repo to the upstream state.

Weblate creates separate commits for each language update regularly. It could propose them for merging in a PR, as we’ll tentatively be doing for the Android app. But here we just download the latest end result from Weblate regularly and commit that to the upstream repo. Weblate notices that and merges the upstream `main` branch into its internal branch. Which pretty much always works without conflicts. But officially, the Weblate internal branch and `main` are not the same at that point, because of different history lines.

We could switch to Weblate doing a rebase instead of merging, which should end up eradicating any outstanding changes in the Weblate branch and just make them identical again. However, that actually does cause conflicts regularly. Because even though the end result of the rebase should be identical to the latest upstream commit (where the JSON files were imported), Git still tries to replay each individual commit that Weblate recorded. Somewhere in between, conflicts arise because of neighboring changes or possibly keys added upstream. So instead we switched to the “merge” setting and live with the warning that the upstream branch is diverting in history from what Weblate is working with.

Everything should still be working normally despite the alert.

---

<div class="post-metadata">

### Author: ![shetozz](https://forum.syncthing.net/user_avatar/forum.syncthing.net/shetozz/32/15631_2.png) [@shetozz](https://forum.syncthing.net/u/shetozz)
#### Post date: [December 14, 2023, 8:35pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/12 "2023-12-14T20:35:31Z")

</div>

Hi there, what should I do to get my language to be listed in the web GUI language options?

---

<div class="post-metadata">

### Author: ![acolomb](https://forum.syncthing.net/user_avatar/forum.syncthing.net/acolomb/32/11343_2.png) [@acolomb](https://forum.syncthing.net/u/acolomb)
#### Post date: [December 15, 2023, 9:39pm UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/13 "2023-12-15T21:39:29Z")

</div>

What language is it? Is it already listed here? [Syncthing/GUI strings @ Hosted Weblate](https://hosted.weblate.org/projects/syncthing/gui/#translations)

If yes, it might have too low completion. Languages get filtered out if less than 75 % of the strings are translated. You can help reach the required 95 % again by contributing there on Weblate. It should then show up in the next released version.

If it’s not yet among the translations, you will need to start a new one. Refer to the available language codes here: [https://github.com/WeblateOrg/language-data/blob/main/languages.csv](https://github.com/WeblateOrg/language-data/blob/main/languages.csv), we can easily add new ones (for people to work on though, there is no professional translation team 😉).

---

<div class="post-metadata">

### Author: ![shetozz](https://forum.syncthing.net/user_avatar/forum.syncthing.net/shetozz/32/15631_2.png) [@shetozz](https://forum.syncthing.net/u/shetozz)
#### Post date: [December 16, 2023, 4:17am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/14 "2023-12-16T04:17:10Z")

</div>

It’s Arabic, it had a relatively low percentage, but I completed all strings and GUI strings.

So, hopefully it will show up on the next release 😄

---

<div class="post-metadata">

### Author: ![calmh](https://forum.syncthing.net/user_avatar/forum.syncthing.net/calmh/32/15311_2.png) [@calmh](https://forum.syncthing.net/u/calmh)
#### Post date: [December 16, 2023, 8:05am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/15 "2023-12-16T08:05:03Z")

</div>

Interesting. I don’t think we have any right-to-left support. 😕

---

<div class="post-metadata">

### Author: ![shetozz](https://forum.syncthing.net/user_avatar/forum.syncthing.net/shetozz/32/15631_2.png) [@shetozz](https://forum.syncthing.net/u/shetozz)
#### Post date: [December 16, 2023, 8:33am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/16 "2023-12-16T08:33:16Z")

</div>

So you’re telling me that I spent 3 days translating for nothing 😅

---

<div class="post-metadata">

### Author: ![calmh](https://forum.syncthing.net/user_avatar/forum.syncthing.net/calmh/32/15311_2.png) [@calmh](https://forum.syncthing.net/u/calmh)
#### Post date: [December 16, 2023, 8:34am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/17 "2023-12-16T08:34:16Z")

</div>

Perhaps, initially, but maybe you spent three days translating in order to motivate us to implement that support, whatever it means.

---

<div class="post-metadata">

### Author: ![shetozz](https://forum.syncthing.net/user_avatar/forum.syncthing.net/shetozz/32/15631_2.png) [@shetozz](https://forum.syncthing.net/u/shetozz)
#### Post date: [December 16, 2023, 8:36am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/18 "2023-12-16T08:36:38Z")

</div>

Hopefully it will be supported at some point, I did it because I can mainly, and Arabic support -despite being a major language- is terrible almost everywhere, so I’m trying to improve it as much as I can.

---

<div class="post-metadata">

### Author: ![shetozz](https://forum.syncthing.net/user_avatar/forum.syncthing.net/shetozz/32/15631_2.png) [@shetozz](https://forum.syncthing.net/u/shetozz)
#### Post date: [December 16, 2023, 8:39am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/19 "2023-12-16T08:39:29Z")

</div>

BTW, should I create an issue for RTL support, or just wait till it gets supported eventually?

---

<div class="post-metadata">

### Author: ![tomasz86](https://forum.syncthing.net/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@tomasz86](https://forum.syncthing.net/u/tomasz86)
#### Post date: [December 16, 2023, 8:40am UTC](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772/20 "2023-12-16T08:40:30Z")

</div>

May be useful: [https://stackoverflow.com/questions/19730598/right-to-left-support-for-twitter-bootstrap-3](https://stackoverflow.com/questions/19730598/right-to-left-support-for-twitter-bootstrap-3).

[Next page](https://forum.syncthing.net/t/translating-syncthing-on-weblate/19772.md?page=2)
