Crates.io | t-rec |
lib.rs | t-rec |
version | 0.7.6 |
source | src |
created_at | 2020-10-10 22:10:32.221011 |
updated_at | 2023-01-21 16:36:18.076955 |
description | Blazingly fast terminal recorder that generates animated gif images for the web written in rust. |
homepage | https://github.com/sassman/t-rec-rs |
repository | https://github.com/sassman/t-rec-rs |
max_upload_size | |
id | 298193 |
size | 158,054 |
Blazingly fast terminal recorder that generates animated gif images for the web written in rust.
brew install t-rec
sudo port selfupdate
sudo port install t-rec
NOTE t-rec
depends on imagemagick
.
brew install imagemagick
cargo install -f t-rec
NOTE -f
just makes sure the latest version is installed
sudo apt-get install imagemagick
wget https://github.com/sassman/t-rec-rs/releases/download/v0.5.0/t-rec_0.5.0_amd64.deb
sudo dpkg -i t-rec_0.5.0_amd64.deb
TL;DR:
sudo snap install t-rec --classic
/snap/bin/t-rec --version
t-rec 0.4.3
t-rec
can be installed from available AUR packages using an AUR helper. For example,
paru -S t-rec
If you prefer, you can clone the AUR packages and then compile them with makepkg. For example,
git clone https://aur.archlinux.org/t-rec.git
cd t-rec
makepkg -si
pkgin install t-rec
Or, if you prefer to build from source,
cd /usr/pkgsrc/multimedia/t-rec
make install
sudo apt-get install libx11-dev imagemagick
cargo install -f t-rec
tested on those distros |
---|
ubuntu 20.10 on GNOME |
ubuntu 20.10 on i3wm |
linux mint 20 on cinnamon |
ArcoLinux 5.4 on Xfwm4 |
t-rec
or with specifying a different program to launch
t-rec /bin/sh
t-rec 0.7.0
Sven Assmann <sven.assmann.it@gmail.com>
Blazingly fast terminal recorder that generates animated gif images for the web written in rust.
USAGE:
t-rec [OPTIONS] [shell or program to launch]
ARGS:
<shell or program to launch> If you want to start a different program than $SHELL you can
pass it here. For example '/bin/sh'
OPTIONS:
-b, --bg <bg> Background color when decors are used [default: transparent]
[possible values: white, black, transparent]
-d, --decor <decor> Decorates the animation with certain, mostly border effects
[default: none] [possible values: shadow, none]
-e, --end-pause <s | ms | m> to specify the pause time at the end of the animation, that
time the gif will show the last frame
-h, --help Print help information
-l, --ls-win If you want to see a list of windows available for recording
by their id, you can set env var 'WINDOWID' or `--win-id` to
record this specific window only
-m, --video Generates additionally to the gif a mp4 video of the recording
-M, --video-only Generates only a mp4 video and not gif
-n, --natural If you want a very natural typing experience and disable the
idle detection and sampling optimization
-q, --quiet Quiet mode, suppresses the banner: 'Press Ctrl+D to end
recording'
-s, --start-pause <s | ms | m> to specify the pause time at the start of the animation, that
time the gif will show the first frame
-v, --verbose Enable verbose insights for the curious
-V, --version Print version information
-w, --win-id <win-id> Window Id (see --ls-win) that should be captured, instead of
the current terminal
If you are not happy with the idle detection and optimization, you can disable it with the -n
or --natural
parameter.
By doing so, you would get the very natural timeline of typing and recording as you do it.
In this case there will be no optimizations performed.
In order to enable the drop shadow border decor you have to pass -d shadow
as an argument. If you only want to change
the color of the background you can use -b black
for example to have a black background.
You can record not only the terminal but also every other window. There 3 ways to do so:
-w | --win-id
argument to name the Window Id that should be recordedt-rec --ls-win | grep -i calc
Calculator | 45007
t-rec -w 45007
TERM_PROGRAM
like this:TERM_PROGRAM="google chrome" t-rec
Frame cache dir: "/var/folders/m8/084p1v0x4770rpwpkrgl5b6h0000gn/T/trec-74728.rUxBx3ohGiQ2"
Recording window: "Google Chrome 2"
Press Ctrl+D to end recording
this is how it looks then:
WINDOWID
like this:VSCode
windowt-rec
t-rec --ls-win | grep -i code
Code | 27600
# set the WINDOWID variable and run t-rec
WINDOWID=27600 t-rec
Frame cache dir: "/var/folders/m8/084p1v0x4770rpwpkrgl5b6h0000gn/T/trec-77862.BMYiHNRWqv9Y"
Press Ctrl+D to end recording
this is how it looks then:
To contribute to t-rec you can either checkout existing issues labeled with good first issue
or open a new issue and describe your problem.
Also every PR is welcome. Support for Linux and Windows needs to be done.