mirror of
https://github.com/fairyglade/ly.git
synced 2025-12-20 19:24:53 +00:00
41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
|
|
from pathlib import Path
|
|
from sys import stderr
|
|
|
|
|
|
def process_lang_file(path: str) -> None:
|
|
values = {}
|
|
with open(path, "r", encoding="UTF-8") as fh:
|
|
while line := fh.readline():
|
|
vals = line.split("=")
|
|
if len(vals) != 2:
|
|
continue
|
|
|
|
key = vals[0].strip()
|
|
values[key] = vals[1].strip()
|
|
|
|
with open(path, "w", encoding="UTF-8") as fh:
|
|
for item in lang_strings:
|
|
v = values.get(item)
|
|
if v is not None:
|
|
fh.write(f"{item} = {v}\n")
|
|
else:
|
|
fh.write("\n")
|
|
|
|
|
|
zig_lang_file = Path(__file__).parent.joinpath("../../src/config/Lang.zig").resolve()
|
|
if not zig_lang_file.exists():
|
|
print(f"ERROR: File '{zig_lang_file.as_posix()}' does not exist. Exiting.", file=stderr)
|
|
exit(1)
|
|
|
|
lang_strings = []
|
|
with open(zig_lang_file, "r", encoding="UTF-8") as fh:
|
|
while line := fh.readline():
|
|
lang_strings.append(line.split(":")[0])
|
|
|
|
lang_files = [f for f in Path.iterdir(Path(__file__).parent) if f.name.endswith(".ini") and f.is_file()]
|
|
|
|
for file in lang_files:
|
|
process_lang_file(file.as_posix())
|