Allow initialization options to be passed to language servers

This commit is contained in:
Ben Falconer
2018-06-06 16:58:49 +01:00
parent c49ea1a5e3
commit 1a4b08539b
6 changed files with 75 additions and 8 deletions

View File

@@ -2331,6 +2331,10 @@ ale#linter#Define(filetype, linter) *ale#linter#Define()*
An optional `completion_filter` callback may be
defined for filtering completion results.
An optional `initialization_options` or
`initialization_options_callback` may be defined to
pass initialization options to the LSP.
`project_root_callback` A |String| or |Funcref| for a callback function
accepting a buffer number. A |String| should be
returned representing the path to the project for the
@@ -2372,6 +2376,17 @@ ale#linter#Define(filetype, linter) *ale#linter#Define()*
setting can make it easier to guess the linter name
by offering a few alternatives.
`initialization_options` A |Dictionary| of initialization options for LSPs.
This will be fed (as JSON) to the LSP in the
initialize command.
`initialization_options_callback`
A |String| or |Funcref| for a callback function
accepting a buffer number. A |Dictionary| should be
returned for initialization options to pass the LSP.
This can be used in place of `initialization_options`
when more complicated processing is needed.
Only one of `command`, `command_callback`, or `command_chain` should be
specified. `command_callback` is generally recommended when a command string
needs to be generated dynamically, or any global options are used.