Files
benilla-octo/crates
gromandClaude Opus 5 a2909fb0df ui_text: a font file answers to a family of its own, so no sibling stands in
Naming a face to `cosmic-text` is a family query, and `fontdb` matches a
family by exact name alone: two files whose name tables declare the same
family are one family to the shaper, and whichever it reaches first answers
for both. The player's AddOns folder is full of that — four addons ship the
same `Myriad-Pro.ttf` and three the same `Hooge.ttf`, which is where our own
substitution warning came from three times a session — and in one pair it is
not even the same design: `pfUI-CustomMedia\fonts\NiceDamage.ttf` and
`MikScrollingBattleText\Fonts\pepsi.ttf` both declare `! PEPSI !`, so one of
them draws the other's letters at the other's widths.

So each file is re-registered under `benilla:<lowercased path>`, unique for
the same reason `path_to_face` is keyed that way. The face's own axes are
kept, and the shaper's per-character fallback is untouched — it walks the
whole database and needs no family match — so the substitution warning now
means only what is left: this face has no glyph for that character, and it
says so.

The test registers one real file at two paths and asserts each answers for
itself; its second half is the behaviour that makes the rename necessary,
`fontdb` answering with the first face for both.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SgstFWtn1RxEJ5kVrpgYwn
2026-10-18 11:46:02 -06:00
..