Автоматическое заполнение заголовков файлов Python

В редакторе vim есть возможность добавлять текст в файлы с определёнными расширениями — при их создании и редактировании. Я использую это в скриптах на Python (т.к. как раз сейчас учу язык по книжке Марка Лутца). Итак, в конфигурационный файл .vimrc можно добавить, например, такие строки:

autocmd bufnewfile *.py so /home/user/.python_header.vim
autocmd bufnewfile *.py exe "1," . 8 . "g/File Name :.*/s//File Name : " .expand("%:t")
autocmd bufnewfile *.py exe "1," . 8 . "g/Creation Date :.*/s//Creation Date : " .strftime("%Y-%m-%d")
autocmd Bufwritepre,filewritepre *.py execute "normal ma"
autocmd Bufwritepre,filewritepre *.py exe "1," . 8 . "g/Last Modified :.*/s/Last Modified :.*/Last Modified : " .strftime("%Y-%m-%d %H:%M:%S")
autocmd bufwritepost,filewritepost *.py execute "normal `a"
autocmd bufnewfile *.py exe "normal G"

Здесь первая строчка ссылается на файл /home/user/.python_header.vim — он содержит заголовок, который вставляется в файл при его создании. Вот содержимое этого файла:

:insert
#!/usr/bin/env python3
# vim: set fileencoding=UTF-8
#
# File Name :
# Purpose :
# Creation Date :
# Last Modified :
# Created By : Anton 'KodopiK' Konoplev


.

Остальные строки из .vimrc нужны для изменения (апдейта) тех или иных значений из шапки — таких как дата редактирования Python-файла (Last Modified).

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *