有时我需要在 google-group 内联发送一段代码。文字在这里没有帮助;我可以在 Markdown 中输入它,将其转换为 html(使用 pandoc 等),附加到 mutt astext/html
并发送它。
这里有一个很好的解决方案,但它使用外部sendmail
程序发送电子邮件。我正在使用 mutt,它可以单独通过 IMAP发送电子邮件。
bah*_*mat 36
在您撰写消息之后,但在发送之前,您有很多可用的选项。按?
查看它们。
一些可能在这里有帮助的:
F
通过外部处理器过滤附件
pandoc -s -f markdown -t html
转换为HTML^T
编辑附件 MIME 类型
text/plain
为text/html
。现在是一个宏,可以一步完成所有事情。将此添加到您的.muttrc
:
macro compose \e5 "F pandoc -s -f markdown -t html \ny^T^Utext/html; charset=utf-8\n"
set wait_key=no
Run Code Online (Sandbox Code Playgroud)
要使用此宏,请在撰写完邮件后但在发送之前按Escthen5将 Markdown 格式的邮件转换为 HTML。
您可以根据需要自然地自定义此宏。Mutt 已经内置了许多键绑定,因此无论您选择绑定到哪个键序列,请确保它不会覆盖其他内容(或者您可以没有它)。
该选项在运行外部命令时set wait_key=no
禁止 Mutt 的Press any key to continue...
提示。如果wait_key
是yes
(这是默认设置),您必须按Esc,然后5,然后按任何其他键才能继续。
您还可以将电子邮件发送为multipart/alternative
包含text/plain
和 的电子邮件text/html
。
要求:潘多克
基本上它是从 Markdown 消息纯文本和 html5 创建的。从这些部分创建附件,将它们标记为内联附件,设置正确的 mime 类型并将它们组合成多部分消息。
在撰写菜单中运行此宏后,应该添加任何其他附件。(可选)签名/加密消息应作为最后一步完成
macro compose ,m \
"<enter-command>set pipe_decode<enter>\
<pipe-message>pandoc -f gfm -t plain -o /tmp/msg.txt<enter>\
<pipe-message>pandoc -s -f gfm -t html5 -o /tmp/msg.html<enter>\
<enter-command>unset pipe_decode<enter>a^U/tmp/msg.txt\n^Da^U/tmp/msg.html\n^D^T^Utext/html; charset=utf-8\n=DTT&d^U\n" \
"Convert markdown gfm to HTML and plain"
Run Code Online (Sandbox Code Playgroud)