На данный пост меня воодушевил комментарий одного "Анонимуса" на perl-блоге моего хорошего друга (блог - koorchik.blogspot.com).
Пост первый, так что прошу не судить строго.
Скажу сразу, что vim я использую как полноценную IDE и полноценный текстовый редактор. Кстати данный пост пишу так же в vim...
Почему vim, это отдельная история, поэтому напишу её когда-нибудь отдельно.
Итак основные моменты, которые необходимы для работы с perl в vim.
Разделю все на 2 основные части - это плагины, которые я бы советовал для работы с perl и настройка специального режима для perl в vim.
Плагины
1. Плагин perl-support автор - Fritz Mehner, качаем тут vim.org
Данный плагин имеет огромное количество различный плюшек для perl-программиста, разного рода хот-кеи, проверка синтаксиса, шаблоны и т.д.
Первое, что я советую после того как Вы скачали, распаковали и скопировали все содержимое в vim-директорию, так это отредактировать под себя шаблоны.
Открываем:
vim ~/.vim/perl-support/templates/Template
Редактируем
|AUTHOR| = Ваше имя и фамилия
|AUTHORREF| = (у меня тут пусто)
|EMAIL| = Е-mail
|COPYRIGHT| = Copyright (c) |YEAR| (|EMAIL|)
После редактируем под себя темплейты для perl скриптов, тестов и модулей
vim ~/.vim/perl-support/templates/file-description.template
Дальше:
:help perl-support
И на сколько хватит...
От себя добавлю 3 любимые команды:
\h на выбранной функции - открывает perldoc прямо в vim
\rs - проверяет на синтаксические ошибки (аналог perl -c)
\rr - запускает редактируемый скрипт.
2. Плагин vim-perl, автор - Andy Lester, качаем с github.com
Если честно я ждал этого плагина два года. И наконец нашел где-то месяцев 6 назад.
Самый главный плюс данного плагина, это адекватная подсветка синтаксиса для perl6 и xs!
Возможно там и отличная подсветка для pod файлов, но у меня все комменты подсвечиваются исключительно одним цветом, поэтому оценить не могу.
3. Авто-проверка синтаксиса, автор - Martin Grenfell скачать можно с github.com
Автоматически подсвечивает ошибки, если таковые имеются, в том числе и в perl скриптах.
На русском почитать о данном плагине можно на Хабре
4. Для пользователей фреймворка Mojolicious советую плагин mojo.vim, автор - Yaroslav Korshak, качаем как всегда с github.com
Необходимая вещь при работе с "ep" темплейтами.
Настройка спец. режима для perl
В ~/.vimrc пишем такой код
augroup FileSettings
autocmd!
" setting up for Perl
autocmd FileType perl call LangPerl()
augroup END
Он будет запускаться при открытии нового файла, и если это перловый файл, то будет запускаться функция LangPerl(), которая и будет устанавливать определенные параметры для более эффективной работы
Ниже моя функция для работы с перл
function LangPerl() " включаем все самое умное что есть в perl :) setlocal expandtab autoindent smartindent " Генерим сtags файл по нажатию F6 imap:!find . -type f -name "*.p[ml]" -print0 \| xargs -0 ctags --fields=+iaS --extra=+q . a nmap :!find . -type f -name "*.p[ml]" -print0 \| xargs -0 ctags --fields=+iaS --extra=+q . " устанавливаем ограничение на длину строки в 100 символов setlocal textwidth=100 endfunction
Что такое теги опытный пользователь vim знает не по наслышке (а кто не знает, тот скорее всего никогда серьезно не использовал vim, но для желающих познавать :help tag и :help ctags).
Я добавил рекурсивное прохождение по всей поточной папке выбирая для индексации исключительно perl-файлы. И теперь по CTRL-] и CTRL-T мы будем перемещаться по всему проекту.
Про ctags написано множество всего, например:
Как Вы, наверное, догадались написать такую же функцию для javascript или С++ файлов не составит труда. Поэтому дерзайте, пробуйте и будет Вам счастье.
Вроде бы все. Как-нибудь напишу еще один пост, как сделать из vim полноценную IDE, после которого обещаю и выложить ссылку на весь конфиг с плагинами.
Всем спасибо, кто читал и комментировал.
С ув. antonfin
Читать дельше...