Files
ale/doc/ale-scala.txt
w0rp 400857d758 Implement Lua ALE setup & overhaul documentation
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.
2025-03-27 12:40:11 +00:00

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: