| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 | 2 |
| 3 import filecmp | 3 import filecmp |
| 4 import os | 4 import os |
| 5 import re | 5 import re |
| 6 import shutil | 6 import shutil |
| 7 import sys | 7 import sys |
| 8 import urllib2 | 8 import urllib2 |
| 9 if os.name == 'nt': | |
| 10 import win32api, win32con | |
| 11 from lxml import etree | 9 from lxml import etree |
| 12 from StringIO import StringIO | 10 from StringIO import StringIO |
| 13 from zipfile import ZipFile | 11 from zipfile import ZipFile |
| 14 | 12 |
| 15 import buildtools.localeTools | 13 import buildtools.localeTools |
| 16 | 14 |
| 17 BASE_PATH = os.path.dirname(os.path.abspath(__file__)) | 15 BASE_PATH = os.path.dirname(os.path.abspath(__file__)) |
| 18 LOCALES_PATH = os.path.join(BASE_PATH, "mobile", "android", "base", "locales", | 16 LOCALES_PATH = os.path.join(BASE_PATH, "mobile", "android", "base", "locales", |
| 19 "adblockbrowser") | 17 "adblockbrowser") |
| 20 PROJECT_URL = "http://api.crowdin.net/api/project/adblockbrowserandroid" | 18 PROJECT_URL = "http://api.crowdin.net/api/project/adblockbrowserandroid" |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 76 language.findtext('code'): language.findtext('translated_progress') | 74 language.findtext('code'): language.findtext('translated_progress') |
| 77 }) | 75 }) |
| 78 return languages | 76 return languages |
| 79 | 77 |
| 80 def remove_redundant_translations(): | 78 def remove_redundant_translations(): |
| 81 default_locale_path = os.path.join(LOCALES_PATH, DEFAULT_LOCALE) | 79 default_locale_path = os.path.join(LOCALES_PATH, DEFAULT_LOCALE) |
| 82 for locale in os.listdir(LOCALES_PATH): | 80 for locale in os.listdir(LOCALES_PATH): |
| 83 if locale == DEFAULT_LOCALE: | 81 if locale == DEFAULT_LOCALE: |
| 84 continue | 82 continue |
| 85 locale_path = os.path.join(LOCALES_PATH, locale) | 83 locale_path = os.path.join(LOCALES_PATH, locale) |
| 86 # ignore system files | 84 # ignore files |
|
diegocarloslima
2017/09/19 20:03:54
I think you can change the comment to just 'ignore
jens
2017/09/20 08:38:12
Acknowledged.
| |
| 87 if os.path.isfile(locale_path): | 85 if os.path.isfile(locale_path): |
| 88 continue; | 86 continue |
| 89 # ignore hidden folders | 87 # ignore hidden folders |
| 90 if folder_is_hidden(locale_path): | 88 if locale_path.startswith('.'): |
| 91 continue; | 89 continue |
| 92 if not filecmp.dircmp(locale_path, default_locale_path).diff_files: | 90 if not filecmp.dircmp(locale_path, default_locale_path).diff_files: |
| 93 shutil.rmtree(locale_path) | 91 shutil.rmtree(locale_path) |
| 94 | |
| 95 def folder_is_hidden(p): | |
| 96 if os.name == 'nt': | |
| 97 # windows | |
| 98 attribute = win32api.GetFileAttributes(p) | |
| 99 return attribute & (win32con.FILE_ATTRIBUTE_HIDDEN | win32con.FILE_ATTRI BUTE_SYSTEM) | |
|
Vasily Kuznetsov
2017/09/19 21:48:04
Our Python style guide limits lines to 79 characte
jens
2017/09/20 08:38:12
Acknowledged.
| |
| 100 else: | |
| 101 # linux and osx | |
| 102 return p.startswith('.') | |
| 103 | 92 |
| 104 if __name__ == "__main__": | 93 if __name__ == "__main__": |
| 105 if len(sys.argv) < 3: | 94 if len(sys.argv) < 3: |
| 106 print_usage() | 95 print_usage() |
| 107 sys.exit(1) | 96 sys.exit(1) |
| 108 | 97 |
| 109 command, api_key = sys.argv[1:] | 98 command, api_key = sys.argv[1:] |
| 110 if command != "get": | 99 if command != "get": |
| 111 print_usage() | 100 print_usage() |
| 112 sys.exit(2) | 101 sys.exit(2) |
| 113 | 102 |
| 114 get_translations(api_key) | 103 get_translations(api_key) |
| 115 remove_redundant_translations() | 104 remove_redundant_translations() |
| LEFT | RIGHT |