From 908e94622ecb3df49a6a16fb3e47227764672be5 Mon Sep 17 00:00:00 2001 From: w0rp Date: Sat, 26 Aug 2017 18:11:27 +0100 Subject: #868 - Prefer cmd.js files for executing standard --- ale_linters/javascript/standard.vim | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'ale_linters/javascript/standard.vim') diff --git a/ale_linters/javascript/standard.vim b/ale_linters/javascript/standard.vim index 15e6d78f..fc534ebb 100644 --- a/ale_linters/javascript/standard.vim +++ b/ale_linters/javascript/standard.vim @@ -7,13 +7,25 @@ call ale#Set('javascript_standard_options', '') function! ale_linters#javascript#standard#GetExecutable(buffer) abort return ale#node#FindExecutable(a:buffer, 'javascript_standard', [ + \ 'node_modules/standard/bin/cmd.js', \ 'node_modules/.bin/standard', \]) endfunction function! ale_linters#javascript#standard#GetCommand(buffer) abort - return ale#Escape(ale_linters#javascript#standard#GetExecutable(a:buffer)) - \ . ' ' . ale#Var(a:buffer, 'javascript_standard_options') + let l:executable = ale_linters#javascript#standard#GetExecutable(a:buffer) + + if ale#Has('win32') && l:executable =~? '\.js$' + " .js files have to be executed with Node on Windows. + let l:head = 'node ' . ale#Escape(l:executable) + else + let l:head = ale#Escape(l:executable) + endif + + let l:options = ale#Var(a:buffer, 'javascript_standard_options') + + return l:head + \ . (!empty(l:options) ? ' ' . l:options : '') \ . ' --stdin %s' endfunction -- cgit v1.2.3