我在 macOS 上安装了
lf
文件管理器并根据我的目的对其进行了配置,但我无法将其配置为图像预览。
我尝试使用
ueberzugpp
但它需要将 lfrun 文件添加到 /usr/bin。这是不可能的,因为它想要删除系统完整性保护。
我尝试了 lf github wiki 中描述的
w3mimgdisplay
方法。它也失败了,但我可以使用 imgcat 在 iterm2 中显示图像。
我可以实现它来在
lf
文件管理器中显示图像吗?
ranger wiki 页面直接集成了 iterm2 以进行图像预览。它适用于我的护林员。但我想使用
lf
,因为我可以轻松地在其中运行shell脚本。
首先按照手册页中的说明配置预览,创建一个
~/.config/lf/lfrc
文件:
set previewer ~/.config/lf/pv.sh
map i $~/.config/lf/pv.sh $f | less -R
并创建
~/.config/lf/pv.sh
脚本:
#!/bin/sh
case "$1" in
*.tar*) tar tf "$1";;
*.zip) unzip -l "$1";;
*.rar) unrar l "$1";;
*.7z) 7z l "$1";;
*.pdf) pdftotext "$1" -;;
) highlight -O ansi "$1";;
esac
将脚本设置为可执行文件:
chmod +x ~/.config/lf/pv.sh
lf
预览现在已按照手册页中的方式进行配置。要添加图像预览,您可以修改~/.config/lf/lfrc
如:
set previewer ~/.config/lf/pv.sh
map i $~/.config/lf/pv.sh $f
和
~/.config/lf/pv.sh
例如:
#!/bin/sh
alias imgcat=/Users/von/.iterm2/imgcat
case "$1" in
*.tar*) tar tf "$1" | less -R;;
*.zip) unzip -l "$1" | less -R;;
*.rar) unrar l "$1" | less -R;;
*.7z) 7z l "$1" | less -R;;
*.pdf) pdftotext "$1" - | less -R;;
*.jpg|*.jpeg) imgcat "$1" && read -n 1 -s -r;;
*) highlight -O ansi "$1" | less -R;;
esac
这将允许您通过按
i
中的 lf
来预览 jpeg 文件。您可以在预览脚本中轻松添加其他图像文件格式。
与文档示例的主要区别在于,分页器 (
less -R
) 直接在预览脚本中运行,并且仅适用于文本格式,因为分页器无法在图像上运行。