Как установить заклинание в Vim только для писем?

Гугл тут не очень помогает. Я бы хотел создавать электронные письма с включенным :set spell, но для всех остальных файлов :set spell должен быть выключен. Я использую mutt и Vim в качестве редактора для написания писем.

На самом деле, мне любопытно, как Vim узнает, что это электронное письмо, которое я пишу? Есть ли параметр командной строки типа редактируемого файла? Откуда дворняга знает, что передавать?


person Oliver Zheng    schedule 27.03.2009    source источник


Ответы (4)


Вы можете использовать autocmd в своем ~/.vimrc, который запускается обнаруженным типом файла:

autocmd FileType mail set spell
person sth    schedule 27.03.2009
comment
Как Vim узнает, что это письмо я пишу? - person Oliver Zheng; 30.03.2009
comment
Vim знает схему именования временных файлов. Если файл соответствует этому шаблону, vim рассматривает его как почту. (Подробности смотрите в вашем файле type.vim, который, вероятно, находится где-то в /usr/share/vim) - person sth; 30.03.2009
comment
В яблочко! Я бы предпочел этот метод строке редактора set, поскольку он также позволяет вам устанавливать язык заклинаний и другие параметры более читабельным образом... - person osti; 24.04.2011
comment
Точно, я использую эту настройку для установки таких вещей, как textwidth, nonu, nocursor и т. д. - person Rick; 03.04.2012

Попробуйте это в своем .muttrc:

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

Вы можете найти правильный путь к vim с помощью «what vim».

person brian-brazil    schedule 27.03.2009
comment
Идеальное спасибо. Не похоже, чтобы mutt требовал полного пути к vim, и это здорово, если я хочу использовать один и тот же файл muttrc на разных платформах. - person Oliver Zheng; 27.03.2009

Разве вы не должны использовать команду конфигурации mutt? См. следующие ссылки:

person dirkgently    schedule 27.03.2009

Добавьте следующее в ваш ~/.vimrc:

set spelllang=en_gb,fr
au BufRead,BufNewFile *mutt* set filetype=mail
autocmd FileType mail set spell

И он должен работать нормально. Вы можете (должны ли?) изменить язык орфографии, чтобы отразить любые языки, которые вы обычно используете.

person Sardathrion - against SE abuse    schedule 03.04.2012