mirror of https://github.com/dense-analysis/ale
#2533 - Run phpcs in the directory the file is in
This commit is contained in:
parent
ca0cdd26fc
commit
166435dbf1
|
@ -10,13 +10,13 @@ call ale#Set('php_phpcs_use_global', get(g:, 'ale_use_global_executables', 0))
|
|||
function! ale_linters#php#phpcs#GetCommand(buffer) abort
|
||||
let l:standard = ale#Var(a:buffer, 'php_phpcs_standard')
|
||||
let l:standard_option = !empty(l:standard)
|
||||
\ ? '--standard=' . l:standard
|
||||
\ ? '--standard=' . ale#Escape(l:standard)
|
||||
\ : ''
|
||||
let l:options = ale#Var(a:buffer, 'php_phpcs_options')
|
||||
|
||||
return '%e -s --report=emacs --stdin-path=%s'
|
||||
\ . ale#Pad(l:standard_option)
|
||||
\ . ale#Pad(l:options)
|
||||
return ale#path#BufferCdString(a:buffer)
|
||||
\ . '%e -s --report=emacs --stdin-path=%s'
|
||||
\ . ale#Pad(l:standard_option)
|
||||
\ . ale#Pad(ale#Var(a:buffer, 'php_phpcs_options'))
|
||||
endfunction
|
||||
|
||||
function! ale_linters#php#phpcs#Handle(buffer, lines) abort
|
||||
|
|
|
@ -11,25 +11,36 @@ Execute(The local phpcs executable should be used):
|
|||
|
||||
let g:executable = ale#path#Simplify(g:dir . '/../phpcs-test-files/project-with-phpcs/vendor/bin/phpcs')
|
||||
|
||||
AssertLinter g:executable,
|
||||
\ ale#Escape(g:executable) . ' -s --report=emacs --stdin-path=%s'
|
||||
AssertLinter g:executable, ale#path#BufferCdString(bufnr(''))
|
||||
\ . ale#Escape(g:executable)
|
||||
\ . ' -s --report=emacs --stdin-path=%s'
|
||||
|
||||
Execute(use_global should override local executable detection):
|
||||
let g:ale_php_phpcs_use_global = 1
|
||||
|
||||
call ale#test#SetFilename('../phpcs-test-files/project-with-phpcs/foo/test.php')
|
||||
|
||||
AssertLinter 'phpcs',
|
||||
\ ale#Escape('phpcs') . ' -s --report=emacs --stdin-path=%s'
|
||||
AssertLinter 'phpcs', ale#path#BufferCdString(bufnr(''))
|
||||
\ . ale#Escape('phpcs')
|
||||
\ . ' -s --report=emacs --stdin-path=%s'
|
||||
|
||||
Execute(Projects without local executables should use the global one):
|
||||
call ale#test#SetFilename('../phpcs-test-files/project-without-phpcs/foo/test.php')
|
||||
|
||||
AssertLinter 'phpcs',
|
||||
\ ale#Escape('phpcs') . ' -s --report=emacs --stdin-path=%s'
|
||||
AssertLinter 'phpcs', ale#path#BufferCdString(bufnr(''))
|
||||
\ . ale#Escape('phpcs')
|
||||
\ . ' -s --report=emacs --stdin-path=%s'
|
||||
|
||||
Execute(User provided options are used):
|
||||
Execute(User provided options should be used):
|
||||
let g:ale_php_phpcs_options = '--my-user-provided-option my-value'
|
||||
|
||||
AssertLinter 'phpcs',
|
||||
\ ale#Escape('phpcs') . ' -s --report=emacs --stdin-path=%s --my-user-provided-option my-value'
|
||||
AssertLinter 'phpcs', ale#path#BufferCdString(bufnr(''))
|
||||
\ . ale#Escape('phpcs')
|
||||
\ . ' -s --report=emacs --stdin-path=%s --my-user-provided-option my-value'
|
||||
|
||||
Execute(The _standard option should be used):
|
||||
let g:ale_php_phpcs_standard = 'foobar'
|
||||
|
||||
AssertLinter 'phpcs', ale#path#BufferCdString(bufnr(''))
|
||||
\ . ale#Escape('phpcs')
|
||||
\ . ' -s --report=emacs --stdin-path=%s --standard=' . ale#Escape('foobar')
|
||||
|
|
Loading…
Reference in New Issue