Обнаружил для себя новый пласт VIM - режим отладки скриптов VIM. В сущности, очень полезная вещь - очень ее не хватает иногда, особенно если ставишь себе какой-нибудь плагин, а он - зараза эдакая - не работает как надо! Почему не работает - не ясно. Смотришь тупо в скудную документацию, ищешь где-то в интернете - а ведь хочется просто тупо пройти путь загрузки плагина по шагам и посмотреть, что же там, блин, работает неправильно.
Так вот, делается это очень просто. Чтобы запустить в режиме отладки какой-нибудь файл, надо задать такую команду:
$vim -D somefile.txt
Далее на экране появляется следующее сообщение:
Включён режим отладки. Для продолжения наберите "cont"
/usr/share/vim/vimrc
строка 11: runtime! debian.vim
>
Команда 'cont' запускает дальше выполнение всех скриптов VIM до ближайшей точки останова.
Вопрос: как задать точку останова? Ответ: командой breakadd. Например,так:
>breakadd file *runscript.vim
В данном случае я прошу VIM остановиться на файле runscript.vim. Это тот самый скрипт, исполнение которого я хочу просмотреть.
Далее я ввожу команду:
>cont
и на экране появляется сообщение:
Точка остановки в "~/.vim/plugin/runscript.vim" стр.1
~/.vim/plugin/runscript.vim
строка 40: let s:PathToExecutable = '/usr/bin/python'
>
Дальше можно пройтись по строкам и проследить исполнение скрипта с помощью команды 'next':
>next
Это так, если вкратце. А вообще кроме команд 'next' и 'cont' есть и другие, не менее полезные команды пошаговой отладки. Кроме того, команда breakadd может быть задана различными способами. Есть также команды breaklist и breakdel. Обо всем об этом можно прочитать здесь:
http://www.troubleshootingwiki.org/Debugging_Vim_Scripts>