blob: 3e5a7912897ca759195a6d7729073afddc6e166c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
" @Author: Tom Link (micathom AT gmail com?subject=[vim])
" @GIT: http://github.com/tomtom/tlib_vim/
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
" @Last Change: 2015-11-09.
" @Revision: 10
if &cp || exists("loaded_tlib_macros")
finish
endif
let loaded_tlib_macros = 1
let s:save_cpo = &cpo
set cpo&vim
" :display: :TRequire NAME [VERSION [FILE]]
" Make a certain vim file is loaded.
"
" Conventions: If FILE isn't defined, plugin/NAME.vim is loaded. The
" file must provide a variable loaded_{NAME} that represents the version
" number.
command! -nargs=+ TRequire let s:require = [<f-args>]
\ | if !exists('loaded_'. get(s:require, 0))
\ | exec 'runtime '. get(s:require, 2, 'plugin/'. get(s:require, 0) .'.vim')
\ | if !exists('loaded_'. get(s:require, 0)) || loaded_{get(s:require, 0)} < get(s:require, 1, loaded_{get(s:require, 0)})
\ | echoerr 'Require '. get(s:require, 0) .' >= '. get(s:require, 1, 'any version will do')
\ | finish
\ | endif
\ | endif | unlet s:require
" :display: :Ttimecommand CMD
" Time the execution time of CMD.
command! -nargs=1 -complete=command Ttimecommand call tlib#cmd#Time(<q-args>)
let &cpo = s:save_cpo
unlet s:save_cpo
|