From 1da187a6e5bbf278158ac494f1fa3bf337c4eb50 Mon Sep 17 00:00:00 2001 From: Ethan Chan Date: Thu, 2 Feb 2017 16:56:09 -0800 Subject: [PATCH 1/2] add support for locally installed coffeelint --- ale_linters/coffee/coffeelint.vim | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) 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', \}) From 69ce8502a47348f0638a56fbcd87490a63b097de Mon Sep 17 00:00:00 2001 From: Ethan Chan Date: Thu, 2 Feb 2017 17:03:26 -0800 Subject: [PATCH 2/2] add support for locally installed coffee --- ale_linters/coffee/coffee.vim | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) 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', \})