Как мне изменить подсвеченную длину git commit-messages в vim?

Я считаю, что ортодоксальный лимит в 50 символов для сообщений git commit абсолютно нелеп. (В первую очередь потому, что я думаю, что использование Терминала шириной 80 символов в 2015 году одинаково нелепо.) :P

Я исправил несколько других вопиющих проблем с vimнастройки по умолчанию для git commit-messages в моем vimrc; но vim по-прежнему выделяет первую строку, если она длиннее 50 символов:

Как я могу изменить длину строки, на которой это происходит?

1 ответ

Решение

Это вызвано следующей строкой из $VIMRUNTIME/syntax/gitcommit.vim:

syn match   gitcommitSummary    "^.\{0,50\}" contained containedin=gitcommitFirstLine nextgroup=gitcommitOverflow contains=@Spell

Вы можете просто скопировать этот синтаксический скрипт в ~/.vim/syntax/ и измените его, но это затягивает вас в поддержание вашего клона. Я предпочитаю выборочно изменить это единственное определение синтаксиса в ~/.vim/after/syntax/gitcommit.vim:

syn clear gitcommitSummary
syn match   gitcommitSummary    "^.\{0,80\}" contained containedin=gitcommitFirstLine nextgroup=gitcommitOverflow contains=@Spell

В качестве альтернативы / кроме того, вы можете открыть вопрос в проекте и попросить настраиваемый порог; жестко заданный предел, конечно, не очень хорош.

Другие вопросы по тегам