Added basic locale support

This commit is contained in:
2025-06-22 19:42:42 -05:00
parent 8ab17dae6c
commit 140f4f1ca2
6 changed files with 122 additions and 13 deletions

View File

@ -77,7 +77,7 @@ for jsonFile in jsonFiles:
f.write(f"#define LANGUAGE_{langUpper}_CODE \"{languageName}\"\n")
f.write(f"#define LANGUAGE_{langUpper}_NAME \"{keyValues['meta.language.name']}\"\n")
f.write(f"#define LANGUAGE_{langUpper}_COUNT_KEYS {len(keyValues)}\n\n")
f.write(f"#define LANGUAGE_{langUpper}_COUNT {len(keyValues)}\n\n")
# Write keys
f.write(f"static const char_t *LANGUAGE_{langUpper}_KEYS[] = {{\n")
@ -113,24 +113,35 @@ with open(mainOutputFile, 'w', encoding='utf-8') as f:
f.write(f'#include "locale/language/{lang.lower()}.h"\n')
f.write("\n")
f.write(f"#define LANGUAGES_COUNT {len(languages)}\n\n")
f.write(f"#define LANGUAGE_COUNT {len(languages)}\n\n")
f.write("static const char_t *LANGUAGE_CODES[] = {\n")
index = 0
for lang in languages:
f.write(f"#define LANGUAGE_{lang} {index}\n")
index += 1
f.write("\n")
f.write("static const char_t* LANGUAGE_CODES[] = {\n")
for lang in languages:
f.write(f' LANGUAGE_{lang}_CODE,\n')
f.write("};\n\n")
f.write("static const char_t *LANGUAGE_NAMES[] = {\n")
f.write("static const char_t* LANGUAGE_NAMES[] = {\n")
for lang in languages:
f.write(f' LANGUAGE_{lang}_NAME,\n')
f.write("};\n\n")
f.write("static const char_t *LANGUAGE_KEYS[] = {\n")
f.write("static const char_t** LANGUAGE_KEYS[] = {\n")
for lang in languages:
f.write(f' LANGUAGE_{lang}_KEYS,\n')
f.write("};\n\n")
f.write("static const char_t *LANGUAGE_VALUES[] = {\n")
f.write("static const int LANGUAGE_COUNTS[] = {\n")
for lang in languages:
f.write(f' LANGUAGE_{lang}_COUNT,\n')
f.write("};\n\n")
f.write("static const char_t** LANGUAGE_VALUES[] = {\n")
for lang in languages:
f.write(f' LANGUAGE_{lang}_VALUES,\n')
f.write("};\n\n")