Expand description
Modules§
- appearance
- How a cell looks: its colors after reverse video, the cursor, the bidi warning, selection and faint, and which decorations it carries. Resolved per row of cells, so a client holding only decoded scrollback rows resolves them the same way the cell painter does.
- atlas
- First-fit shelf packer for the glyph atlas. Shelves are never defragmented: when the atlas fills, the caller resets and rebuilds.
- box_
drawing - Programmatic rasterization of box-drawing, block, Braille, mosaic, and Powerline glyphs.
- display_
list - What the cell painter emits: rectangles, glyph draws and line
decorations in physical pixels, colors in linear RGBA. A backend
draws
rects, thenglyphs, thendecos, each in list order. - glyphs
- Glyph index that bridges
felis_shapingwith a backend’s glyph atlas:GlyphIndexshapes, rasterizes and packs glyphs, and the backend drains itsPendingUploads into wherever its atlas lives (felis-render-wgpu’sGlyphCachewrites them into a texture). - overlay
- Frame overlays the client composes over the grid: IME pre-edit, scrollback search, and the bottom-row bars.
- painter
- The cell painter: turns the screen and the frame’s overlays into
the display list of
crate::display_list. - palette
- SGR color to linear-RGBA conversion. The renderer wants linear sRGB
so the surface format (
Bgra8UnormSrgb) does the gamma encoding.
Structs§
- Image
Data pixels.len()equalswidth * height * bytes_per_pixel(format); the daemon dispatcher enforces it.- Selection
Range start/endare normalized by the client: row-major min/max for a linear selection, axis-aligned bounding box for a rectangle.
Traits§
- Image
Source - Supplies image pixels for GPU atlas re-uploads when the atlas recycles itself.