环境
背景信息
目前 macOS 下的 w3m 缺乏 w3mimgdisplay 命令,也缺乏 ueberzug ,所以终端下的图片显示只能依赖终端模拟器本身的图形协议来完成(常见的终端 kitty 和 iTerm2 都自带图形协议)。Newsboat 本身是一个终端下的 RSS 阅读器,主要用于文字阅读;然而我订阅的 RSS 不可避免需要图片预览,比如 xkcd 就是一个纯图片的 feed…
楼主目前思路
先是看到有人搞出了一套能够实现图片预览的 pager,可惜对方使用了 w3m ,所以没法直接拿来用。我依样画葫芦从 kitty 自带的图片预览 icat 出发
kitty +kitten icat
在终端中显示图片#!/usr/bin/env bash
function urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; }
if grep -qE "xkcd" "${1}"; then
# 下载 xkcd 源中的图片,然后用 icat 预览
image=$(grep -E -o "https?://[a-zA-Z0-9./?=_%:-]*.(jpg|png|JPG|PNG)" < "${1}" | tail -1)
cd /private/tmp/
imagepath="${image/https:\///private/tmp}"
imagepath=$(urldecode "$imagepath")
if [[ ! -f "$imagepath" ]]; then
# echo "downloading..."
nohup wget -q -m "$image" &>/dev/null
fi
kitty +kitten icat --hold "${imagepath/jpg/png}"
else
# 其他 feed 改成 less
less "${1}"
fi
这个方法目前的问题是,对于纯文本的条目只能改用less
做 pager ,无法用 newsboat 自带的 pager 了。会多几次按键操作,阅读效率降低。不知道有没有朋友在 macOS 下也折腾过 newsboat ,请支支招。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.