From 3e77e24b1f7cfd220498f44f6b261a673003f46f Mon Sep 17 00:00:00 2001 From: "Veronica K. B. Olsen" <1619840+vkbo@users.noreply.github.com> Date: Sat, 1 May 2021 17:12:59 +0200 Subject: [PATCH] The i18n files are no read from assets, while the ts files remain in the root folder --- .gitignore | 4 +++ {i18n => nw/assets/i18n}/project_de.json | 0 {i18n => nw/assets/i18n}/project_en.json | 0 {i18n => nw/assets/i18n}/project_fr.json | 0 {i18n => nw/assets/i18n}/project_nb_NO.json | 0 {i18n => nw/assets/i18n}/project_nn_NO.json | 0 {i18n => nw/assets/i18n}/project_pt.json | 0 nw/config.py | 2 +- setup.py | 33 +++++++++++++++++++++ 9 files changed, 38 insertions(+), 1 deletion(-) rename {i18n => nw/assets/i18n}/project_de.json (100%) rename {i18n => nw/assets/i18n}/project_en.json (100%) rename {i18n => nw/assets/i18n}/project_fr.json (100%) rename {i18n => nw/assets/i18n}/project_nb_NO.json (100%) rename {i18n => nw/assets/i18n}/project_nn_NO.json (100%) rename {i18n => nw/assets/i18n}/project_pt.json (100%) diff --git a/.gitignore b/.gitignore index 7873a701..f07eb4f8 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,10 @@ setup.iss novelwriter.desktop novelWriter.pyw + +# Translations +/nw/assets/i18n/*.qm +.qmake.stash i18n/*.qm i18n/*.qph diff --git a/i18n/project_de.json b/nw/assets/i18n/project_de.json similarity index 100% rename from i18n/project_de.json rename to nw/assets/i18n/project_de.json diff --git a/i18n/project_en.json b/nw/assets/i18n/project_en.json similarity index 100% rename from i18n/project_en.json rename to nw/assets/i18n/project_en.json diff --git a/i18n/project_fr.json b/nw/assets/i18n/project_fr.json similarity index 100% rename from i18n/project_fr.json rename to nw/assets/i18n/project_fr.json diff --git a/i18n/project_nb_NO.json b/nw/assets/i18n/project_nb_NO.json similarity index 100% rename from i18n/project_nb_NO.json rename to nw/assets/i18n/project_nb_NO.json diff --git a/i18n/project_nn_NO.json b/nw/assets/i18n/project_nn_NO.json similarity index 100% rename from i18n/project_nn_NO.json rename to nw/assets/i18n/project_nn_NO.json diff --git a/i18n/project_pt.json b/nw/assets/i18n/project_pt.json similarity index 100% rename from i18n/project_pt.json rename to nw/assets/i18n/project_pt.json diff --git a/nw/config.py b/nw/config.py index bea508bc..b2703d77 100644 --- a/nw/config.py +++ b/nw/config.py @@ -307,7 +307,7 @@ class Config: self.appIcon = os.path.join(self.iconPath, "novelwriter.svg") # Internationalisation - self.nwLangPath = os.path.join(self.appRoot, "i18n") + self.nwLangPath = os.path.join(self.assetPath, "i18n") logger.verbose("App path: %s" % self.appPath) logger.verbose("Last path: %s" % self.lastPath) diff --git a/setup.py b/setup.py index 25703109..4075bd55 100755 --- a/setup.py +++ b/setup.py @@ -217,12 +217,36 @@ def buildQtDocs(): def buildQtI18n(): """Build the lang.qm files for Qt Linguist. """ + print("") + print("Building Qt Localisation Files") + print("==============================") + print("") + try: subprocess.call(["lrelease", "-verbose", "novelWriter.pro"]) except Exception as e: print("QtI18n Release Error:") print(str(e)) + print("") + print("Copying Files to nw/assets") + print("") + + langDir = os.path.join("nw", "assets", "i18n") + for langFile in os.listdir("i18n"): + langPath = os.path.join("i18n", langFile) + if not os.path.isfile(langPath): + continue + + if langFile.endswith(".qm"): + destPath = os.path.join(langDir, langFile) + os.rename(langPath, destPath) + print("Moved: %s -> %s" % (langPath, destPath)) + + print("") + + return + ## # Qt Linguist TS Builder (qtlupdate) ## @@ -230,12 +254,21 @@ def buildQtI18n(): def buildQtI18nTS(): """Build the lang.ts files for Qt Linguist. """ + print("") + print("Building Qt Translation Files") + print("=============================") + print("") + try: subprocess.call(["pylupdate5", "-verbose", "-noobsolete", "novelWriter.pro"]) except Exception as e: print("QtI18n Release Error:") print(str(e)) + print("") + + return + ## # Sample Project ZIP File Builder (sample) ##