" 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', \})