On my fairly fast gaming desktop it's over a frame:

It looks like initTable could be made so only load chunks of table as necessary, splitting it into 32 parts (66636/32=2048 codepoints) would probably make it have minimal impact on frames following a load.
|
const CODEPOINTS = 65536; // BMP holds 65536 codepoints |
|
const BITWIDTH = 2; // a codepoint can have a width of 0, 1 or 2 |
|
const ITEMSIZE = 32; // using uint32_t |
|
const CONTAINERSIZE = CODEPOINTS * BITWIDTH / ITEMSIZE; |
|
const CODEPOINTS_PER_ITEM = ITEMSIZE / BITWIDTH; |
|
table = (typeof Uint32Array === 'undefined') |
On my fairly fast gaming desktop it's over a frame:
It looks like
initTablecould be made so only load chunks oftableas necessary, splitting it into 32 parts (66636/32=2048 codepoints) would probably make it have minimal impact on frames following a load.xterm.js/src/CharWidth.ts
Lines 126 to 131 in cb97ab3