Для быстрого взлома вы можете адаптировать 'textwidth'
значение при каждом перемещении курсора:
:autocmd CursorMoved,CursorMovedI <buffer> let &l:textwidth = (getline('.') =~# '^\((patch)\|(minor)\|(major)\)' ? 0 : 75)
Вы можете поместить эту команду ~/.vim/ftplugin/gitcommit_textwidth.vim
так, чтобы она автоматически применялась к сообщениям Git commit.
альтернатива
Чтобы избежать дублирования шаблона, мой плагин OnSyntaxChange позволяет вам устанавливать :autocmd
s, которые реагируют на изменения в основной синтаксической группе. Это в основном работает как вышеупомянутое решение, но на гораздо более сложном уровне.
call OnSyntaxChange#Install('AutoPublish', '^autoPublishLine$', 1, 'a') autocmd User SyntaxAutoPublishEnterA setlocal textwidth=0 autocmd User SyntaxAutoPublishLeaveA setlocal textwidth=75