Many modern terminal emulators include definitions for box drawing glyphs directly in their own source code, and disregard the versions provided by the font when rendering the display. Is there a general way for a program running in the terminal to detect which glyphs are rendered this way? Specifically, if a program makes use of additional box glyphs that might not be widely supported, what's the best way to check if they're available? Perhaps in terminfo
?
My current use case is a small personal-use project written in Python using ncurses
for the graphical component, so bonus points for something that plays nicely with those, but I'm interested in all solutions.
EDIT: As an example, here's a set of characters provided by kitty
; a comment in the source code indicates they're intended for Powerline integration:
If we try to render the same glyphs in Konsole, though, we get this:
The glyphs displayed by Kitty are defined by the terminal itself, whereas the ones displayed by Konsole are provided by whatever font it's configured to use. Is there a general way for a program running in some arbitrary terminal to detect whether we'll see the something like the former vs. the latter?