2017-07-13 22:41:01 +00:00
|
|
|
===============================================================================
|
|
|
|
ALE Scala Integration *ale-scala-options*
|
|
|
|
|
|
|
|
|
2019-05-27 12:06:57 +00:00
|
|
|
===============================================================================
|
|
|
|
metals *ale-scala-metals*
|
|
|
|
|
|
|
|
`metals` requires either an SBT project, a Mill project, or a running Bloop
|
|
|
|
server.
|
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_metals_executable *g:ale_scala_metals_executable*
|
|
|
|
*b:ale_scala_metals_executable*
|
|
|
|
Type: |String|
|
|
|
|
Default: `'metals-vim'`
|
|
|
|
|
|
|
|
Override the invoked `metals` binary.
|
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_metals_project_root *g:ale_scala_metals_project_root*
|
|
|
|
*b: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.
|
|
|
|
|
|
|
|
|
2018-08-27 05:12:56 +00:00
|
|
|
===============================================================================
|
|
|
|
sbtserver *ale-scala-sbtserver*
|
|
|
|
|
2018-09-02 00:59:36 +00:00
|
|
|
`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`
|
2018-08-27 05:12:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_sbtserver_address *g:ale_scala_sbtserver_address*
|
|
|
|
*b:ale_scala_sbtserver_address*
|
|
|
|
Type: |String|
|
2018-09-02 00:59:36 +00:00
|
|
|
Default: `'127.0.0.1:4273'`
|
2018-08-27 05:12:56 +00:00
|
|
|
|
2018-09-02 00:59:36 +00:00
|
|
|
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.
|
2018-08-27 05:12:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_sbtserver_project_root *g:ale_scala_sbtserver_project_root*
|
|
|
|
*b:ale_scala_sbtserver_project_root*
|
|
|
|
Type: |String|
|
|
|
|
Default: `''`
|
|
|
|
|
2018-09-02 00:59:36 +00:00
|
|
|
By default the project root is found by searching upwards for `build.sbt`.
|
2018-08-27 05:12:56 +00:00
|
|
|
If the project root is elsewhere, you can override the project root
|
|
|
|
directory.
|
|
|
|
|
|
|
|
|
2018-06-02 18:59:53 +00:00
|
|
|
===============================================================================
|
|
|
|
scalafmt *ale-scala-scalafmt*
|
|
|
|
|
|
|
|
If Nailgun is used, override `g:ale_scala_scalafmt_executable` like so: >
|
|
|
|
let g:ale_scala_scalafmt_executable = 'ng'
|
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_scalafmt_executable *g:ale_scala_scalafmt_executable*
|
|
|
|
*b:ale_scala_scalafmt_executable*
|
|
|
|
Type: |String|
|
|
|
|
Default: `'scalafmt'`
|
|
|
|
|
|
|
|
Override the invoked `scalafmt` binary. This is useful for running `scalafmt`
|
|
|
|
with Nailgun.
|
|
|
|
|
|
|
|
|
|
|
|
g:ale_scala_scalafmt_options *g:ale_scala_scalafmt_options*
|
|
|
|
*b:ale_scala_scalafmt_options*
|
|
|
|
Type: |String|
|
|
|
|
Default: `''`
|
|
|
|
|
|
|
|
A string containing additional options to pass to `'scalafmt'`, or
|
|
|
|
`'ng scalafmt'` if Nailgun is used.
|
|
|
|
|
|
|
|
|
2017-07-13 22:41:01 +00:00
|
|
|
===============================================================================
|
|
|
|
scalastyle *ale-scala-scalastyle*
|
|
|
|
|
2017-10-14 23:20:43 +00:00
|
|
|
`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.
|
|
|
|
|
|
|
|
|
2018-07-15 17:24:53 +00:00
|
|
|
g:ale_scala_scalastyle_config *g:ale_scala_scalastyle_config*
|
|
|
|
*b:ale_scala_scalastyle_config*
|
2017-07-13 22:41:01 +00:00
|
|
|
Type: |String|
|
|
|
|
Default: `''`
|
|
|
|
|
2017-10-14 22:47:47 +00:00
|
|
|
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.
|
|
|
|
|
2017-07-13 22:41:01 +00:00
|
|
|
|
|
|
|
g:ale_scala_scalastyle_options *g:ale_scala_scalastyle_options*
|
2018-07-15 17:24:53 +00:00
|
|
|
*b:ale_scala_scalastyle_options*
|
2017-07-13 22:41:01 +00:00
|
|
|
Type: |String|
|
|
|
|
Default: `''`
|
|
|
|
|
|
|
|
A string containing additional options to pass to scalastyle.
|
|
|
|
|
2017-10-14 22:47:47 +00:00
|
|
|
|
2017-07-13 22:41:01 +00:00
|
|
|
===============================================================================
|
|
|
|
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|