Compile i18n
When you are instructed to add or update internationalization (i18n) translations for this project, please follow these steps:
- Identify the new strings that need to be translated.
- Edit the
.tstranslation files located in theok/ui/qt/i18n/directory. Typically, these files include:zh_CN.ts(Simplified Chinese)zh_TW.ts(Traditional Chinese)ja_JP.ts(Japanese)ko_KR.ts(Korean)es_ES.ts(Spanish)en_US.ts(English)
- Ensure that your new translations are correctly added under the appropriate
<context>and<message>blocks in each XML file, without thetype="unfinished"attribute. If you are adding many translations, or just want to minimize errors, use the providedadd_translation.pyscript to automate the XML injection:
IMPORTANT WARNING: DO NOT use$py = if (Test-Path .\.venv\Scripts\python.exe) { ".\.venv\Scripts\python.exe" } else { "python" } & $py .\.agents\skills\compile_i18n\add_translation.py --context "YourContext" --source "Your Source String" --zh_cn "Your Chinese String"pyside6-lupdateas it corrupts and deletes existing translations. Always modify the XML nodes natively or use the python script! - Check that the translations added for the
WebUIcontext are complete. You must replace<translation type="unfinished" />with<translation>Your Translation</translation>. - Generate the web catalog from the
WebUIcontext by running this command from the workspace root:
// turbo
npm run i18n
npm run dev and npm run build also run this generator automatically.