我目前正在努力mutt
让它正确显示 HTML 邮件。我已经在 mailcap 中设置auto_view
并w3m
调用了,效果很好。
然而,收到的邮件中的链接 URL 通常比我的终端窗口的宽度长。这使得单击它们变得不方便,因为它们被分成多行,而且我必须手动重建原始 URL,然后才能将其复制到浏览器。
我已设置$markers
为关闭,这成功删除了标记换行的加号。然而, mutt 仍然自行换行(大概只是通过 echoing \n
,因为这就是我在副本上得到的),所以获取链接仍然不方便。
有没有办法告诉 mutt 完全禁用换行,而让终端模拟器处理它?这将允许在一次操作中复制链接。变量似乎没有这样的选项$wrap
;我尝试将其设置$wrap
为比终端宽度更宽,但这不起作用。
答案1
在 Debian 中,我按如下方式修复此问题
sudo apt-get install urlview
cat << EOF > ~/.urlview
REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):]
COMMAND echo %s > ~/url.txt
EOF
现在,当您打开时mutt
,选择一封电子邮件,然后按ctrl+b
。这将打开一个菜单,列出从电子邮件中提取的所有 URL。
使用箭头键选择要打开的 URL,然后按 键enter
。
关闭 mutt,您将看到 URL 已写入url.txt
您$HOME
目录中的文件中。现在可以轻松使用 进行复制和粘贴cat
。
来源:https://wiki.archlinux.org/title/Mutt#Viewing_URLs_in_a_web_browser
答案2
对于我的以下答案,我提出
set mailcap_path = "~/.mutt/mailcap"
在我的muttrc
文件中,以下设置应该放在文件中mailcap
,即在~/.mutt/mailcap
.
这与 更相关,w3m
而不是mutt
,简而言之,您应该设置:
text/html; w3m -I %{charset} -T text/html -dump -cols 1000; copiousoutput
cols
因为with option on的默认值dump
约为 80,这会切断长网址。
不过,要查看有关 url 的更多信息,我建议以 Markdown 格式预览:
text/html; iconv -t 'UTF-8' -f %{charset} | pandoc -f html -t gfm-raw_html --wrap=none; copiousoutput