kb_text_shape (v2.10, JimmyLefevre) had been LOST from the sx tree — ffi/stb_truetype.sx referenced repo paths that no longer existed (and nothing runs glyph_cache, so the dangling unit never fired). The trimmed copy returns from the m3te project as a proper vendor: curated c/kbts_api.h decls over the full upstream header, README with provenance, and examples/1627 pinning context + font creation so the unit compiles and runs in-suite. file_utils (in-house asset-read helper with the Android AAssetManager hook) gets the same unit shape. modules/ffi/stb_truetype.sx is gone: glyph_cache imports the three vendored units (stb_truetype, kb_text_shape, file_utils) directly.
19 lines
858 B
Plaintext
19 lines
858 B
Plaintext
// =====================================================================
|
|
// vendors/kb_text_shape — Jimmy Lefevre's kb_text_shape (OpenType text
|
|
// shaping) as a `#import c` unit (c/, see README.md for version +
|
|
// provenance).
|
|
//
|
|
// `#import "vendors/kb_text_shape/kb_text_shape.sx"` gives any sx
|
|
// program text shaping with no system dependency. The decls come from
|
|
// c/kbts_api.h — a hand-curated MINIMAL declaration header covering
|
|
// only the bound surface (the full upstream header is ~30k lines and
|
|
// is included only by the implementation unit). Shape contexts, fonts,
|
|
// runs, and glyphs are opaque pointers on the sx side; see
|
|
// modules/ui/glyph_cache.sx for the reference consumer.
|
|
// =====================================================================
|
|
|
|
#import c {
|
|
#include "c/kbts_api.h";
|
|
#source "c/kb_text_shape_impl.c";
|
|
};
|