Commit 3422fcfe by Sarina Canelake

Update how translations are pulled

parent cb590405
#!/usr/bin/env python
"""
Utility for cleaning up your local directory after switching between
branches with different translation levels (eg master branch, with only
reviewed translations, versus dev branch, with all translations)
"""
from __future__ import print_function
import os
from i18n.config import CONFIGURATION
from i18n.execute import execute
def clean_conf_folder(locale):
"""Remove the configuration directory for `locale`"""
dirname = CONFIGURATION.get_messages_dir(locale)
command = "rm -rf {}".format(dirname)
print(command)
try:
execute(command)
except Exception as exc:
print("Encountered error {}; continuing...".format(exc))
return
def clean_configuration_directory():
"""
Remove the configuration directories for all locales
in CONFIGURATION.translated_locales
"""
for locale in CONFIGURATION.translated_locales:
clean_conf_folder(locale)
if __name__ == '__main__':
clean_configuration_directory()
......@@ -18,6 +18,8 @@ def push():
def pull():
print("Pulling languages from transifex...")
# Pull translations from all languages where there is
# at least 10% reviewed translations
execute('tx pull --mode=reviewed --all')
clean_translated_locales()
......@@ -52,7 +54,7 @@ def clean_file(filename):
except Exception as exc:
# An exception can occur when a language is deleted from Transifex.
# Don't totally fail here.
print("Encountered error %s with filename %s - does language project still exist on Transifex?", exc, filename)
print("Encountered error {} with filename {} - language project may no longer exist on Transifex".format(exc, filename))
return
if po.header.find(EDX_MARKER) != -1:
new_header = get_new_header(po)
......
......@@ -213,4 +213,6 @@ if __name__ == '__main__':
logging.basicConfig(stream=sys.stdout, level=log_level)
# pylint: enable=invalid-name
print("Validating languages...")
main(languages=args.language, empty=args.empty, verbosity=args.verbose)
print("Finished validating languages")
......@@ -535,61 +535,61 @@ LANGUAGES = (
('fake2', u'Fake translations'), # Another dummy language for testing (not pushed to prod)
('ar', u'العربية'), # Arabic
# ('az', u'azərbaycanca'), # Azerbaijani
# ('bg-bg', u'български (България)'), # Bulgarian (Bulgaria)
# ('bn', u'বাংলা'), # Bengali
# ('bn-bd', u'বাংলা (বাংলাদেশ)'), # Bengali (Bangladesh)
# ('bs', u'bosanski'), # Bosnian
('az', u'azərbaycanca'), # Azerbaijani
('bg-bg', u'български (България)'), # Bulgarian (Bulgaria)
('bn', u'বাংলা'), # Bengali
('bn-bd', u'বাংলা (বাংলাদেশ)'), # Bengali (Bangladesh)
('bs', u'bosanski'), # Bosnian
('ca', u'Català'), # Catalan
# ('ca@valencia', u'Català (València)'), # Catalan (Valencia)
('ca@valencia', u'Català (València)'), # Catalan (Valencia)
('cs', u'Čeština'), # Czech
# ('cy', u'Cymraeg'), # Welsh
('cy', u'Cymraeg'), # Welsh
('de-de', u'Deutsch (Deutschland)'), # German (Germany)
# ('el', u'Ελληνικά'), # Greek
('el', u'Ελληνικά'), # Greek
('en@lolcat', u'LOLCAT English'), # LOLCAT English
('en@pirate', u'Pirate English'), # Pirate English
('es-419', u'Español (Latinoamérica)'), # Spanish (Latin America)
# ('es-ar', u'Español (Argentina)'), # Spanish (Argentina)
# ('es-ec', u'Español (Ecuador)'), # Spanish (Ecuador)
('es-ar', u'Español (Argentina)'), # Spanish (Argentina)
('es-ec', u'Español (Ecuador)'), # Spanish (Ecuador)
('es-es', u'Español (España)'), # Spanish (Spain)
# ('es-mx', u'Español (México)'), # Spanish (Mexico)
# ('es-pe', u'Español (Perú)'), # Spanish (Peru)
# ('es-us', u'Español (Estados Unidos)'), # Spanish (United States)
# ('et-ee', u'Eesti (Eesti)'), # Estonian (Estonia)
# ('eu-es', u'euskara (Espainia)'), # Basque (Spain)
# ('fa', u'فارسی'), # Persian
# ('fa-ir', u'فارسی (ایران)'), # Persian (Iran)
# ('fi-fi', u'Suomi (Suomi)'), # Finnish (Finland)
('es-mx', u'Español (México)'), # Spanish (Mexico)
('es-pe', u'Español (Perú)'), # Spanish (Peru)
('es-us', u'Español (Estados Unidos)'), # Spanish (United States)
('et-ee', u'Eesti (Eesti)'), # Estonian (Estonia)
('eu-es', u'euskara (Espainia)'), # Basque (Spain)
('fa', u'فارسی'), # Persian
('fa-ir', u'فارسی (ایران)'), # Persian (Iran)
('fi-fi', u'Suomi (Suomi)'), # Finnish (Finland)
('fr', u'Français'), # French
# ('gl', u'Galego'), # Galician
# ('he', u'עברית'), # Hebrew
('gl', u'Galego'), # Galician
('he', u'עברית'), # Hebrew
('hi', u'हिन्दी'), # Hindi
# ('hu', u'magyar'), # Hungarian
('hu', u'magyar'), # Hungarian
('hy-am', u'Հայերեն (Հայաստան)'), # Armenian (Armenia)
('id', u'Bahasa Indonesia'), # Indonesian
('it-it', u'Italiano (Italia)'), # Italian (Italy)
('ja-jp', u'日本語(日本)'), # Japanese (Japan)
# ('kk-kz', u'қазақ тілі (Қазақстан)'), # Kazakh (Kazakhstan)
# ('km-kh', u'ភាសាខ្មែរ (កម្ពុជា)'), # Khmer (Cambodia)
('kk-kz', u'қазақ тілі (Қазақстан)'), # Kazakh (Kazakhstan)
('km-kh', u'ភាសាខ្មែរ (កម្ពុជា)'), # Khmer (Cambodia)
('ko-kr', u'한국어(대한민국)'), # Korean (Korea)
('lt-lt', u'Lietuvių (Lietuva)'), # Lithuanian (Lithuania)
# ('ml', u'മലയാളം'), # Malayalam
# ('mn', u'Монгол хэл'), # Mongolian
# ('ms', u'Bahasa Melayu'), # Malay
('ml', u'മലയാളം'), # Malayalam
('mn', u'Монгол хэл'), # Mongolian
('ms', u'Bahasa Melayu'), # Malay
('nb', u'Norsk bokmål'), # Norwegian Bokmål
# ('ne', u'नेपाली'), # Nepali
('ne', u'नेपाली'), # Nepali
('nl-nl', u'Nederlands (Nederland)'), # Dutch (Netherlands)
('pl', u'Polski'), # Polish
('pt-br', u'Português (Brasil)'), # Portuguese (Brazil)
# ('pt-pt', u'Português (Portugal)'), # Portuguese (Portugal)
# ('ru', u'Русский'), # Russian
# ('si', u'සිංහල'), # Sinhala
# ('sk', u'Slovenčina'), # Slovak
('pt-pt', u'Português (Portugal)'), # Portuguese (Portugal)
('ru', u'Русский'), # Russian
('si', u'සිංහල'), # Sinhala
('sk', u'Slovenčina'), # Slovak
('sl', u'Slovenščina'), # Slovenian
# ('th', u'ไทย'), # Thai
('th', u'ไทย'), # Thai
('tr-tr', u'Türkçe (Türkiye)'), # Turkish (Turkey)
('uk', u'Українська'), # Ukranian
# ('ur', u'اردو'), # Urdu
('ur', u'اردو'), # Urdu
('vi', u'Tiếng Việt'), # Vietnamese
('zh-cn', u'中文(简体)'), # Chinese (China)
('zh-tw', u'中文(台灣)'), # Chinese (Taiwan)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment