fzf_preview = r""" # # Adapted from the preview script in the fzf repo # # Dependencies: # - https://github.com/hpjansson/chafa # - https://iterm2.com/utilities/imgcat # fzf-preview() { file=${1/#\~\//$HOME/} dim=${FZF_PREVIEW_COLUMNS}x${FZF_PREVIEW_LINES} if [[ $dim = x ]]; then dim=$(stty size /dev/null; then case "$(uname -a)" in # termux does not support sixel graphics # and produces weird output *ndroid*) chafa -s "$dim" "$file";; *) chafa -f sixel -s "$dim" "$file";; esac # Add a new line character so that fzf can display multiple images in the preview window echo # 3. If chafa is not found but imgcat is available, use it on iTerm2 elif command -v imgcat >/dev/null; then # NOTE: We should use https://iterm2.com/utilities/it2check to check if the # user is running iTerm2. But for the sake of simplicity, we just assume # that's the case here. imgcat -W "${dim%%x*}" -H "${dim##*x}" "$file" # 4. Cannot find any suitable method to preview the image else echo install chafa or imgcat or install kitty terminal so you can enjoy image previews fi } """