You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nbedos 066e8c74d3 Use Trusy instead of Xenial 3 months ago
docs Improve CI/CD pipeline 3 months ago
man Minor fixes for version 0.8.0 3 months ago
scripts Replace pkg_resources by pkgutil 9 months ago
termtosvg Minor fixes for version 0.8.0 3 months ago
.travis.yml Use Trusy instead of Xenial 3 months ago
CHANGELOG.md Minor fixes for version 0.8.0 3 months ago
LICENSE Add licence 11 months ago
MANIFEST.in Minor fixes for version 0.8.0 3 months ago
Makefile Improve CI/CD pipeline 3 months ago
README.md Add available OS packages 3 months ago
__main__.py Replace pkg_resources by pkgutil 9 months ago
setup.py Minor fixes for version 0.8.0 3 months ago

README.md

Build Status Coverage

termtosvg

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

Features

  • Produce lightweight and clean looking animations embeddable on a project page
  • Custom color themes, terminal UI and animation controls via SVG templates
  • Compatible with asciinema recording format

Installation

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

pip3 install --user termtosvg

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

OS Repository Installation command
Archlinux Arch pacman -S termtosvg
FreeBSD ports
Gentoo media-gfx/termtosvg emerge media-gfx/termtosvg
macOS Homebrew brew install termtosvg
OpenBSD ports
NixOS nixpkgs

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

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

$ firefox /tmp/termtosvg_exp5nsr4.svg

Dependencies

termtosvg uses:

  • pyte to render the terminal screen
  • lxml to work with SVG data