doc | ||
embed | ||
sh | ||
src | ||
.gitignore | ||
ctpvclear | ||
deplist.1.sh | ||
deplist.awk | ||
deplist.md.sh | ||
deplistadd.sh | ||
LICENSE | ||
Makefile | ||
previews.h | ||
README.md |
ctpv
Terminal previewer
ctpv is an utility for previewing various files.
Image previews powered by:
ctpv is a remake of an awesome program named stpv written in C. stpv worked perfectly for me, except it was kinda sluggish because it was written in POSIX shell. ctpv is an attempt to make a faster version of stpv and add some new features.
Originally it was made for lf file manager but I believe that it can be easily integrated into other programs as well if they support previews provided by external programs like lf does.
Dependencies
Libraries
libcrypto
libmagic
Previews
Previewing each file type requires specific programs.
If a program is not found on the system, ctpv
will try to use another one.
Only one program is required for each file type.
For example, you only need either elinks
, lynx
or
w3m
installed on your system to view HTML files.
File types | Programs |
---|---|
any | exiftool cat |
archive | atool |
diff | colordiff delta diff-so-fancy |
directory | ls |
html | elinks lynx w3m |
image | ueberzug chafa |
json | jq |
markdown | mdcat |
odt | libreoffice |
pdftoppm |
|
text | bat cat highlight source-highlight |
torrent | transmission-show |
video | ffmpegthumbnailer |
Installation
Manual
git clone https://github.com/NikitaIvanovV/ctpv
cd ctpv
sudo make install
Uninstall with sudo make uninstall
AUR
If you are an Arch Linux user, you can install
ctpv-git
AUR package.
yay -S ctpv-git
Integration
lf file manager
Add these lines to your lf config
(usually located at ~/.config/lf/lfrc
):
set previewer ctpv
set cleaner ctpvclear
&ctpv -s $id
cmd on-quit $ctpv -e $id
Documentation
Full documentation on command line options, configuration and how to define custom previews can be found here: https://nikitaivanovv.github.io/ctpv/