diff options
Diffstat (limited to 'vim/autoload/has.vim')
-rw-r--r-- | vim/autoload/has.vim | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/vim/autoload/has.vim b/vim/autoload/has.vim new file mode 100644 index 00000000..0100e913 --- /dev/null +++ b/vim/autoload/has.vim @@ -0,0 +1,16 @@ +function! has#(feature) abort + if has('patch-7.4.237') + return has(a:feature) + endif + let feature = a:feature + let pattern = 'patch-\(\d\+\)\.\(\d\+\)\.\(\d\+\)' + let matchlist = matchlist(feature, pattern) + if empty(matchlist) + return has(a:feature) + endif + let [major, minor, patch] = matchlist[1:3] + let l:version = major * 100 + minor + return v:version != l:version + \ ? v:version > l:version + \ : has('patch-'.patch) +endfunction |