Simplfy semver handling and share the semver version cache across everything

This commit is contained in:
w0rp
2017-11-09 23:42:54 +00:00
parent c1fa88e78c
commit d425b8a18a
12 changed files with 133 additions and 188 deletions

View File

@@ -6,25 +6,19 @@ let g:ale_vim_vint_show_style_issues =
\ get(g:, 'ale_vim_vint_show_style_issues', 1)
let s:enable_neovim = has('nvim') ? ' --enable-neovim ' : ''
let s:format = '-f "{file_path}:{line_number}:{column_number}: {severity}: {description} (see {reference})"'
let s:vint_version = []
function! ale_linters#vim#vint#VersionCommand(buffer) abort
if empty(s:vint_version)
" Check the Vint version if we haven't checked it already.
return 'vint --version'
endif
return ''
" Check the Vint version if we haven't checked it already.
return !ale#semver#HasVersion('vint')
\ ? 'vint --version'
\ : ''
endfunction
function! ale_linters#vim#vint#GetCommand(buffer, version_output) abort
if empty(s:vint_version) && !empty(a:version_output)
" Parse the version out of the --version output.
let s:vint_version = ale#semver#Parse(join(a:version_output, "\n"))
endif
let l:version = ale#semver#GetVersion('vint', a:version_output)
let l:can_use_no_color_flag = empty(s:vint_version)
\ || ale#semver#GreaterOrEqual(s:vint_version, [0, 3, 7])
let l:can_use_no_color_flag = empty(l:version)
\ || ale#semver#GTE(l:version, [0, 3, 7])
let l:warning_flag = ale#Var(a:buffer, 'vim_vint_show_style_issues') ? '-s' : '-w'