aboutsummaryrefslogtreecommitdiff
path: root/vim/autoload
diff options
context:
space:
mode:
authorTom Ryder <tom@sanctum.geek.nz>2019-07-07 01:00:28 +1200
committerTom Ryder <tom@sanctum.geek.nz>2019-07-07 01:00:28 +1200
commit96d7cb549bf75002f447e650ca7fd1613c8c6ace (patch)
treee978463f25f52359c2258ef081fedbb4fb0cc181 /vim/autoload
parentMerge branch 'release/v6.51.0' into develop (diff)
downloaddotfiles-96d7cb549bf75002f447e650ca7fd1613c8c6ace.tar.gz
dotfiles-96d7cb549bf75002f447e650ca7fd1613c8c6ace.zip
Backport convenient patch-* test to old Vim
Diffstat (limited to 'vim/autoload')
-rw-r--r--vim/autoload/has.vim16
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