Language file expanded

This commit is contained in:
2025-05-01 12:18:49 +02:00
parent 60e8e2fed4
commit dfff988c85
4 changed files with 3500 additions and 1710 deletions
+21
View File
@@ -0,0 +1,21 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "JSON zusammenführen",
"type": "shell",
"command": "python merge_json.py",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared"
},
"problemMatcher": []
}
]
}
+1712
View File
File diff suppressed because it is too large Load Diff
+1725 -1710
View File
File diff suppressed because it is too large Load Diff
+42
View File
@@ -0,0 +1,42 @@
import json
import os
ziel_datei = 'de.json'
quelle_datei = 'en.json'
neue_keys_datei = 'neue_keys.json'
def lade_json(pfad):
if os.path.exists(pfad):
with open(pfad, 'r', encoding='utf-8') as f:
return json.load(f)
return {}
ziel_daten = lade_json(ziel_datei)
quelle_daten = lade_json(quelle_datei)
neue_keys_daten = {}
def merge_recursive(ziel, quelle, neu_dict):
neue_keys = 0
for key, value in quelle.items():
if key not in ziel:
ziel[key] = value
neu_dict[key] = value
neue_keys += 1
elif isinstance(value, dict) and isinstance(ziel.get(key), dict):
if key not in neu_dict:
neu_dict[key] = {}
neue_keys += merge_recursive(ziel[key], value, neu_dict[key])
return neue_keys
anzahl_neue = merge_recursive(ziel_daten, quelle_daten, neue_keys_daten)
# Ziel-JSON speichern
with open(ziel_datei, 'w', encoding='utf-8') as f:
json.dump(ziel_daten, f, ensure_ascii=False, indent=2)
# Neue Keys separat speichern
with open(neue_keys_datei, 'w', encoding='utf-8') as f:
json.dump(neue_keys_daten, f, ensure_ascii=False, indent=2)
print(f"{anzahl_neue} neue Schlüssel wurden rekursiv hinzugefügt.")
print(f"Neue Einträge wurden zusätzlich in '{neue_keys_datei}' gespeichert.")