Some members of the Unicode Consortium appear to have been doing some work in this area. The following paper was recently added to the UTC document register.
Those interested in std::format
and formatting textual displays might also find Will
McGugan's work on Rich interesting.
Rich is a Python library for text formatting. (I'm guessing Victor
is aware of it and I wouldn't be surprised to hear that there has
already been some cross-pollination of ideas).
The adoption of P2675 (LWG3780: The Paper: format's width estimation is too approximate and not forward compatible) prompted me to file an enhancement request for ICU to consider providing an interface to query EGC display width for monospace applications.
- ICU-22344: Support for estimating the monospace display width of a sequence of EGCs in a terminal or console
Please feel free to take a look and offer corrections or additional comments.