nextcloud / nextcloud/docker-ci
Request translation sync for FormVox
Nobody has claimed this yet.
- Dominant language
- Perl
- Stars
- 45
- Forks
- 37
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 8
Description
Prologue
The Nextcloud community on Transifex produces the translations of your app. To this end, the app author undertakes to comply with the following requirements:
- The app must be available in the Nextcloud App Store. Should the app be removed from the store, the translation work on Transifex will be paused or the resource removed.
- The app author must create an account on Transifex and join the Nextcloud project. This makes it easier to respond to queries regarding the app’s strings.
👤 App repository
To be done by you
-
Link to your repository: https://github.com/nextcloud/formvox
-
If the app is not in the Nextcloud organisation — not applicable, FormVox is in the
nextcloudorganisation- Invite
nextcloud-botwith write permissions - Make sure all translated branches do not have branch protection enabled, see https://docs.nextcloud.com/server/latest/developer_manual/basics/front-end/l10n.html#setup-of-the-transifex-sync for more details
- Invite
-
Create file
l10n/.gitkeepwith empty content -
Add
.l10nignoreto exclude compiled JS files and thirdparty code, e.g. ignoring compiled javascript assets and composer PHP dependencies in the vendor/ directory:js/ vendor/ -
Create file
.tx/configwith the app id (formvox) substituted 3 times:[main] host = https://www.transifex.com lang_map = hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja, bg_BG: bg, cs_CZ: cs, fi_FI: fi [o:nextcloud:p:nextcloud:r:formvox] file_filter = translationfiles/<lang>/formvox.po source_file = translationfiles/templates/formvox.pot source_lang = en type = PO -
⚙️ Validate your repository and translation strings:
bash translations/validateSyncSetup.sh nextcloud formvox -
Name of the Transifex user:
rikdekkerFor details see https://nextcloud.com/translation/ .
App ID: formvox
Source template is translationfiles/templates/formvox.pot — 824 strings, extracted from both the Vue frontend and the PHP backend, validated with msgfmt --check.
Before opening this I ran the English source strings past the guidelines and fixed what they tripped: 29 Title Case strings rewritten to sentence case, 28 ... runs replaced with U+00A0 + U+2026, and one raw URL taken out of t(). Product names (Microsoft Forms, Export Excel) keep their capitals.
translationfiles/{nl,de,fr,ca,uk}/formvox.po are seeded with the app's existing hand-made translations, so those five languages don't start from zero:
| Language | Translated | Untranslated |
|---|---|---|
| Dutch | 803 / 824 | 21 |
| German | 803 / 824 | 21 |
| French | 803 / 824 | 21 |
| Catalan | 803 / 824 | 21 |
| Ukrainian | 787 / 824 | 37 |
All five validate with msgfmt --check. Happy to drop them if you would rather the resource started clean.
I am aware from #977 that new resources are on hold because translators cannot cope with the influx of strings. No rush on this one — I am filing it so it is ready whenever you get to it.
🏗️ Sysadmin team
-
👀 Ensure access:
- Nextcloud organisation repository: Add
nextcloud-botwith admin permissions - Other repositories:
- Ensure the invite was accepted
- Ensure the app certificate is linked to the same repository/author https://github.com/nextcloud/app-certificate-requests
- Nextcloud organisation repository: Add
-
⚙️ Ensure repository setup and run initial source validation:
bash translations/validateSyncSetup.sh Owner Repository -
🧑💻 Run the first sync manually:
ssh transifex-sync.nextcloud.com
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with translations/validateSyncSetup.sh and review the repository setup in .tx/config, l10n/, and .l10nignore. Run the validation command for nextcloud formvox, then follow the checklist for access and the first sync on transifex-sync.nextcloud.com. Done means validation passes and the initial translation sync is completed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bash, javascript, php
- Domain
- devops, localization
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 38/100