I’m migrating from Zanata.
I have a pot file that is generated by CMake using xgettext when the project is built.
I’ve uploaded this file to the project using:
crowdin file upload -i 668188 src/translations/translations.pot
I can see this file under sources for the project, and I can also see the master branch there.
I have also uploaded all the existing po files.
Under Integrations, I’ve connected GitHub, but I don’t see anywhere to select the translations.pot which is not part of the git repository.
How do I set this up?
Thank you for reaching out and detailing the steps you’ve taken so far.
To set up your .pot file with the GitHub integration, you’ll need to ensure that the file is part of your repository. Since the .pot file is not currently in your git repository, you would need to add it there first. Once it’s part of your repository, you can then select it under the Integrations settings in Crowdin.
If you encounter any issues after adding the .pot file to your repository and setting up the integration, please don’t hesitate to reach out with a screenshot of your repository showing the .pot file and the path, as well as specifying any translations that are not syncing as expected.
More info can be found here:
GitHub Integration (File-based) | Crowdin Documentation (Basic recomendations)
VCS Integrations: Configuring Online | Crowdin Documentation (More advanced options)
Configuration File | Crowdin Developer Portal (In case you’re using not UI but crowdin.yml to manage the integration)
I’ve added translations.pot to a branch on the repository, and configured the the branch, but I still nothing is commited to the branch when I try to sync, “Push sources” is checked. The configuration file was committed so it seems it got access.
Never mind, it looks to be working now.
Hi @jonaski , no worries, we’re happy that it works now
Although it’s working, having the gettext pot file part of the git repository is undesired and inconvenient, when we develop and change the code, even moving a few lines, this file is changed so it’s listed among the changed files with git, but we do not want to commit this file other than periodically.
Other thing i see is that when Crowdin opens the pull request with the translation changes, it commits one commit per language, this triggers github actions for each commit which takes forever to complete, but I guess I could ignore actions for it based on pull request title. It would be better if it would squash all commits into one on each update.
Another question. I’ve only added the languages for the project which already have translations, but I want all languages to be available but only languages that have translations to be committed to the repository. I noticed that languages that did not have translations were committed so I had to remove those.
Can users add languages them-self, or do I need to manually add languages when users requests it?
Hi @jonaski,
Thank you for your feedback!
Target languages can be added to the project only by the owner or managers. When exporting translations, all languages are included in the sync. If you do not want some existing languages of the project to be exported, you can exclude specific target languages for the file. As a result, these languages will not be exported