Remix.run Logo
nxobject 7 hours ago

Looks like it's due to fundamental limitations – there's a one-to-one mapping between cells and Unicode code points, and glyphs are blitted from a pre-rendered atlas. (It's very Shadertoy-like.)

I agree it's an awkward situation: ye olde xterm and rxvt can render emoji outside of the BMP, while zutty doesn't seem to be able to.

The documentation is a pleasure to read, though.

JdeBP 6 hours ago | parent [-]

My terminal emulator has that mapping (because it is designed to be a workalike for kernel terminal emulators that have that mapping). It quite happily supports the other planes. There is no actual fundamental limitation here.

Even with the one-codepoint-per-cell model, what planes one can cover is simply a matter of whether an integer is 16-bit or 24-bit/32-bit. In the Zutty code, it's a 16-bit integer, and I suspect that that is a knock-on effect of the particular way that it flattens fonts out and maps code points to glyph bitmaps, which isn't the only way that one could do that.