summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlf/cleaner2
-rwxr-xr-xlf/previewer36
2 files changed, 38 insertions, 0 deletions
diff --git a/lf/cleaner b/lf/cleaner
new file mode 100755
index 0000000..af197ee
--- /dev/null
+++ b/lf/cleaner
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec kitten icat --clear --stdin no --transfer-mode memory </dev/null >/dev/tty
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"