如何在Vim中仅为电子邮件设置拼写检查?

6

Google没有提供太多帮助。我希望在写邮件时使用:set spell,但对于其他所有文件,:set spell应该关闭。我正在使用mutt,并使用Vim作为编写电子邮件的编辑器。

实际上,我很好奇,Vim如何知道我正在编写电子邮件?有没有命令行参数指定所编辑的文件类型?mutt如何知道传递什么?

4个回答

19
你可以在你的~/.vimrc中使用autocmd,它会在检测到文件类型时触发:
autocmd FileType mail set spell

Vim如何知道我正在撰写电子邮件? - Oliver Zheng
5
Vim知道mutt的临时文件命名规则。如果一个文件符合该模式,vim会将其视为邮件。(有关详细信息,请查看您的filetype.vim,该文件可能位于/ usr / share / vim的某个位置) - sth
没错!我更喜欢这种方法,而不是使用“set editor”命令行,因为它可以让你以更易读的方式设置拼写语言和其他选项。 - osti
确切地说,我使用这个设置来设置诸如textwidth、nonu、nocursor等的东西。 - Rick

8

在您的.muttrc文件中尝试以下内容:

set editor = "/usr/bin/vim -c':set spell'"

你可以使用“which vim”命令找到vim的正确路径。

1
看起来mutt不需要vim的完整路径,这很好,如果我想在不同平台上使用相同的muttrc文件。 - Oliver Zheng

0

0
将以下内容添加到您的~/.vimrc文件中:
set spelllang=en_gb,fr
au BufRead,BufNewFile *mutt* set filetype=mail
autocmd FileType mail set spell

它应该可以正常工作。您可以(应该?)更改拼写语言以反映您经常使用的任何语言。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接