This directory holds the tooling for regenerating the static screenshots
referenced from docs/03_features.md. Animated GIFs are out of scope.
-
freeze— renders a terminal capture to SVG and PNG:brew install charmbracelet/tap/freeze
-
zellij— terminal multiplexer; runs lnav in a real PTY so its TUI initializes correctly:brew install zellij
-
A working
lnavbinary. By defaultgenerate.shlooks forbuild/dev/src/lnavrelative to the repo root (the CMake dev build) and falls back to whateverlnavis onPATH. To force a specific binary:LNAV_BIN=/path/to/lnav ./generate.sh
Regenerate all screenshots:
./generate.shRegenerate one or more by name:
./generate.sh timeline histAvailable shot names: multi_file, hist, timeline, before_pretty,
after_pretty, query.
Output goes into ../assets/images/ as both .svg (primary) and .png
(fallback). The <picture> blocks in 03_features.md reference both.
All shots share the appearance defined in freeze.json (font, padding,
theme, window chrome). Tweak that file to adjust the look of every
screenshot at once.
Each screenshot is defined as a shot_<name> function in generate.sh. To
add a new shot:
- Add a
shot_<name>function that invokesrender <slug> "<lnav command>". - Append the name to the
ALL_SHOTSarray. - Reference the new image from
03_features.mdas a<picture>block.