Vim и Ruby - соответствующие "do" s и "end" s?

Я уверен, что мы все знакомы с проблемой "неожиданного kEnd". Они всегда (для меня) много неприятностей для отслеживания, потому что Vim не соответствует "делать" и "заканчивать". (И, очевидно, другие элементы, которые заканчиваются "end", например "if" )

Есть ли способ настроить Vim, чтобы показать эти соответствия, чтобы облегчить отладку?

Ответ 1

Если вы используете недавний vim (я использую 7.4), встроенный макрос совпадений хорошо работает с кодом ruby.

Просто включите его, добавив следующее в свой .vimrc

runtime macros/matchit.vim

Hit% для соответствия do/end комбо и многих других в рубиновых файлах.

Ответ 2

Я использую этот макрос, а затем добавлю его в свой vimrc, чтобы включить его:

" % to bounce from do to end etc.
runtime! macros/matchit.vim

Когда я хочу найти подходящий конец для do, я курсор над do и нажимаю%.

Ответ 3

"endwise" - довольно приятное расширение vim, которое добавляет их автоматически, что я нашел, значительно уменьшает количество отсутствующих end s. и т.д.

http://www.vim.org/scripts/script.php?script_id=2386

Ответ 4

Я использую этот matchit clone, который можно легко установить с помощью vundle.