Files
jj b0395c7ecd devutils, utils: implement i18n pipeline (#1265)
rough sketch of the pipeline:
- generic + platform patches -> `devutils/i18n generate` ->
`i18n/source.gen.json` ("source of truth" for translations)
- `i18n/source.gen.json` -> `devutils/i18n translate` -> machine
translations generated into `i18n/translations/{lang}.json`
- those should be reviewed and fixed up by representative community
members that actually speak the corresponding language
- `i18n/source.gen.json` + `i18n/translations/*` -> `utils/i18n_apply`
-> fingerprints source strings and applies translations into XTB files

fixes #1109
2026-04-13 17:39:11 +02:00

34 lines
869 B
YAML

name: Check patch series correctness
on: [push, pull_request]
permissions:
contents: read
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.13'
- run: python3 ./devutils/lint.py
i18n:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Regenerate source strings and check for drift
run: |
python3 ./devutils/i18n.py generate -o /tmp/source.gen.json
diff -u ./i18n/source.gen.json /tmp/source.gen.json || {
echo "::error::i18n/source.gen.json is out of date. Run: python3 devutils/i18n.py generate"
exit 1
}
- name: Validate translation files
run: python3 ./devutils/i18n_lint.py