summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ale_linters/python/pyls.vim2
-rw-r--r--doc/ale-python.txt18
-rw-r--r--test/command_callback/test_pyls_command_callback.vader5
3 files changed, 25 insertions, 0 deletions
diff --git a/ale_linters/python/pyls.vim b/ale_linters/python/pyls.vim
index 83fe8066..2c2ed94c 100644
--- a/ale_linters/python/pyls.vim
+++ b/ale_linters/python/pyls.vim
@@ -4,6 +4,7 @@
call ale#Set('python_pyls_executable', 'pyls')
call ale#Set('python_pyls_use_global', get(g:, 'ale_use_global_executables', 0))
call ale#Set('python_pyls_auto_pipenv', 0)
+call ale#Set('python_pyls_config', {})
function! ale_linters#python#pyls#GetExecutable(buffer) abort
if (ale#Var(a:buffer, 'python_auto_pipenv') || ale#Var(a:buffer, 'python_pyls_auto_pipenv'))
@@ -31,4 +32,5 @@ call ale#linter#Define('python', {
\ 'command_callback': 'ale_linters#python#pyls#GetCommand',
\ 'project_root_callback': 'ale#python#FindProjectRoot',
\ 'completion_filter': 'ale#completion#python#CompletionItemFilter',
+\ 'lsp_config_callback': ale#VarFunc('python_pyls_config'),
\})
diff --git a/doc/ale-python.txt b/doc/ale-python.txt
index a1ad1500..3d355bc6 100644
--- a/doc/ale-python.txt
+++ b/doc/ale-python.txt
@@ -494,6 +494,24 @@ g:ale_python_pyls_auto_pipenv *g:ale_python_pyls_auto_pipenv*
if true. This is overridden by a manually-set executable.
+g:ale_python_pyls_config *g:ale_python_pyls_config*
+ *b:ale_python_pyls_config*
+ Type: |Dictionary|
+ Default: `{}`
+
+ Dictionary with configuration settings for pyls. For example, to disable
+ the pycodestyle linter: >
+ {
+ \ 'pyls': {
+ \ 'plugins': {
+ \ 'pycodestyle': {
+ \ 'enabled': v:false
+ \ }
+ \ }
+ \ },
+ \ }
+<
+
===============================================================================
pyre *ale-python-pyre*
diff --git a/test/command_callback/test_pyls_command_callback.vader b/test/command_callback/test_pyls_command_callback.vader
index 531b5b3b..aff2fcd7 100644
--- a/test/command_callback/test_pyls_command_callback.vader
+++ b/test/command_callback/test_pyls_command_callback.vader
@@ -45,3 +45,8 @@ Execute(Pipenv is detected when python_pyls_auto_pipenv is set):
AssertLinter 'pipenv',
\ ale#Escape('pipenv') . ' run pyls'
+
+Execute(Should accept configuration settings):
+ AssertLSPConfig {}
+ let b:ale_python_pyls_config = {'pyls': {'plugins': {'preload': {'enabled': v:false}}}}
+ AssertLSPConfig {'pyls': {'plugins': {'preload': {'enabled': v:false}}}}