v0.1.0 — pixel-perfect terminal screenshots
The first release of terminal-svg — a single self-contained binary that turns terminal output into pixel-perfect SVG screenshots, complete with macOS-style window chrome. The image above is its own output.
Highlights
- Three capture modes — run a command in a real PTY (
terminal-svg -- lsd -la), pipe ANSI through stdin, or render a captured dump file. - Real terminal emulation — output goes through a proper VT state machine (asciinema's avt), so carriage-return progress bars,
ESC[Kclears, and cursor-repaint spinners resolve to exactly the final screen — no regex-stripped artefacts. - Embedded font subsetting — only the glyphs you actually used are embedded as WOFF2 (typically a few KB), so the SVG renders identically everywhere: GitHub READMEs, blogs, machines with no fonts installed. Nerd Font powerline segments, box drawing, and wide CJK all align on the grid; emoji render through the viewer's native colour font.
- Full ANSI fidelity — truecolor, 256-colour, the classic 16, bold/dim/italic/underline/strikethrough/inverse.
- 7 built-in themes —
dracula(default),catppuccin-mocha,nord,tokyo-night,github-dark,github-light,solarized-dark— plus custom themes from a small TOML file.
Install
brew install russmckendrick/tap/terminal-svgOr grab a binary below (macOS arm64/amd64, Linux arm64/amd64, Windows amd64 — each with a SHA-256 checksum).
Quick start
terminal-svg --title "the proof" -o shot.svg -- cargo testDocs: README · theme format · how it works
Bundled JetBrainsMono Nerd Font faces are under the SIL OFL; the code is MIT.
Full Changelog: https://github.com/russmckendrick/terminal-svg/commits/v0.1.0
Full Changelog: https://github.com/russmckendrick/terminal-svg/commits/v0.1.0