Files
dotfiles/scripts/bin/lfpreview
T

31 lines
900 B
Bash
Executable File

#!/bin/sh
file="$1"
w="$2"
h="$3"
case "$(file -Lb --mime-type "$file")" in
text/*|application/json|application/x-empty|inode/x-empty)
bat --theme="ansi" --color=always --style=numbers --line-range=:500 --terminal-width="$w" "$file"
;;
image/*)
echo "Image: $file"
;;
application/pdf)
pdftotext -l 10 -nopgbrk -q "$file" - | fold -s -w "$w"
;;
application/zip|application/x-tar|application/x-rar|application/x-7z-compressed|application/gzip|application/x-bzip2|application/x-xz)
echo "Archive: $file"
echo
case "$file" in
*.zip) unzip -l "$file" ;;
*.tar|*.tar.*|*.tgz) tar tf "$file" ;;
*.rar) unrar l "$file" ;;
*.7z) 7z l "$file" ;;
*) echo "Archive listing not supported" ;;
esac
;;
*)
file -Lb "$file"
;;
esac