summaryrefslogtreecommitdiff
path: root/lf/previewer
diff options
context:
space:
mode:
authorGitIR <git@zachir.xyz>2025-08-13 17:36:31 -0500
committerGitIR <git@zachir.xyz>2025-08-13 17:36:31 -0500
commitf1b0dd12663867863f58db2d5735cdb3cc84da04 (patch)
tree2c9d38e6ccd82721090c7030766f91eaf36a82a5 /lf/previewer
parent2666a2d597f5fb4222142a5ce147546cf588887a (diff)
parentc0ee1d4b5dbd37b05947ffcc584c0834d523626d (diff)
Merge branch 'master' into rai-master
Diffstat (limited to 'lf/previewer')
-rwxr-xr-xlf/previewer36
1 files changed, 36 insertions, 0 deletions
diff --git a/lf/previewer b/lf/previewer
new file mode 100755
index 0000000..24db043
--- /dev/null
+++ b/lf/previewer
@@ -0,0 +1,36 @@
+#!/bin/sh
+draw() {
+ kitten icat --stdin no --transfer-mode memory --place "${w}x${h}@${x}x${y}" "$1" </dev/null >/dev/tty
+ exit 1
+}
+
+file="$1"
+w="$2"
+h="$3"
+x="$4"
+y="$5"
+
+case "$(file -Lb --mime-type "$file")" in
+ image/*)
+ draw "$file"
+ ;;
+ video/*)
+ # vidthumb is from here:
+ # https://raw.githubusercontent.com/duganchen/kitty-pistol-previewer/main/vidthumb
+ draw "$(vidthumb "$file")"
+ ;;
+ application/pdf)
+ CACHE=$(mktemp /tmp/thumbcache.XXXXX)
+ pdftoppm -png -f 1 -singlefile "$1" "$CACHE"
+ draw "$CACHE.png"
+ rm -f "$CACHE" "$CACHE.png"
+ ;;
+ application/epub+zip|application/epub)
+ CACHE=$(mktemp /tmp/thumbcache.XXXXX)
+ epub-thumbnailer "$1" "$CACHE" 1024
+ $HOME/.config/lf/image draw "$CACHE"
+ rm -f "$CACHE" "$CACHE.png"
+ ;;
+esac
+
+pistol "$file"