aboutsummaryrefslogtreecommitdiffstats
path: root/modules/localization.py
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2022-10-17 18:15:32 +0000
committerAUTOMATIC <16777216c@gmail.com>2022-10-17 18:15:32 +0000
commitcf47d13c1e11fcb7169bac7488d2c39e579ee491 (patch)
treed428f019f09b858f5480fe20c3c5b325f6140939 /modules/localization.py
parent695377a8b9f7de28b880d96487a9ddf7230cff14 (diff)
downloadstable-diffusion-webui-gfx803-cf47d13c1e11fcb7169bac7488d2c39e579ee491.tar.gz
stable-diffusion-webui-gfx803-cf47d13c1e11fcb7169bac7488d2c39e579ee491.tar.bz2
stable-diffusion-webui-gfx803-cf47d13c1e11fcb7169bac7488d2c39e579ee491.zip
localization support
Diffstat (limited to 'modules/localization.py')
-rw-r--r--modules/localization.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/modules/localization.py b/modules/localization.py
new file mode 100644
index 00000000..b1810cda
--- /dev/null
+++ b/modules/localization.py
@@ -0,0 +1,31 @@
+import json
+import os
+import sys
+import traceback
+
+localizations = {}
+
+
+def list_localizations(dirname):
+ localizations.clear()
+
+ for file in os.listdir(dirname):
+ fn, ext = os.path.splitext(file)
+ if ext.lower() != ".json":
+ continue
+
+ localizations[fn] = os.path.join(dirname, file)
+
+
+def localization_js(current_localization_name):
+ fn = localizations.get(current_localization_name, None)
+ data = {}
+ if fn is not None:
+ try:
+ with open(fn, "r", encoding="utf8") as file:
+ data = json.load(file)
+ except Exception:
+ print(f"Error loading localization from {fn}:", file=sys.stderr)
+ print(traceback.format_exc(), file=sys.stderr)
+
+ return f"var localization = {json.dumps(data)}\n"