Шаблоны файлов в vim
Иногда очень удобно открыть файл foo.c и получить автоматическую заглушку. В данном совете приводится пример заглушек для C программ: foo.c и bar.h.
Что мы хотим получить?
$ vim foo.c1 #include <stdio.h> 2 3 int main() 4 { 5 return 0; 6 }
Курсор на строке 4.
$ vim bar.h1 #ifndef BAR_H 2 #define BAR_H 3 4 5 6 #endif
Курсор на 4 строке.
Для foo.c достаточно прописать в .vimrc:
au BufNewFile *.c 0r ~/.vim/skel/c.skel | 4
где:
BufNewFile - при создании нового файла
0r - прочитать файл ~/.vim/skel/c.skel в текущий в 0 строчку
4 - перейти на 4 строку
Для bar.h все несколько сложнее. Ведь нам нужно преобразовать имя файла в
верхний регистр. Для этого напишем функцию:
function! s:c_header_skel()
let gatename = substitute(toupper(expand("%:t")), "\\.", "_", "g")
execute "normal i#ifndef " . gatename
execute "normal o#define " . gatename . " "
execute "normal Go#endif"
normal k3o
normal k
endfunctionДля вызовы этой функции воспользуемся предыдущим примером:
au BufNewFile *.h call <SID>c_header_skel()
- 2784 просмотра
Страница для печати

Из плагинов по данной теме очень мощным является tSkeleton. Из вкусняшек, которые он умеет (то что первое приходит в голову):
1. Шаблоны для файлов с возможностью интерактивного взаимодействия (например для с++ файла он может спросить что написать в поле стандартного комментария);
2. Автоподстановка переменных (типа автор, дата...);
3. Вставка курсора в необходимое место;
4. Шаблоны для страндартных конструкций языка (например цикла for, switch, if, if-else ... для С++), опять же с интерактивным взаимодействием (например: спрашивает имя переменной и ее начальное и конечное значение для for);
5. И многое другое.
Ссылка на начальную настройку плагина.
ага. я своем коменте ниже говорил что нашел его слишком избыточным.
интересует реальное применение этого плагина. кто что использует и для чего. очень интересен живой пример
--
Signature invent in progress 24% ##........
Хорошо, как только будет время постараюсь записать видео с примерами разных фич. Ждите.
Просьба тому кто сможет разместить видео на более стабильном ресурсе сделать это ради будущих поколений. На существующем ресурсе не могу дать гарантию что оно проживет более недели. А вот и видео
отвал башки. снкс!
КПИ рулит Ж:-)
Залил на линсовет и сделал описание
--
Signature invent in progress 24% ##........
Опять же есть хороший велосипед: snippetsEmu (http://www.vim.org/scripts/script.php?script_id=1318).
Life is a miracle!
че то я не понял каким боком єтот плагин к типсу?
я в свое время присматривался к File Templates and Code Skeletons ,но он показался для меня слишком избыточным и я использую примерно такое как в типсе.
--
Signature invent in progress 24% ##........
Отправить комментарий