ludic.ui: t(key, holes...) in a template - the key marked (byte 1, a marked key kept as it is) and each hole's value after a byte 31, the text the translator decodes at draw time; joined through the text memo, so nothing is made while it reads the same (phase 26)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-29 23:16:05 +03:00
parent 82c652ca31
commit b5b3edc6ec
8 changed files with 72 additions and 1 deletions

View file

@ -10,6 +10,10 @@ function ev_text(ui_st: mut UiState, x: UiExpr, e: UiEnv) -> Val {
List.clear(ps)
for i in 0 .. len(x.args) { tx_piece(ui_st, ps, ui_eval(ui_st, x.args[i], e)) }
ui_st.tx_depth = depth
return tx_memo(ui_st, ps)
}
# the text these pieces join into, from the memo when it read this way before, else joined and kept
function tx_memo(ui_st: mut UiState, ps: []string) -> Val {
let m = mm_of(ui_st)
var h = 216613626 ^ (MM_TEXT & 255)
for p in 0 .. len(ps) {