vim模板插件vim-template的使用

vim模板插件vim-template的使用

以前使用IDE編程,模板是最基本的功能,如今切換到vim,用慣了模板的我,對於每次寫代碼都來上python

# -*- coding: utf-8 -*-
#
# 日期 做者
#
# License

這麼一段,感受有點恐怖,Google了一下,vim居然能夠實現比IDE更強大的功能,真是不得不佩服vim的強大!git

安裝

因爲不一樣人的vim配置不同,安裝方法也不盡相同,請參考官方的安裝方法來安裝。
對於使用spf13-vim的同窗,在主目錄下的.vimrc.bundles.local添加一行:github

Bundle 'git@github.com:aperezdc/vim-template.git'

# 不知道"Bundle 'vim-template'"爲何老要我輸入用戶名密碼,
# 輸入以後也安裝不成功,知道的同窗能夠留言告知我。

而後在shell裏面運行:shell

vim +BundleInstall

或者打開vim,運行:編程

:BundleInstall

都行。vim

基本使用

若是你對自帶的模板沒有不少意見,你甚至什麼都不用配置,你用vim打開一個新的python腳本,vim-template會自動檢測
文件後綴,而後本身根據模板填充文件,一切都那麼理所固然。你甚至能夠打開沒有後綴的文件,而後運行:Template <pattern>(好比:Template *.py)在文件
開頭插入模板,:TemplateHere <pattern>(好比: TemplateHere *.py)在光標所在的位置插入模板。函數

配置

安裝好vim-template以後,能夠根據本身的須要來配置:學習

1. 自定義模板變量

vim-template能夠自定義模板變量, 在主目錄的.vimrc(若是你使用spf13-vim的話就修改.vimrc.local)中添加:插件

let g:templates_user_variables = [['EMAIL', 'GetEmail'],]

function GetEamil()
    return 'pylego@hotmail.com'
endfunction

注意:上面都是VimScript的語法,有興趣的能夠學習下。code

這樣你就能夠在模板裏面寫%EMAIL%,而後模板引擎會自動調用GetEmail函數,將返回值代替之。

2. 自定義模板

有時候你想根據本身的須要定義模板,在vim-template裏面是很容易實現的

2.1 修改g:templates_directory到你自定義模板所在的文件夾

# 在.vimrc(若是你使用spf13-vim的話就是.vimrc.local)
let g:templates_directory = '/home/pylego/.vim/templates'

2.2 在/home/pylego/.vim/templates中建立模板文件

文件的命名模式是"=template=<pattern>", 好比我想讓每一個以py結尾的文件都以這個模板開始就能夠這樣:

建立一個名爲"=template=.py"的文件,向文件裏面寫入模板。

注意這個"=template="前綴是能夠改動的,具體不在本文討論範圍內。

個人配置

spf13-vim

.vimrc.local

" settings for vim-template bundle
let g:templates_directory = ['/home/pylego/.vim/templates',]
let g:templates_user_variables = [['EMAIL', 'GetMail'], ['FULLPATH', 'GetFullPath']]

function GetMail()
    return 'pylego@hotmail.com'
endfunction

function GetFullPath()
    return expand('%:p')
endfunction
" vim-template settings end

/home/pylego/.vim/templates/=template=.py

# -*- coding: utf-8 -*-
#
# Copyright © PyleGo.
#
# %DATE% %TIME% <%EMAIL%>
#
# Distributed under terms of the %LICENSE% license.
相關文章
相關標籤/搜索