Files
ale/doc/ale-elixir.txt
pmonson711 962a932ed4 add support for expert (#5036)
* add support for expert

* Refactor elixir expert linter from feedback

- Simplify configuration by removing executable lookup logic
- Update documentation to reflect current configuration options
- Rename test file and update assertions for the new configuration

* default to expert for the lsp

The install instructions included something I missed. It includes a
global install, where the default executable is just `expert`. I'll
default to that and review if I should should add a configuration for a
global config.

---------

Co-authored-by: Your Name <pmonson711@nfiindustries.com>
2025-11-22 21:15:52 +09:00

167 lines
6.1 KiB
Plaintext

===============================================================================
ALE Elixir Integration *ale-elixir-options*
===============================================================================
mix *ale-elixir-mix*
The `mix` linter is disabled by default, as it can be too expensive to run.
See `:help g:ale_linters`
*ale-options.elixir_mix_options*
*g:ale_elixir_mix_options*
*b:ale_elixir_mix_options*
elixir_mix_options
g:ale_elixir_mix_options
Type: |String|
Default: `'mix'`
This variable can be changed to specify the mix executable.
===============================================================================
mix_format *ale-elixir-mix-format*
*ale-options.elixir_mix_format_options*
*g:ale_elixir_mix_format_options*
*b:ale_elixir_mix_format_options*
elixir_mix_format_options
g:ale_elixir_mix_format_options
Type: |String|
Default: `''`
This variable can be changed to specify the mix options passed to the
mix_format fixer
===============================================================================
dialyxir *ale-elixir-dialyxir*
Dialyzer, a DIscrepancy AnaLYZer for ERlang programs.
http://erlang.org/doc/man/dialyzer.html
It can be used with elixir through dialyxir
https://github.com/jeremyjh/dialyxir
Options for dialyzer are not configurable by ale, but they are instead
configured on your project's `mix.exs`.
See https://github.com/jeremyjh/dialyxir#with-explaining-stuff for more
information.
===============================================================================
elixir-ls *ale-elixir-elixir-ls*
Elixir Language Server (https://github.com/JakeBecker/elixir-ls)
*ale-options.elixir_elixir_ls_release*
*g:ale_elixir_elixir_ls_release*
*b:ale_elixir_elixir_ls_release*
elixir_elixir_ls_release
g:ale_elixir_elixir_ls_release
Type: |String|
Default: `'elixir-ls'`
Location of the elixir-ls release directory. This directory must contain
the language server scripts (language_server.sh and language_server.bat).
*ale-options.elixir_elixir_ls_config*
*g:ale_elixir_elixir_ls_config*
*b:ale_elixir_elixir_ls_config*
elixir_elixir_ls_config
g:ale_elixir_elixir_ls_config
Type: |Dictionary|
Default: `{}`
Dictionary containing configuration settings that will be passed to the
language server. For example, to disable Dialyzer: >
let g:ale_elixir_elixir_ls_config = {
\ 'elixirLS': {
\ 'dialyzerEnabled': v:false,
\ },
\}
<
Consult the ElixirLS documentation for more information about settings.
===============================================================================
credo *ale-elixir-credo*
Credo (https://github.com/rrrene/credo)
*ale-options.elixir_credo_strict*
*g:ale_elixir_credo_strict*
*b:ale_elixir_credo_strict*
elixir_credo_strict
g:ale_elixir_credo_strict
Type: |Integer|
Default: `0`
Tells credo to run in strict mode or suggest mode. Set variable to 1 to
enable --strict mode.
*ale-options.elixir_credo_config_file*
*g:ale_elixir_credo_config_file*
*b:ale_elixir_credo_config_file*
elixir_credo_config_file
g:ale_elixir_credo_config_file
Type: |String|
Default: `''`
Tells credo to use a custom configuration file.
===============================================================================
cspell *ale-elixir-cspell*
See |ale-cspell-options|
===============================================================================
lexical *ale-elixir-lexical*
Lexical (https://github.com/lexical-lsp/lexical)
*ale-options.elixir_lexical_release*
*g:ale_elixir_lexical_release*
*b:ale_elixir_lexical_release*
elixir_lexical_release
g:ale_elixir_lexical_release
Type: |String|
Default: `'lexical'`
Location of the lexical release directory. This directory must contain
the language server scripts (start_lexical.sh and start_lexical.bat).
For example, set release to: `/home/projects/lexical/_build/dev/rel/lexical`
There are currently no configuration options for lexical.
===============================================================================
expert *ale-elixir-expert*
Expert (https://github.com/elixir-lang/expert)
*ale-options.elixir_expert_executable*
*g:ale_elixir_expert_executable*
*b:ale_elixir_expert_executable*
elixir_expert_executable
g:ale_elixir_expert_executable
Type: |String|
Default: `/usr/bin/elixir-expert`
Location of the expert executable.
For example, set release to:
`/home/projects/expert/apps/expert/burrito_out/expert_linux_amd64`
There are currently no configuration options for expert.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: