website/content/blog/termtosvg.md

1.4 KiB

date draft math medium_enabled medium_post_id tags title
2022-01-17 10:14:22-05:00 false false true ad8c533610b5
Terminal Output To SVG Animations

With termtosvg made by Nicolas Bedo we can make SVG animations from terminal output in the style of asciinema. To install use pipx.

pipx install termtosvg

To start recording, run the command termtosvg

termtosvg

It first outputs:

Recording started, enter "exit" command or Control-D to end

At "exit", by default it will save the animation to a random filename in the tmp folder.

Rendering ended, SVG animation is /tmp/termtosvg_xmadgf9y.svg

To control the default save location, pass in a filename after termtosvg

termtosvg /path/to/savefile.svg

To record only the execution of a particular command, use the flag -c

termtosvg -c neofetch

I recommend that you resize the terminal window so that the frames generated match the desired width and height. You can instead use the -g flag to pass in a geometry. ("100x30" creates a screen with 100 colums and 30 rows)

Lastly, if you don't want an animation, you can pass in -s and the result will be a folder of SVG files representing each frame.

termtosvg -s

Here is an example of an animation I made with this tool: