ludic.i18n: keys (phase 26.1) - en.po as the base, tr/trf/trn marked strings made into text by L, keyed plurals, the fallback to English then the key ([[key]] loud in a dev build), the English form beside it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
82c652ca31
commit
f0096aec87
10 changed files with 355 additions and 4 deletions
10
changes/i18n-keys.md
Normal file
10
changes/i18n-keys.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
bump: minor
|
||||
type: feature
|
||||
**`ludic.i18n`: keys (phase 26).** A key names what a text is for, and `en.po` says it in English like any
|
||||
other language. A key is a string with a marker byte (`I18N_KEY`, `I18N_PLURAL`), its arguments after
|
||||
byte 31, so the code that makes text never takes `I18nState`: `tr(k)`, `trf(k, a, b, c, d)` and
|
||||
`trn(k, n, a, b, c)` build it, and `L` makes it into text where it is drawn - the language in use, else
|
||||
en.po (read the first time a key is asked for), else the key itself, `[[key]]` in a developer's build
|
||||
(`i18n_loud`). Holes take their arguments in the language's order, a key argument made first; plural
|
||||
keys go by each language's rule. A string with no marker takes the old English path, so a game can
|
||||
move over a file at a time.
|
||||
Loading…
Add table
Add a link
Reference in a new issue