Commit 3805e90
feat(renderer): powerline + block char pixel-perfect rendering
- Add renderBlockChar() for U+2580-U+259F (block elements) as filled
rectangles, eliminating inter-character gaps in ASCII art/progress bars
- Add renderPowerlineGlyph() for U+E0B0-U+E0B7 as canvas vector paths,
ensuring glyphs span exactly the cell height regardless of font
- Switch measureFont() to fontBoundingBox metrics so cell height
accommodates the full font cap-height (required by powerline chars)
- Merge DPR-aware rounding from PR coder#146 with fontBoundingBox: cells
stay pixel-perfect at non-integer device pixel ratios
- Pass cursor.style from IRenderable.getCursor() through to renderCursor()
so callers can override the cursor shape
- buildFontString() helper quotes font family names that contain spaces
- Add demo/bin/render-test.ts and demo/render-test.html for visual
regression testing (puppeteer auto-installed on demand)
- Fix pre-existing biome lint issues in viewport/iris test files
Co-authored-by: Stuart Lang <stuart.b.lang@gmail.com>
Inspired-by: coder#1281 parent ad81727 commit 3805e90
5 files changed
Lines changed: 1766 additions & 42 deletions
0 commit comments