def export_translations(): # ssh -p 9999 [email protected] "cd /home/frappe/frappe-bench/apps/frappe && git diff" | patch -p1 for lang in get_all_languages(): if lang!="en": print("exporting " + lang) edited = dict(frappe.db.sql("""select source, translated from `tabTranslated Message` where language=%s""", lang)) for app in frappe.get_all_apps(True): path = os.path.join(frappe.get_app_path(app, "translations", lang + ".csv")) if os.path.exists(path): # only update existing strings current = dict(read_csv_file(path)) for key in current: current[key] = edited.get(key) or current[key] write_translations_file(app, lang, current, sorted(list(current)))