#!/usr/bin/python import sys import os import urllib urlstart = 'http://l10n-status.gnome.org/' urlend = '/index.html' modules_dict = { 'gnome-2.12': ['developer-libs', 'desktop'], 'gnome-2.14': ['developer-libs', 'desktop'], 'HEAD': ['fifth-toe, office, extras'] # this is packages not in GNOME proper } default_module = 'gnome-2.12' all_languages = [ 'af', 'am', 'ang', 'ar', 'as', 'az', 'az_IR', 'be', 'bg', 'bn', 'br', 'bs', 'ca', 'cs', 'cy', 'da', 'de', 'el', 'en_AU', 'en_CA', 'en_GB', 'eo', 'es', 'et', 'eu', 'fa', 'fi', 'fr', 'ga', 'gl', 'gu', 'he', 'hi', 'hr', 'hu', 'hy', 'ia', 'id', 'is', 'it', 'ja', 'ka', 'kn', 'ko', 'ku', 'li', 'lt', 'lv', 'mi', 'mk', 'ml', 'mn', 'mr', 'ms', 'nb', 'nds@nfs', 'nds_DE', 'ne', 'nl', 'nn', 'nso', 'or', 'pa', 'pl', 'pt', 'pt_BR', 'ro', 'ru', 'rw', 'sk', 'sl', 'sq', 'sr', 'sr@ije', 'sv', 'ta', 'te', 'tg', 'th', 'tk', 'tl', 'tr', 'ug', 'uk', 'uz', 'uz@Latn', 'vi', 'wa', 'xh', 'yi', 'yo', 'zh_CN', 'zh_TW', 'zu' ] def download (url): print "downloading", url filename = url[url.rfind ('/')+1:] urllib.urlretrieve (url, filename) return filename if len (sys.argv) <= 1: sys.stderr.write("usage:\n") sys.stderr.write("%s de es fa\t# get translations for German, Spanish, and Persian\n" % sys.argv[0]) sys.stderr.write("%s ALL\t\t# get translations for all languages\n" % sys.argv[0]) sys.exit (1) langlist = sys.argv[1:] if 'ALL' in langlist: langlist = all_languages modules = modules_dict[default_module] for lang in langlist: os.system ("mkdir -p %s" % lang) os.chdir (lang) alltrans = '../' + lang + '-all.txt' os.system ('rm -f %s' % alltrans) for module in modules: ind = download (urlstart + default_module + '/' + lang + '/' + module + urlend) indcont = open (ind).readlines () for line in indcont: pos = line.find ('.po"') if pos != -1: filename = line[line.rfind ('/', 0, pos)+1:line.find ('"', pos)] download (urlstart + default_module + '/PO/' + filename) os.system ('msgexec -i %s ../filter.py >> %s' % (filename, alltrans)) os.chdir ("..")