ludic.ui, ludic.i18n: frame_keeps and birth_leaks to 0 - :nth-child's a and b read once per argument, a border-image's miss its own function; typing, the dev dump, parsing, the pointer ring's making, Ln's counted line and the plural header declared

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-28 16:46:00 +03:00
parent 23d204b9fc
commit f8825dc55a
16 changed files with 67 additions and 23 deletions

View file

@ -5,6 +5,7 @@ export const PL_ABOVE_ONE: int = 1 # French, Portuguese (0 and 1 are singular)
export const PL_ONE_FORM: int = 2 # Japanese, Chinese
export const PL_SLAVIC: int = 3 # Russian, Ukrainian: one, few, many
@alloc_ok("on a language change: its plural rule read from the header")
function plural_rule_of(h: string) -> int {
let k = i18n_find(h, len(h), 0, "plural=", 7)
if k < 0 { return PL_NOT_ONE }
@ -56,6 +57,7 @@ export function Ln(i18n_st: I18nState, one: string, many: string, n: int) -> str
return count_in(t, n)
}
@alloc_ok("a counted line (Ln) made when the game asks for one, outside a frame; its caller keeps it")
function count_in(t: string, n: int) -> string {
let m = len(t)
var r = ""