35 from PyQt5.QtCore import QLocale, QLibraryInfo, QTranslator, QCoreApplication
39 language_path = os.path.dirname(os.path.abspath(__file__))
42 app = QCoreApplication(sys.argv)
45 POT_source = open(os.path.join(language_path,
'OpenShot.pot')).read()
46 all_strings = re.findall(
'^msgid \"(.*)\"', POT_source, re.MULTILINE)
48 print(
"Scanning {} strings in all translation files...".format(len(all_strings)))
51 for filename
in fnmatch.filter(os.listdir(language_path),
'OpenShot.*.qm'):
52 lang_code = filename[:-3]
54 translator = QTranslator(app)
57 if translator.load(lang_code, language_path):
58 app.installTranslator(translator)
60 print(
"\n=================================================")
61 print(
"Showing translations for {}".format(filename))
62 print(
"=================================================")
64 for source_string
in all_strings:
65 translated_string = app.translate(
"", source_string)
66 if source_string != translated_string:
67 print(
' {} => {}'.format(source_string,translated_string))
69 app.removeTranslator(translator)