我正在探索 mutt 作为一个电子邮件客户端 - 我非常喜欢它 - 我唯一的问题是将编辑器设置为带有一些额外参数的 vim。理想情况下,我想要类似的东西
set editor='vim -c "set fo+=aw"'
但这不起作用:编辑消息然后保存并退出后,mutt 会返回有关“中止未修改消息”的错误。如果我使用
set editor=vim
然后一切正常。如何通过set editor
in 命令向 vim 传递参数.muttrc
?
答案1
~/.vimrc
我多年来一直有以下经历:
autocmd BufNewFile,BufRead /tmp/mutt* set noautoindent filetype=mail wm=0 tw=78 nonumber digraph nolist
autocmd BufNewFile,BufRead ~/tmp/mutt* set noautoindent filetype=mail wm=0 tw=78 nonumber digraph nolist
他们告诉vim
在编辑匹配文件时设置这些选项。
这对我来说很有效。我唯一考虑添加的是设置paste
以及noautoindent
.
mutt
顺便说一句,我写下我所有的电子邮件vim
- 我不会/无法使用其他任何东西......即使几年前我不得不在 $a_previous_job 使用 Icedove (又名 Thunderbird)来连接到他们的 Exchange 服务器时,我也安装了外部编辑器插件,这样我就可以使用gvim
.我最终改用mutt
+ vim
+ fetchmail
- 与 Exchange 服务器的直接 imap 连接在大约 60 秒内超时,除了vim
.
答案2
您可以使用 shell 脚本来保存选项,并将editor
变量设置为该选项。
例如
#!/bin/sh
vim -c "set fo+=aw" "$@"
这穆特常见问题解答建议采用类似的方法如何删除引用的回复(例如删除签名)?,尽管这通常不是常见问题解答的材料。