mirror of
https://github.com/amix/vimrc
synced 2025-06-16 01:25:00 +08:00
Updated plugins
This commit is contained in:
35
sources_non_forked/ale/ale_linters/yaml/circleci.vim
Normal file
35
sources_non_forked/ale/ale_linters/yaml/circleci.vim
Normal file
@ -0,0 +1,35 @@
|
||||
function! ale_linters#yaml#circleci#Handle(buffer, lines) abort
|
||||
let l:match_index = -1
|
||||
let l:output = []
|
||||
|
||||
for l:index in range(len(a:lines))
|
||||
let l:line = a:lines[l:index]
|
||||
|
||||
if l:line =~? 'Error: ERROR IN CONFIG FILE:'
|
||||
let l:match_index = l:index + 1
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
|
||||
if l:match_index > 0
|
||||
return [{
|
||||
\ 'type': 'E',
|
||||
\ 'lnum': 1,
|
||||
\ 'text': a:lines[l:match_index],
|
||||
\ 'detail': join(a:lines[l:match_index :], "\n"),
|
||||
\}]
|
||||
endif
|
||||
|
||||
return []
|
||||
endfunction
|
||||
|
||||
" The circleci validate requires network requests, so we'll only run it when
|
||||
" files are saved to prevent the server from being hammered.
|
||||
call ale#linter#Define('yaml', {
|
||||
\ 'name': 'circleci',
|
||||
\ 'executable': {b -> expand('#' . b . ':p') =~? '\.circleci' ? 'circleci' : ''},
|
||||
\ 'command': 'circleci config validate - < %s',
|
||||
\ 'callback': 'ale_linters#yaml#circleci#Handle',
|
||||
\ 'output_stream': 'stderr',
|
||||
\ 'lint_file': 1,
|
||||
\})
|
Reference in New Issue
Block a user