Сafter/ftplugin/mail.vim

Сafter/ftplugin/mail.vim

Каждый раз, когда я печатаю письмо с помощью Mutt, он вставляет эти переносы строк каждые 70 символов или около того. Я бы предпочел, чтобы он просто полагался на перенос слов, так как мой стиль редактирования (много правок) делает переформатирование мучением. Есть ли способ настроить это в muttrc?

решение1

Вы можете задать editorопцию в вашей .muttrcопции и включить опции командной строки. Параметры командной строки могут устанавливать настройки vim. Примером может быть:

set editor="vim +':set textwidth=0' +':set wrapmargin=0' +':set wrap'"

или

# use vim, tell it to set cursor on first line of body
set editor="vim -c 'set expandtab textwidth=65 | normal }j'"

И так далее и тому подобное. Смотритестраница руководства vimдля получения дополнительных опций.

решение2

Другой подход — указать дополнительный исходный файл только для Mutt с помощью -Scli-флага vim:

Вот значение editor в моем .muttrc:

set editor="vim -S ~/.mutt/vimrc"

А вот мой ~/.mutt/vimrc:

set textwidth=0
set wrapmargin=0

решение3

Попробуйте установить ширину текста на 0:

; ~/.vimrc
:set textwidth=0
:set wrapmargin=0

решение4

Сafter/ftplugin/mail.vim

С использованиемРешение Хэмиша Даунерадолгое время работая в Neovim, сегодня я заметил, что ширина текста сбрасывается после открытия буфера (еще одного файла, где я храню адреса электронной почты, в моем случае) в том же окне.

Я думаю, причина в том, что /usr/share/nvim/runtime/ftplugin/mail.vimзагружен плагин типа файла по умолчанию, который устанавливает ширину текста 72:

" Part of /usr/share/nvim/runtime/ftplugin/mail.vim

" many people recommend keeping e-mail messages 72 chars wide
if &tw == 0
  setlocal tw=72
endif

Чтобы решить эту проблему, я удалил строку set editor="vim +':set textwidth=0' +':set wrapmargin=0' +':set wrap'"из своего muttrc и вместо этого создал плагин пользовательского типа файла, ~/.config/nvim/after/ftplugin/mail.vimсостоящий только из этой строки:

setlocal textwidth=0

Как правило, файлы в after/ftplugin/берутся после конфигураций в /usr/share/nvim/runtime/fpgplugin, фактически переопределяя их.

Я также нахожу это немного чище, чем set editor=метод, и это имеет результат, что Neovim будет использовать эту конфигурацию для всех файлов типа mail. Это обеспечивает согласованные настройки при написании писем с другими клиентами, чем Mutt.

Кроме того, теперь я могу разместить конфигурацию в несколько строк и добавлять комментарии:

" Contents of ~/.config/nvim/after/ftplugin/mail.vim

setlocal textwidth=0
" Jump over first paragraph (useful when muttrc contains set edit_headers)
normal! }

Связанный контент