diff --git a/ale_linters/coffee/coffee.vim b/ale_linters/coffee/coffee.vim index 243fec6..ac9ef79 100644 --- a/ale_linters/coffee/coffee.vim +++ b/ale_linters/coffee/coffee.vim @@ -1,10 +1,23 @@ " Author: KabbAmine - https://github.com/KabbAmine " Description: Coffee for checking coffee files +function! ale_linters#coffee#coffee#GetExecutable(buffer) abort + return ale#util#ResolveLocalPath( + \ a:buffer, + \ 'node_modules/.bin/coffee', + \ 'coffee' + \) +endfunction + +function! ale_linters#coffee#coffee#GetCommand(buffer) abort + return ale_linters#coffee#coffee#GetExecutable(a:buffer) + \ . ' -cp -s' +endfunction + call ale#linter#Define('coffee', { \ 'name': 'coffee', -\ 'executable': 'coffee', -\ 'command': 'coffee -cp -s', +\ 'executable_callback': 'ale_linters#coffee#coffee#GetExecutable', +\ 'command_callback': 'ale_linters#coffee#coffee#GetCommand', \ 'output_stream': 'stderr', \ 'callback': 'ale#handlers#HandleGCCFormat', \}) diff --git a/ale_linters/coffee/coffeelint.vim b/ale_linters/coffee/coffeelint.vim index 96b8c59..8b1c713 100644 --- a/ale_linters/coffee/coffeelint.vim +++ b/ale_linters/coffee/coffeelint.vim @@ -1,6 +1,19 @@ " Author: Prashanth Chandra https://github.com/prashcr " Description: coffeelint linter for coffeescript files +function! ale_linters#coffee#coffeelint#GetExecutable(buffer) abort + return ale#util#ResolveLocalPath( + \ a:buffer, + \ 'node_modules/.bin/coffeelint', + \ 'coffeelint' + \) +endfunction + +function! ale_linters#coffee#coffeelint#GetCommand(buffer) abort + return ale_linters#coffee#coffeelint#GetExecutable(a:buffer) + \ . ' --stdin --reporter csv' +endfunction + function! ale_linters#coffee#coffeelint#Handle(buffer, lines) abort " Matches patterns like the following: " @@ -40,7 +53,7 @@ endfunction call ale#linter#Define('coffee', { \ 'name': 'coffeelint', -\ 'executable': 'coffeelint', -\ 'command': 'coffeelint --stdin --reporter csv', +\ 'executable_callback': 'ale_linters#coffee#coffeelint#GetExecutable', +\ 'command_callback': 'ale_linters#coffee#coffeelint#GetCommand', \ 'callback': 'ale_linters#coffee#coffeelint#Handle', \})