mirror of
https://github.com/dense-analysis/ale.git
synced 2025-12-06 20:54:26 +08:00
1. Add ale.setup and ale.setup.buffer for pure Lua configuration. 2. Update many global settings to use Booleans instead of numbers to make types easiert to work with in Lua. 3. Radically reformat documentation and fix errors to make documentation more usable for Neovim users.
147 lines
5.8 KiB
Plaintext
147 lines
5.8 KiB
Plaintext
===============================================================================
|
|
ALE Scala Integration *ale-scala-options*
|
|
|
|
|
|
===============================================================================
|
|
cspell *ale-scala-cspell*
|
|
|
|
See |ale-cspell-options|
|
|
|
|
|
|
===============================================================================
|
|
metals *ale-scala-metals*
|
|
|
|
`metals` requires either an SBT project, a Mill project, or a running Bloop
|
|
server.
|
|
|
|
*ale-options.scala_metals_executable*
|
|
*g:ale_scala_metals_executable*
|
|
*b:ale_scala_metals_executable*
|
|
scala_metals_executable
|
|
g:ale_scala_metals_executable
|
|
Type: |String|
|
|
Default: `'metals-vim'`
|
|
|
|
Override the invoked `metals` binary.
|
|
|
|
*ale-options.scala_metals_project_root*
|
|
*g:ale_scala_metals_project_root*
|
|
*b:ale_scala_metals_project_root*
|
|
scala_metals_project_root
|
|
g:ale_scala_metals_project_root
|
|
Type: |String|
|
|
Default: `''`
|
|
|
|
By default the project root is found by searching upwards for `build.sbt`,
|
|
`build.sc`, `.bloop` or `.metals`. If the project root is elsewhere, you
|
|
can override the project root directory.
|
|
|
|
|
|
===============================================================================
|
|
sbtserver *ale-scala-sbtserver*
|
|
|
|
`sbtserver` requires a running ^1.1.x sbt shell to connect to. It will attempt
|
|
to connect via TCP to the address defined in `g:ale_scala_sbtserver_address`.
|
|
As `sbt` defaults to listening via unix sockets, place these settings into
|
|
your `~/.sbt/1.0/global.sbt` to ensure that ale will always attempt to connect
|
|
to the right socket:
|
|
|
|
`serverConnectionType := ConnectionType.Tcp` and `serverPort := 4273`
|
|
|
|
*ale-options.scala_sbtserver_address*
|
|
*g:ale_scala_sbtserver_address*
|
|
*b:ale_scala_sbtserver_address*
|
|
scala_sbtserver_address
|
|
g:ale_scala_sbtserver_address
|
|
Type: |String|
|
|
Default: `'127.0.0.1:4273'`
|
|
|
|
By default the address is found by parsing `active.json`, however, reading a
|
|
file is a blocking operation which should be avoided in ale. The easy way
|
|
around this is to configure sbt to always connect to the same port, which
|
|
the instructions above describe.
|
|
|
|
*ale-options.scala_sbtserver_project_root*
|
|
*g:ale_scala_sbtserver_project_root*
|
|
*b:ale_scala_sbtserver_project_root*
|
|
scala_sbtserver_project_root
|
|
g:ale_scala_sbtserver_project_root
|
|
Type: |String|
|
|
Default: `''`
|
|
|
|
By default the project root is found by searching upwards for `build.sbt`.
|
|
If the project root is elsewhere, you can override the project root
|
|
directory.
|
|
|
|
|
|
===============================================================================
|
|
scalafmt *ale-scala-scalafmt*
|
|
|
|
If Nailgun is used, override `g:ale_scala_scalafmt_executable` like so: >
|
|
|
|
let g:ale_scala_scalafmt_executable = 'ng'
|
|
<
|
|
*ale-options.scala_scalafmt_executable*
|
|
*g:ale_scala_scalafmt_executable*
|
|
*b:ale_scala_scalafmt_executable*
|
|
scala_scalafmt_executable
|
|
g:ale_scala_scalafmt_executable
|
|
Type: |String|
|
|
Default: `'scalafmt'`
|
|
|
|
Override the invoked `scalafmt` binary. This is useful for running `scalafmt`
|
|
with Nailgun.
|
|
|
|
*ale-options.scala_scalafmt_options*
|
|
*g:ale_scala_scalafmt_options*
|
|
*b:ale_scala_scalafmt_options*
|
|
scala_scalafmt_options
|
|
g:ale_scala_scalafmt_options
|
|
Type: |String|
|
|
Default: `''`
|
|
|
|
A string containing additional options to pass to `'scalafmt'`, or
|
|
`'ng scalafmt'` if Nailgun is used.
|
|
|
|
|
|
===============================================================================
|
|
scalastyle *ale-scala-scalastyle*
|
|
|
|
`scalastyle` requires a configuration file for a project to run. When no
|
|
configuration file can be found, ALE will report a problem saying that a
|
|
configuration file is required at line 1.
|
|
|
|
To disable `scalastyle` globally, use |g:ale_linters| like so: >
|
|
|
|
let g:ale_linters = {'scala': ['scalac']} " Enable only scalac instead
|
|
<
|
|
See |g:ale_linters| for more information on disabling linters.
|
|
|
|
*ale-options.scala_scalastyle_config*
|
|
*g:ale_scala_scalastyle_config*
|
|
*b:ale_scala_scalastyle_config*
|
|
scala_scalastyle_config
|
|
g:ale_scala_scalastyle_config
|
|
Type: |String|
|
|
Default: `''`
|
|
|
|
A string containing the location of a global fallback configuration file.
|
|
|
|
By default, ALE will look for a configuration file named
|
|
`scalastyle_config.xml` or `scalastyle-config.xml` in the current file's
|
|
directory or parent directories.
|
|
|
|
*ale-options.scala_scalastyle_options*
|
|
*g:ale_scala_scalastyle_options*
|
|
*b:ale_scala_scalastyle_options*
|
|
scala_scalastyle_options
|
|
g:ale_scala_scalastyle_options
|
|
Type: |String|
|
|
Default: `''`
|
|
|
|
A string containing additional options to pass to scalastyle.
|
|
|
|
|
|
===============================================================================
|
|
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|