Home

Awesome

Build Status

termtosvg

termtosvg is a Unix terminal recorder written in Python that renders your command line sessions as standalone SVG animations.

Example

Features

Installation

termtosvg is compatible with Linux, macOS and BSD OSes, requires Python >= 3.5 and can be installed as follows using pip:

# Create virtualenv named '.venv'
python3 -m venv .venv
# Activate virtualenv
source .venv/bin/activate
pip3 install termtosvg

Then run termtosvg by calling either termtosvg or python3 -m termtosvg.

Various independently maintained, OS specific packages have been made available by the community:

OSRepositoryInstallation command
ArchlinuxArchpacman -S termtosvg
FreeBSDports
Gentoomedia-gfx/termtosvgemerge media-gfx/termtosvg
macOSHomebrewbrew install termtosvg
OpenBSDports
NixOSnixpkgs

Basic usage

Start recording with:

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

You are now in a subshell where you can type your commands as usual. Once you are done, exit the shell to end the recording:

$ exit
Recording ended, file is /tmp/termtosvg_exp5nsr4.svg

Then, use your favorite web browser to play the animation:

$ firefox /tmp/termtosvg_exp5nsr4.svg

Finally, embedding the animation in e.g. a README.md file on GitHub can be achieved with a relative link to the animation:

![Example](./docs/examples/awesome_window_frame.svg)

See the manual page for more details.

Dependencies

termtosvg uses: