summaryrefslogtreecommitdiff
path: root/ale_linters/markdown/vale.vim
blob: 06a644165d8996790f87133e5d0b6ffce8de635d (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
" Author: chew-z https://github.com/chew-z
" Description: vale for Markdown files

call ale#Set('markdown_vale_executable', 'vale')
call ale#Set('markdown_vale_input_file', '%t')
call ale#Set('markdown_vale_options', '')

function! ale_linters#markdown#vale#GetCommand(buffer) abort
    let l:executable = ale#Var(a:buffer, 'markdown_vale_executable')
    let l:input_file = ale#Var(a:buffer, 'markdown_vale_input_file')

    " Defaults to `vale --output=JSON %t`
    return ale#Escape(l:executable)
    \   . ' --output=JSON '
    \   . ale#Var(a:buffer, 'markdown_vale_options')
    \   . ' ' . l:input_file
endfunction

call ale#linter#Define('markdown', {
\   'name': 'vale',
\   'executable': {b -> ale#Var(b, 'markdown_vale_executable')},
\   'command': function('ale_linters#markdown#vale#GetCommand'),
\   'callback': 'ale#handlers#vale#Handle',
\})