message-format
A stripped-down ICU MessageFormat renderer. Supports the three forms that account for essentially every localized string in real apps:
({name})– simple placeholder substitution({count, plural, =0 {none} one {# item} other {# items}})– plural forms;#inside the body substitutes the count({gender, select, male {he} female {she} other {they}})– select forms for enum-like values
Real ICU has more (offset, ordinal, spellout, dates, and skeletons for number formatting); this one aims at the correctness-adjacent slice and skips the rest.
The pure transform lives in wal-sh.tools.message-format.core
(host-neutral .cljc). The browser adapter is
wal-sh.tools.message-format.browser. Build: gmake tools-cljs; debug
in isolation: gmake dev-tool TOOL=message-format.