change link to localization

This commit is contained in:
Martin Rotter 2023-08-17 09:20:44 +02:00
parent 565cec0d8e
commit 41ffae5c22
4 changed files with 3 additions and 53 deletions

View File

@ -47,7 +47,7 @@
<url type="homepage">https://github.com/martinrotter/rssguard</url> <url type="homepage">https://github.com/martinrotter/rssguard</url>
<url type="bugtracker">https://github.com/martinrotter/rssguard/issues</url> <url type="bugtracker">https://github.com/martinrotter/rssguard/issues</url>
<url type="donation">https://github.com/sponsors/martinrotter</url> <url type="donation">https://github.com/sponsors/martinrotter</url>
<url type="translate">https://explore.transifex.com/martinrotter/rssguard</url> <url type="translate">https://crowdin.com/project/rssguard</url>
<keywords> <keywords>
<keyword translate="no">ATOM</keyword> <keyword translate="no">ATOM</keyword>
<keyword translate="no">JSON</keyword> <keyword translate="no">JSON</keyword>

View File

@ -638,13 +638,9 @@ After starting RSS Guard this way, reproduce your issue and attach the log file
For broader questions and general ideas, use the [Discussions page](https://github.com/martinrotter/rssguard/discussions). For broader questions and general ideas, use the [Discussions page](https://github.com/martinrotter/rssguard/discussions).
### Localization <a id="locali"></a> ### Localization <a id="locali"></a>
RSS Guard supports localization to [many languages](https://app.transifex.com/martinrotter/rssguard). RSS Guard supports localization to [many languages](https://crowdin.com/project/rssguard).
If you are interested in translating RSS Guard, then do this: If you are interested in translating RSS Guard, then go to [RSS Guard page on Crowdin](https://crowdin.com/project/rssguard) and check status of currently supported localizations.
1. Go [to RSS Guard's page on Transifex](https://app.transifex.com/martinrotter/rssguard) and check status of currently supported localizations.
2. [Create a Transifex account](http://www.transifex.com/signin) (you can use social networks to login), and work on existing translations. If no translation team for your country/language exists, then ask to create the "localization team" via the website.
**All translators commit themselves to keep their translations up-to-date. If translation is not updated by the author regularly, and only a small number of strings is translated, then those translations along with their teams will eventually be REMOVED from the project!!! At least 50% of strings must be translated for translation to be added to project.** **All translators commit themselves to keep their translations up-to-date. If translation is not updated by the author regularly, and only a small number of strings is translated, then those translations along with their teams will eventually be REMOVED from the project!!! At least 50% of strings must be translated for translation to be added to project.**

@ -1 +0,0 @@
Subproject commit 0636cd797a056e120e34641375b0244f33c82709

View File

@ -1,45 +0,0 @@
# Setup parameters.
#RESOURCE = "./localization/rssguard_en.ts"
#CODES = "cs da de en_GB en_US es fi fr gl he id it ja lt nl pl pt_BR pt_PT ru sv uk zh_CN zh_TW"
#TRANSLATION = './localization/rssguard_$CODE.ts'
import sys
import os
import urllib
from transifex.api import transifex_api
from pprint import pprint
# Read API token.
api_token = sys.argv[1]
print("API token: {}".format(api_token))
transifex_api.setup(auth = api_token)
# Constants.
org_slug = "martinrotter"
proj_slug = "rssguard"
translation_file = os.path.normpath("./localization/rssguard_{}.ts")
# Organization/project.
organization = transifex_api.Organization.get(slug = org_slug)
project = organization.fetch('projects').get(slug = proj_slug)
resource = project.fetch('resources').get(slug = proj_slug)
languages = project.fetch('languages')
# Upload resource file.
with open(translation_file.format("en"), "r", encoding = "utf-8") as file:
print("Uploading resource...")
resource_data = file.read()
transifex_api.ResourceStringsAsyncUpload.upload(resource_data, resource = resource)
# Download translations.
for lang in languages:
print("Downloading {} translation...".format(lang.code))
url = transifex_api.ResourceTranslationsAsyncDownload.download(resource = resource, language = lang)
target_path = translation_file.format(lang.code)
urllib.request.urlretrieve(url, target_path)