43 lines
1.3 KiB
Python
Executable File
43 lines
1.3 KiB
Python
Executable File
#!/usr/bin/python3
|
|
|
|
import csv
|
|
import git
|
|
import os
|
|
import requests
|
|
|
|
|
|
projectbasedir = os.path.dirname(os.path.dirname(__file__))
|
|
print(projectbasedir)
|
|
|
|
repo = git.Repo(projectbasedir)
|
|
|
|
msg = 'removing all translations less than 75% complete\n\n'
|
|
|
|
url = 'https://hosted.weblate.org/exports/stats/f-droid/f-droid/?format=csv'
|
|
r = requests.get(url)
|
|
stats = csv.reader(r.iter_lines(decode_unicode=True), delimiter=',')
|
|
next(stats) # skip CSV header
|
|
for row in stats:
|
|
if len(row) > 4:
|
|
if float(row[4]) > 75.0:
|
|
continue
|
|
locale = row[1]
|
|
if '_' in locale:
|
|
codes = locale.split('_')
|
|
if codes[1] == 'Hans':
|
|
codes[1] = 'CN'
|
|
elif codes[1] == 'Hant':
|
|
codes[1] = 'TW'
|
|
locale = codes[0] + '-r' + codes[1]
|
|
translation_file = 'app/src/main/res/values-' + locale + '/strings.xml'
|
|
percent = str(int(float(row[4]))) + '%'
|
|
print('Removing incomplete file: (' + percent + ')\t',
|
|
translation_file)
|
|
os.remove(os.path.join(projectbasedir, translation_file))
|
|
repo.index.remove([translation_file, ])
|
|
if len(percent) == 2:
|
|
msg += ' '
|
|
msg += percent + ' ' + row[1] + ' ' + row[0] + '\n'
|
|
|
|
repo.index.commit(msg)
|