Use the psalm executable with the LS option

This is the simplest way of getting the psalm language server to run
now.
This commit is contained in:
Grégoire Paris 2019-07-25 23:00:49 +02:00
parent aae6d30b1e
commit e47c1965a6
No known key found for this signature in database
GPG key ID: 24D48B8012B116BF
3 changed files with 8 additions and 8 deletions

View file

@ -1,7 +1,7 @@
" Author: Matt Brown <https://github.com/muglug>
" Description: plugin for Psalm, static analyzer for PHP
call ale#Set('psalm_langserver_executable', 'psalm-language-server')
call ale#Set('psalm_langserver_executable', 'psalm')
call ale#Set('psalm_langserver_use_global', get(g:, 'ale_use_global_executables', 0))
function! ale_linters#php#psalm#GetProjectRoot(buffer) abort
@ -14,8 +14,8 @@ call ale#linter#Define('php', {
\ 'name': 'psalm',
\ 'lsp': 'stdio',
\ 'executable': {b -> ale#node#FindExecutable(b, 'psalm_langserver', [
\ 'vendor/bin/psalm-language-server',
\ 'vendor/bin/psalm',
\ ])},
\ 'command': '%e',
\ 'command': '%e --language-server',
\ 'project_root': function('ale_linters#php#psalm#GetProjectRoot'),
\})

View file

@ -9,18 +9,18 @@ After:
call ale#assert#TearDownLinterTest()
Execute(The default executable path should be correct):
AssertLinter 'psalm-language-server',
\ ale#Escape('psalm-language-server')
AssertLinter 'psalm',
\ ale#Escape('psalm') . ' --language-server'
Execute(Vendor executables should be detected):
call ale#test#SetFilename('psalm-project/test.php')
AssertLinter
\ ale#path#Simplify(g:dir . '/psalm-project/vendor/bin/psalm-language-server'),
\ ale#path#Simplify(g:dir . '/psalm-project/vendor/bin/psalm'),
\ ale#Escape(ale#path#Simplify(
\ g:dir
\ . '/psalm-project/vendor/bin/psalm-language-server'
\ ))
\ . '/psalm-project/vendor/bin/psalm'
\ )) . ' --language-server'
Execute(The project path should be correct for .git directories):
call ale#test#SetFilename('psalm-project/test.php')