1
0
mirror of https://github.com/amix/vimrc synced 2025-07-12 14:15:00 +08:00

Update ui_glue.vim, lightline.txt, and 333 more files...

This commit is contained in:
geezuslucifer@gmail.com
2021-06-30 11:54:34 -05:00
parent 43c7efba8d
commit 1cca3b1df2
335 changed files with 8451 additions and 2020 deletions

View File

@ -32,5 +32,35 @@ g:ale_ada_gnatpp_options *g:ale_ada_gnatpp_options*
This variable can be set to pass extra options to the gnatpp fixer.
===============================================================================
ada-language-server *ale-ada-language-server*
g:ale_ada_adals_executable *g:ale_ada_adals_executable*
*b:ale_ada_adals_executable*
Type: |String|
Default: `'ada_language_server'`
This variable can be changed to use a different executable for Ada Language
Server.
g:ale_ada_adals_project *g:ale_ada_adals_project*
*b:ale_ada_adals_project*
Type: |String|
Default: `'default.gpr'`
This variable can be changed to use a different GPR file for
Ada Language Server.
g:ale_ada_adals_encoding *g:ale_ada_adals_encoding*
*b:ale_ada_adals_encoding*
Type: |String|
Default: `'utf-8'`
This variable can be changed to use a different file encoding for
Ada Language Server.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,30 @@
===============================================================================
ALE APKBUILD Integration *ale-apkbuild-options*
===============================================================================
apkbuild-lint *ale-apkbuild-apkbuild-lint*
g:ale_apkbuild_apkbuild_lint_executable
*g:ale_apkbuild_apkbuild_lint_executable*
*b:ale_apkbuild_apkbuild_lint_executable*
Type: |String|
Default: `'apkbuild-lint'`
This variable can be set to change the path to apkbuild-lint
===============================================================================
secfixes-check *ale-apkbuild-secfixes-check*
g:ale_apkbuild_secfixes_check_executable
*g:ale_apkbuild_secfixes_check_executable*
*b:ale_apkbuild_secfixes_check_executable*
Type: |String|
Default: `'secfixes-check'`
This variable can be set to change the path to secfixes-check
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,28 @@
===============================================================================
ALE Bazel Integration *ale-bazel-options*
===============================================================================
buildifier *ale-bazel-buildifier*
g:ale_bazel_buildifier_executable *g:ale_bazel_buildifier_executable*
*b:ale_bazel_buildifier_executable*
Type: |String|
Default: `'buildifier'`
See |ale-integrations-local-executables|
g:ale_bazel_buildifier_options *g:ale_bazel_buildifier_options*
*b:ale_bazel_buildifier_options*
Type: |String|
Default: `''`
This variable can be set to pass extra options to buildifier.
g:ale_bazel_buildifier_use_global *g:ale_bazel_buildifier_use_global*
*b:ale_bazel_buildifier_use_global*
Type: |Number|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|

View File

@ -202,7 +202,45 @@ g:ale_c_clangformat_options *g:ale_c_clangformat_options*
Type: |String|
Default: `''`
This variable can be change to modify flags given to clang-format.
This variable can be changed to modify flags given to clang-format.
g:ale_c_clangformat_style_option *g:ale_c_clangformat_style_option*
*b:ale_c_clangformat_style_option*
Type: |String|
Default: `''`
This variable can be changed to modify only the style flag given to
clang-format. The contents of the variable are passed directly to the -style
flag of clang-format.
Example: >
{
\ BasedOnStyle: Microsoft,
\ ColumnLimit: 80,
\ AllowShortBlocksOnASingleLine: Always,
\ AllowShortFunctionsOnASingleLine: Inline,
\ }
<
If you set this variable, ensure you don't modify -style in
|g:ale_c_clangformat_options|, as this will cause clang-format to error.
g:ale_c_clangformat_use_local_file *g:ale_c_clangformat_use_local_file*
*b:ale_c_clangformat_use_local_file*
Type: |Number|
Default: `0`
This variable can be changed to modify whether to use a local .clang-format
file. If the file is found, the flag '-style=file' is passed to clang-format
and any options configured via |g:ale_c_clangformat_style_option| are not
passed.
If this option is enabled but no .clang-format file is found, default back to
|g:ale_c_clangformat_style_option|, if it set.
If you set this variable, ensure you don't modify -style in
|g:ale_c_clangformat_options|, as this will cause clang-format to error.
===============================================================================

View File

@ -21,6 +21,24 @@ g:ale_cuda_nvcc_options *g:ale_cuda_nvcc_options*
This variable can be changed to modify flags given to nvcc.
===============================================================================
clangd *ale-cuda-clangd*
g:ale_cuda_clangd_executable *g:ale_cuda_clangd_executable*
*b:ale_cuda_clangd_executable*
Type: |String|
Default: `'clangd'`
This variable can be changed to use a different executable for clangd.
g:ale_cuda_clangd_options *g:ale_cuda_clangd_options*
*b:ale_cuda_clangd_options*
Type: |String|
Default: `''`
This variable can be changed to modify flags given to clangd.
===============================================================================
clang-format *ale-cuda-clangformat*

View File

@ -0,0 +1,16 @@
===============================================================================
ALE Dafny Integration *ale-dafny-options*
===============================================================================
dafny *ale-dafny-dafny*
g:ale_dafny_dafny_timelimit *g:ale_dafny_dafny_timelimit*
*b:ale_dafny_dafny_timelimit*
Type: |Number|
Default: `10`
This variable sets the `/timeLimit` used for dafny.
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,31 @@
ALE Dart Integration *ale-dart-options*
===============================================================================
analysis_server *ale-dart-analysis_server*
Installation
-------------------------------------------------------------------------------
Install Dart via whatever means. `analysis_server` will be included in the SDK.
In case that `dart` is not in your path, try to set the executable option to
its absolute path. : >
" Set the executable path for dart to the absolute path to it.
let g:ale_dart_analysis_server_executable = '/usr/local/bin/dart'
<
Options
-------------------------------------------------------------------------------
g:ale_dart_analysis_server_executable *g:ale_dart_analysis_server_executable*
*b:ale_dart_analysis_server_executable*
Type: |String|
Default: `'dart'`
This variable can be set to change the path of dart.
===============================================================================
dartanalyzer *ale-dart-dartanalyzer*

View File

@ -0,0 +1,21 @@
===============================================================================
ALE desktop Integration *ale-desktop-options*
===============================================================================
desktop-file-validate *ale-desktop-desktop-file-validate*
ALE supports checking .desktop files with `desktop-file-validate.`
g:ale_desktop_desktop_file_validate_options
*g:ale_desktop_desktop_file_validate_options*
*b:ale_desktop_desktop_file_validate_options*
Type: |String|
Default: `''`
This variable can be changed to set options for `desktop-file-validate`,
such as `'--warn-kde'`.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -148,13 +148,14 @@ Apply the following rules when writing Bash scripts.
===============================================================================
4. Testing ALE *ale-development-tests* *ale-dev-tests* *ale-tests*
ALE is tested with a suite of tests executed in Travis CI and AppVeyor. ALE
runs tests with the following versions of Vim in the following environments.
ALE is tested with a suite of tests executed via GitHub Actions and AppVeyor.
ALE runs tests with the following versions of Vim in the following
environments.
1. Vim 8.0.0027 on Linux via Travis CI.
2. Vim 8.1.0519 on Linux via Travis CI.
3. NeoVim 0.2.0 on Linux via Travis CI.
4. NeoVim 0.3.5 on Linux via Travis CI.
1. Vim 8.0.0027 on Linux via GitHub Actions.
2. Vim 8.2.2401 on Linux via GitHub Actions.
3. NeoVim 0.2.0 on Linux via GitHub Actions.
4. NeoVim 0.4.4 on Linux via GitHub Actions.
5. Vim 8 (stable builds) on Windows via AppVeyor.
If you are developing ALE code on Linux, Mac OSX, or BSD, you can run ALEs
@ -180,19 +181,24 @@ Generally write tests for any changes you make. The following types of tests
are recommended for the following types of code.
* New/edited error handler callbacks -> Write tests in `test/handler`
* New/edited command callbacks -> Write tests in `test/command_callback`
* New/edited linter definition -> Write tests in `test/linter`
* New/edited fixer functions -> Write tests in `test/fixers`
Look at existing tests in the codebase for examples of how to write tests.
Refer to the Vader documentation for general information on how to write Vader
tests: https://github.com/junegunn/vader.vim
If you need to add any supporting files for tests, such as empty files present
to test searching upwards through paths for configuration files, they can be
added to the `test/test-files` directory.
See |ale-development-linter-tests| for more information on how to write linter
tests.
When you add new linters or fixers, make sure to add them into the tables in
supported-tools.md and |ale-supported-languages-and-tools.txt|. If you forget to
keep them both in sync, you should see an error like the following in Travis CI.
keep them both in sync, you should see an error like the following in the
builds run for GitHub Actions.
>
========================================
diff supported-tools.md and doc/ale-supported-languages-and-tools.txt tables
@ -272,8 +278,8 @@ be written like so. >
\ '1:Something went wrong',
\ ]
<
Tests for what ALE runs should go in the `test/command_callback` directory,
and should be written like so. >
Tests for what ALE runs should go in the `test/linter` directory, and should
be written like so. >
Before:
" Load the linter and set up a series of commands, reset linter variables,
@ -309,6 +315,7 @@ The full list of commands that will be temporarily defined for linter tests
given the above setup are as follows.
`GivenCommandOutput [...]` - Define output for ale#command#Run.
`AssertLinterCwd cwd` - Check the `cwd` for the linter.
`AssertLinter executable, command` - Check the executable and command.
`AssertLinterNotExecuted` - Check that linters will not be executed.
`AssertLSPLanguage language` - Check the language given to an LSP server.
@ -355,6 +362,7 @@ The full list of commands that will be temporarily defined for fixer tests
given the above setup are as follows.
`GivenCommandOutput [...]` - Define output for ale#command#Run.
`AssertFixerCwd cwd` - Check the `cwd` for the fixer.
`AssertFixer results` - Check the fixer results
`AssertFixerNotExecuted` - Check that fixers will not be executed.

View File

@ -0,0 +1,52 @@
===============================================================================
ALE Dhall Integration *ale-dhall-options*
g:ale_dhall_executable *g:ale_dhall_executable*
*b:ale_dhall_executable*
Type: |String|
Default: `'dhall'`
g:ale_dhall_options g:ale_dhall_options
b:ale_dhall_options
Type: |String|
Default: `''`
This variable can be set to pass additional options to the 'dhall` executable.
This is shared with `dhall-freeze` and `dhall-lint`.
>
let g:dhall_options = '--ascii'
<
===============================================================================
dhall-format *ale-dhall-format*
Dhall
(https://dhall-lang.org/)
===============================================================================
dhall-freeze *ale-dhall-freeze*
Dhall
(https://dhall-lang.org/)
g:ale_dhall_freeze_options g:ale_dhall_freeze_options
b:ale_dhall_freeze_options
Type: |String|
Default: `''`
This variable can be set to pass additional options to the 'dhall freeze`
executable.
>
let g:dhall_freeze_options = '--all'
<
===============================================================================
dhall-lint *ale-dhall-lint*
Dhall
(https://dhall-lang.org/)
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -85,5 +85,12 @@ g:ale_elixir_credo_strict *g:ale_elixir_credo_strict*
Tells credo to run in strict mode or suggest mode. Set variable to 1 to
enable --strict mode.
g:ale_elixir_credo_config_file g:ale_elixir_credo_config_file
Type: String
Default: ''
Tells credo to use a custom configuration file.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -13,6 +13,14 @@ g:ale_erlang_dialyzer_executable *g:ale_erlang_dialyzer_executable*
This variable can be changed to specify the dialyzer executable.
g:ale_erlang_dialyzer_options *g:ale_erlang_dialyzer_options*
*b:ale_erlang_dialyzer_options*
Type: |String|
Default: `'-Wunmatched_returns -Werror_handling -Wrace_conditions -Wunderspec'`
This variable can be changed to specify the options to pass to the dialyzer
executable.
g:ale_erlang_dialyzer_plt_file *g:ale_erlang_dialyzer_plt_file*
*b:ale_erlang_dialyzer_plt_file*
Type: |String|
@ -46,6 +54,14 @@ g:ale_erlang_elvis_executable *g:ale_erlang_elvis_executable*
-------------------------------------------------------------------------------
erlc *ale-erlang-erlc*
g:ale_erlang_erlc_executable *g:ale_erlang_erlc_executable*
*b:ale_erlang_erlc_executable*
Type: |String|
Default: `'erlc'`
This variable can be changed to specify the erlc executable.
g:ale_erlang_erlc_options *g:ale_erlang_erlc_options*
*b:ale_erlang_erlc_options*
Type: |String|
@ -55,6 +71,26 @@ g:ale_erlang_erlc_options *g:ale_erlang_erlc_options*
or `-pa`.
-------------------------------------------------------------------------------
erlfmt *ale-erlang-erlfmt*
g:ale_erlang_erlfmt_executable *g:ale_erlang_erlfmt_executable*
*b:ale_erlang_erlfmt_executable*
Type: |String|
Default: `'erlfmt'`
This variable can be changed to specify the erlfmt executable.
g:ale_erlang_erlfmt_options *g:ale_erlang_erlfmt_options*
*b:ale_erlang_erlfmt_options*
Type: |String|
Default: `''`
This variable controls additional parameters passed to `erlfmt`, such as
`--insert-pragma` or `--print-width`.
-------------------------------------------------------------------------------
syntaxerl *ale-erlang-syntaxerl*

View File

@ -10,5 +10,22 @@ displaying errors if an error message is not found.
If ALE is not showing any errors but your file does not run as expected, run
`fish -n <file.fish>` from the command line.
===============================================================================
fish_indent *ale-fish-fish_indent*
g:ale_fish_fish_indent_executable *g:ale_fish_fish_indent_executable*
*b:ale_fish_fish_indent_executable*
Type: |String|
Default: `'fish_indent'`
This variable can be changed to use a different executable for fish_indent.
g:ale_fish_fish_indent_options *g:ale_fish_fish_indent_options*
*b:ale_fish_fish_indent_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to fish_indent.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -20,8 +20,8 @@ the benefit of running a number of linters, more than ALE would by default,
while ensuring it doesn't run any linters known to be slow or resource
intensive.
g:ale_go_go_executable *g:ale_go_go_options*
*b:ale_go_go_options*
g:ale_go_go_executable *g:ale_go_go_executable*
*b:ale_go_go_executable*
Type: |String|
Default: `'go'`
@ -194,12 +194,30 @@ g:ale_go_gometalinter_lint_package *g:ale_go_gometalinter_lint_package*
===============================================================================
gopls *ale-go-gopls*
gopls is the official Go language server, and is enabled for use with ALE by
default.
To install the latest stable version of `gopls` to your `$GOPATH`, try the
following command: >
GO111MODULE=on go get golang.org/x/tools/gopls@latest
<
If `$GOPATH` is readable by ALE, it should probably work without you having to
do anything else. See the `gopls` README file for more information:
https://github.com/golang/tools/blob/master/gopls/README.md
g:ale_go_gopls_executable *g:ale_go_gopls_executable*
*b:ale_go_gopls_executable*
Type: |String|
Default: `'gopls'`
Location of the gopls binary file.
See |ale-integrations-local-executables|
ALE will search for `gopls` in locally installed directories first by
default, and fall back on a globally installed `gopls` if it can't be found
otherwise.
g:ale_go_gopls_options *g:ale_go_gopls_options*
@ -207,6 +225,36 @@ g:ale_go_gopls_options *g:ale_go_gopls_options*
Type: |String|
Default: `''`
Command-line options passed to the gopls executable. See `gopls -h`.
g:ale_go_gopls_init_options *g:ale_go_gopls_init_options*
*b:ale_go_gopls_init_options*
Type: |Dictionary|
Default: `{}`
LSP initialization options passed to gopls. This can be used to configure
the behaviour of gopls.
Example: >
let g:ale_go_gopls_init_options = {'ui.diagnostic.analyses': {
\ 'composites': v:false,
\ 'unusedparams': v:true,
\ 'unusedresult': v:true,
\ }}
<
For a full list of supported analyzers, see:
https://github.com/golang/tools/blob/master/gopls/doc/analyzers.md
g:ale_go_gopls_use_global *g:ale_go_gopls_use_global*
*b:ale_go_gopls_use_global*
Type: |String|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
govet *ale-go-govet*
@ -241,6 +289,18 @@ g:ale_go_revive_options *g:ale_go_revive_options*
===============================================================================
staticcheck *ale-go-staticcheck*
g:ale_go_staticcheck_executable *g:ale_go_staticcheck_executable*
*b:ale_go_staticcheck_executable*
Type: |String|
Default: `'staticcheck'`
See |ale-integrations-local-executables|
ALE will search for `staticcheck` in locally installed directories first by
default, and fall back on a globally installed `staticcheck` if it can't be
found otherwise.
g:ale_go_staticcheck_options *g:ale_go_staticcheck_options*
*b:ale_go_staticcheck_options*
Type: |String|
@ -259,5 +319,13 @@ g:ale_go_staticcheck_lint_package *g:ale_go_staticcheck_lint_package*
current file.
g:ale_go_staticcheck_use_global *g:ale_go_staticcheck_use_global*
*b:ale_go_staticcheck_use_global*
Type: |String|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -124,6 +124,18 @@ g:ale_haskell_hlint_options g:ale_haskell_hlint_options
executable.
===============================================================================
hls *ale-haskell-hls*
g:ale_haskell_hls_executable *g:ale_haskell_hls_executable*
*b:ale_haskell_his_executable*
Type: |String|
Default: `'haskell-language-server-wrapper'`
This variable can be changed to use a different executable for the haskell
language server.
===============================================================================
stack-build *ale-haskell-stack-build*

View File

@ -2,13 +2,41 @@
ALE HTML Integration *ale-html-options*
===============================================================================
angular *ale-html-angular*
ALE supports language server features for Angular. You can install it via `npm`: >
$ npm install --save-dev @angular/language-server
<
Angular 11 and up are supported.
g:ale_html_angular_executable *g:ale_html_angular_executable*
*b:ale_html_angular_executable*
Type: |String|
Default: `'ngserver'`
See |ale-integrations-local-executables|
g:ale_html_angular_use_global *g:ale_html_angular_use_global*
*b:ale_html_angular_use_global*
Type: |String|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
fecs *ale-html-fecs*
`fecs` options for HTMl is the same as the options for JavaScript,
and both of them reads `./.fecsrc` as the default configuration file.
`fecs` options for HTML are the same as the options for JavaScript, and both
of them read `./.fecsrc` as the default configuration file.
See: |ale-javascript-fecs|.
===============================================================================
html-beautify *ale-html-beautify*
@ -47,6 +75,40 @@ g:ale_html_htmlhint_use_global *g:ale_html_htmlhint_use_global*
See |ale-integrations-local-executables|
===============================================================================
prettier *ale-html-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
stylelint *ale-html-stylelint*
g:ale_html_stylelint_executable *g:ale_html_stylelint_executable*
*b:ale_html_stylelint_executable*
Type: |String|
Default: `'stylelint'`
See |ale-integrations-local-executables|
g:ale_html_stylelint_options *g:ale_html_stylelint_options*
*b:ale_html_stylelint_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to stylelint.
g:ale_html_stylelint_use_global *g:ale_html_stylelint_use_global*
*b:ale_html_stylelint_use_global*
Type: |String|
Default: `0`
See |ale-integrations-local-executables|
===============================================================================
tidy *ale-html-tidy*
@ -97,39 +159,6 @@ g:ale_html_tidy_use_global *g:html_tidy_use_global*
See |ale-integrations-local-executables|
===============================================================================
prettier *ale-html-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
stylelint *ale-html-stylelint*
g:ale_html_stylelint_executable *g:ale_html_stylelint_executable*
*b:ale_html_stylelint_executable*
Type: |String|
Default: `'stylelint'`
See |ale-integrations-local-executables|
g:ale_html_stylelint_options *g:ale_html_stylelint_options*
*b:ale_html_stylelint_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to stylelint.
g:ale_html_stylelint_use_global *g:ale_html_stylelint_use_global*
*b:ale_html_stylelint_use_global*
Type: |String|
Default: `0`
See |ale-integrations-local-executables|
===============================================================================
write-good *ale-html-write-good*

View File

@ -0,0 +1,22 @@
===============================================================================
ALE Inko Integration *ale-inko-options*
*ale-integration-inko*
===============================================================================
Integration Information
Currently, the only supported linter for Inko is the Inko compiler itself.
===============================================================================
inko *ale-inko-inko*
g:ale_inko_inko_executable *g:ale_inko_inko_executable*
*b:ale_inko_inko_executable*
Type: |String|
Default: `'inko'`
This variable can be modified to change the executable path for `inko`.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -101,5 +101,37 @@ prettier *ale-json-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
spectral *ale-json-spectral*
Website: https://github.com/stoplightio/spectral
Installation
-------------------------------------------------------------------------------
Install spectral either globally or locally: >
npm install @stoplight/spectral -g # global
npm install @stoplight/spectral # local
<
Options
-------------------------------------------------------------------------------
g:ale_json_spectral_executable *g:ale_json_spectral_executable*
*b:ale_json_spectral_executable*
Type: |String|
Default: `'spectral'`
This variable can be set to change the path to spectral.
g:ale_json_spectral_use_global *g:ale_json_spectral_use_global*
*b:ale_json_spectral_use_global*
Type: |String|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,24 @@
ALE Nix Integration *ale-nix-options*
===============================================================================
nixfmt *ale-nix-nixfmt*
g:ale_nix_nixfmt_executable *g:ale_nix_nixfmt_executable*
*b:ale_nix_nixfmt_executable*
Type: String
Default: 'nixfmt'
This variable sets the executable used for nixfmt.
g:ale_nix_nixfmt_options *g:ale_nix_nixfmt_options*
*b:ale_nix_nixfmt_options*
Type: String
Default: ''
This variable can be set to pass additional options to the nixfmt fixer.
===============================================================================
nixpkgs-fmt *ale-nix-nixpkgs-fmt*

View File

@ -10,6 +10,21 @@ merlin *ale-ocaml-merlin*
detailed instructions
(https://github.com/the-lambda-church/merlin/wiki/vim-from-scratch).
===============================================================================
ocamllsp *ale-ocaml-ocamllsp*
The `ocaml-lsp-server` is the official OCaml implementation of the Language
Server Protocol. See the installation instructions:
https://github.com/ocaml/ocaml-lsp#installation
g:ale_ocaml_ocamllsp_use_opam *g:ale_ocaml_ocamllsp_use_opam*
*b:ale_ocaml_ocamllsp_use_opam*
Type: |Number|
Default: `get(g:, 'ale_ocaml_ocamllsp_use_opam', 1)`
This variable can be set to change whether or not opam is used to execute
the language server.
===============================================================================
ols *ale-ocaml-ols*

View File

@ -0,0 +1,74 @@
===============================================================================
ALE OpenApi Integration *ale-openapi-options*
===============================================================================
ibm_validator *ale-openapi-ibm-validator*
Website: https://github.com/IBM/openapi-validator
Installation
-------------------------------------------------------------------------------
Install ibm-openapi-validator either globally or locally: >
npm install ibm-openapi-validator -g # global
npm install ibm-openapi-validator # local
<
Configuration
-------------------------------------------------------------------------------
OpenAPI files can be written in YAML or JSON so in order for ALE plugins to
work with these files we must set the buffer |filetype| to either |openapi.yaml|
or |openapi.json| respectively. This causes ALE to lint the file with linters
configured for openapi and yaml files or openapi and json files respectively.
For example setting filetype to |openapi.yaml| on a buffer and the following
|g:ale_linters| configuration will enable linting of openapi files using both
|ibm_validator| and |yamlint|:
>
let g:ale_linters = {
\ 'yaml': ['yamllint'],
\ 'openapi': ['ibm_validator']
\}
<
The following plugin will detect openapi files automatically and set the
filetype to |openapi.yaml| or |openapi.json|:
https://github.com/hsanson/vim-openapi
Options
-------------------------------------------------------------------------------
g:ale_openapi_ibm_validator_executable *g:ale_openapi_ibm_validator_executable*
*b:ale_openapi_ibm_validator_executable*
Type: |String|
Default: `'lint-openapi'`
This variable can be set to change the path to lint-openapi.
g:ale_openapi_ibm_validator_options *g:ale_openapi_ibm_validator_options*
*b:ale_openapi_ibm_validator_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to lint-openapi.
===============================================================================
prettier *ale-openapi-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
yamllint *ale-openapi-yamllint*
See |ale-yaml-yamllint| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,24 @@
===============================================================================
ALE Pascal Integration *ale-pascal-options*
===============================================================================
ptop *ale-pascal-ptop*
g:ale_pascal_ptop_executable *g:ale_pascal_ptop_executable*
*b:ale_pascal_ptop_executable*
Type: |String|
Default: `'ptop'`
This variable can be changed to specify the ptop executable.
g:ale_pascal_ptop_options *g:ale_pascal_ptop_options*
*b:ale_pascal_ptop_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to the ptop fixer.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -5,14 +5,15 @@ ALE Proto Integration *ale-proto-options
===============================================================================
Integration Information
Linting of `.proto` files requires that the `protoc` binary is installed in the
system path and that the `protoc-gen-lint` plugin for the `protoc` binary is also
installed.
To enable `.proto` file linting, update |g:ale_linters| as appropriate:
>
" Enable linter for .proto files
let g:ale_linters = {'proto': ['protoc-gen-lint']}
let g:ale_linters = {'proto': ['protoc-gen-lint', 'protolint']}
To enable `.proto` file fixing, update |g:ale_fixers| as appropriate:
>
" Enable linter for .proto files
let b:ale_fixers = {'proto': ['protolint']}
<
===============================================================================
protoc-gen-lint *ale-proto-protoc-gen-lint*
@ -29,5 +30,31 @@ g:ale_proto_protoc_gen_lint_options *g:ale_proto_protoc_gen_lint_options*
directory of the linted file is always passed as an include path with '-I'
before any user-supplied options.
===============================================================================
protolint *ale-proto-protolint*
The linter is a pluggable tool that doesn't depend on the `protoc` binary.
This supports both linting and fixing.
Make sure the binary is available in the system path, or set
ale_proto_protolint_executable.
Note that the binary with v0.22.0 or above is supported.
g:ale_proto_protolint_executable *g:ale_proto_protolint_executable*
Type: |String|
Default: 'protolint'
This variable can be changed to modify the executable used for protolint.
g:ale_proto_protolint_config *g:ale_proto_protolint_config*
Type: |String|
Default: `''`
A path to a protolint configuration file.
The path to the configuration file can be an absolute path or a relative
path. ALE will search for the relative path in parent directories.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -36,6 +36,8 @@ ALE will look for configuration files with the following filenames. >
.pylintrc
Pipfile
Pipfile.lock
poetry.lock
pyproject.toml
<
The first directory containing any of the files named above will be used.
@ -280,6 +282,15 @@ g:ale_python_isort_use_global *g:ale_python_isort_use_global*
See |ale-integrations-local-executables|
g:ale_python_isort_auto_pipenv *g:ale_python_isort_auto_pipenv*
*b:ale_python_isort_auto_pipenv*
Type: |Number|
Default: `0`
Detect whether the file is inside a pipenv, and set the executable to `pipenv`
if true. This is overridden by a manually-set executable.
===============================================================================
mypy *ale-python-mypy*
@ -677,6 +688,25 @@ g:ale_python_pyls_config *g:ale_python_pyls_config*
\ }
<
g:ale_python_pyls_options *g:ale_python_pyls_options*
*b:ale_python_pyls_options*
Type: |String|
Default: `''`
This variable can be changed to add command-line arguments to the pyls
invocation. Note that this is not the same thing as ale_python_pyls_config,
which allows configuration of how pyls functions; this is intended to
provide flexibility in how the pyls command is invoked.
For example, if you had installed `pyls` but your `pyls` executable was not
on your `PATH` for some reason, an alternative way to run the pyls server
would be:
let g:ale_python_pyls_executable = 'python3'
let g:ale_python_pyls_options = '-m pyls'
An example stragety for installing `pyls`:
`python3 -m pip install --user pyls`
===============================================================================
pyre *ale-python-pyre*

View File

@ -41,6 +41,11 @@ g:ale_ruby_debride_options *g:ale_ruby_debride_options*
This variable can be changed to modify flags given to debride.
===============================================================================
prettier *ale-ruby-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
rails_best_practices *ale-ruby-rails_best_practices*
@ -177,6 +182,16 @@ g:ale_ruby_sorbet_options *g:ale_ruby_sorbet_options*
This variable can be changed to modify flags given to sorbet.
g:ale_ruby_sorbet_enable_watchman *g:ale_ruby_sorbet_enable_watchman*
*b:ale_ruby_sorbet_enable_watchman*
Type: |Number|
Default: `0`
Whether or not to use watchman to let the LSP server to know about changes
to files from outside of vim. Defaults to disable watchman because it
requires watchman to be installed separately from sorbet.
===============================================================================
standardrb *ale-ruby-standardrb*

View File

@ -0,0 +1,43 @@
===============================================================================
ALE SALT Integration *ale-salt-options*
===============================================================================
salt-lint *ale-salt-salt-lint*
Website: https://github.com/warpnet/salt-lint
Installation
-------------------------------------------------------------------------------
Install salt-lint in your a virtualenv directory, locally, or globally: >
pip install salt-lint # After activating virtualenv
pip install --user salt-lint # Install to ~/.local/bin
sudo pip install salt-lint # Install globally
See |g:ale_virtualenv_dir_names| for configuring how ALE searches for
virtualenv directories.
Options
-------------------------------------------------------------------------------
g:ale_salt_salt-lint_executable *g:ale_salt_salt_lint_executable*
*b:ale_salt_salt_lint_executable*
Type: |String|
Default: `'salt-lint'`
This variable can be set to change the path to salt-lint.
g:ale_salt_salt-lint_options *g:ale_salt_salt-lint_options*
*b:ale_salt_salt-lint_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to salt-lint.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -13,12 +13,16 @@ Notes:
`!!` These linters check only files on disk. See |ale-lint-file-linters|
* Ada
* `ada_language_server`
* `gcc`
* `gnatpp`
* Ansible
* `ansible-lint`
* API Blueprint
* `drafter`
* APKBUILD
* `apkbuild-lint`
* `secfixes-check`
* AsciiDoc
* `alex`!!
* `languagetool`!!
@ -39,6 +43,8 @@ Notes:
* `shfmt`
* Bats
* `shellcheck`
* Bazel
* `buildifier`
* BibTeX
* `bibclean`
* Bourne Shell
@ -49,8 +55,8 @@ Notes:
* `astyle`
* `ccls`
* `clang` (`cc`)
* `clangd`
* `clang-format`
* `clangd`
* `clangtidy`!!
* `cppcheck`
* `cpplint`!!
@ -67,9 +73,9 @@ Notes:
* `astyle`
* `ccls`
* `clang` (`cc`)
* `clang-format`
* `clangcheck`!!
* `clangd`
* `clang-format`
* `clangtidy`!!
* `clazy`!!
* `cppcheck`
@ -103,6 +109,7 @@ Notes:
* Cucumber
* `cucumber`
* CUDA
* `clangd`
* `nvcc`!!
* Cypher
* `cypher-lint`
@ -116,11 +123,16 @@ Notes:
* Dafny
* `dafny`!!
* Dart
* `analysis_server`
* `dartanalyzer`!!
* `dartfmt`!!
* `language_server`
* desktop
* `desktop-file-validate`
* Dhall
* `dhall-format`
* `dhall-freeze`
* `dhall-lint`
* Dockerfile
* `dockerfile_lint`
* `hadolint`
@ -140,11 +152,14 @@ Notes:
* `erubis`
* `ruumba`
* Erlang
* `SyntaxErl`
* `dialyzer`
* `elvis`!!
* `erlc`
* `SyntaxErl`
* `erlfmt`
* Fish
* `fish` (-n flag)
* `fish_indent`
* Fortran
* `gcc`
* `language_server`
@ -155,22 +170,22 @@ Notes:
* Git Commit Messages
* `gitlint`
* GLSL
* glslang
* `glslang`
* `glslls`
* Go
* `bingo`
* `go build`!!
* `go mod`!!
* `go vet`!!
* `gofmt`
* `goimports`
* `golangci-lint`!!
* `golangserver`
* `golint`
* `gometalinter`!!
* `go mod`!!
* `gopls`
* `gosimple`!!
* `gotype`!!
* `go vet`!!
* `revive`!!
* `staticcheck`!!
* GraphQL
@ -196,6 +211,7 @@ Notes:
* `hie`
* `hindent`
* `hlint`
* `hls`
* `ormolu`
* `stack-build`!!
* `stack-ghc`
@ -204,9 +220,10 @@ Notes:
* `terraform-fmt`
* HTML
* `alex`!!
* `angular`
* `fecs`
* `html-beautify`
* `HTMLHint`
* `htmlhint`
* `prettier`
* `proselint`
* `tidy`
@ -215,15 +232,17 @@ Notes:
* `idris`
* Ink
* `ink-language-server`
* Inko
* `inko` !!
* ISPC
* `ispc`!!
* Java
* `PMD`
* `checkstyle`
* `eclipselsp`
* `google-java-format`
* `javac`
* `javalsp`
* `PMD`
* `uncrustify`
* JavaScript
* `eslint`
@ -242,6 +261,7 @@ Notes:
* `jq`
* `jsonlint`
* `prettier`
* `spectral`
* Julia
* `languageserver`
* Kotlin
@ -299,7 +319,9 @@ Notes:
* `nimpretty`
* nix
* `nix-instantiate`
* `nixfmt`
* `nixpkgs-fmt`
* `rnix-lsp`
* nroff
* `alex`!!
* `proselint`
@ -316,8 +338,15 @@ Notes:
* OCaml
* `merlin` (see |ale-ocaml-merlin|)
* `ocamlformat`
* `ocamllsp`
* `ocp-indent`
* `ols`
* OpenApi
* `ibm_validator`
* `prettier`
* `yamllint`
* Pascal
* `ptop`
* Pawn
* `uncrustify`
* Perl
@ -330,10 +359,10 @@ Notes:
* `intelephense`
* `langserver`
* `phan`
* `php -l`
* `php-cs-fixer`
* `phpcbf`
* `phpcs`
* `php-cs-fixer`
* `php -l`
* `phpmd`
* `phpstan`
* `psalm`!!
@ -356,6 +385,7 @@ Notes:
* `swipl`
* proto
* `protoc-gen-lint`
* `protolint`
* Pug
* `pug-lint`
* Puppet
@ -397,6 +427,8 @@ Notes:
* `styler`
* Racket
* `raco`
* Re:VIEW
* `redpen`
* ReasonML
* `merlin`
* `ols`
@ -410,13 +442,12 @@ Notes:
* `textlint`
* `vale`
* `write-good`
* Re:VIEW
* `redpen`
* RPM spec
* `rpmlint`
* Ruby
* `brakeman`
* `debride`
* `prettier`
* `rails_best_practices`!!
* `reek`
* `rubocop`
@ -431,6 +462,8 @@ Notes:
* `rust-analyzer`
* `rustc` (see |ale-integration-rust|)
* `rustfmt`
* Salt
* `salt-lint`
* Sass
* `sass-lint`
* `stylelint`
@ -456,23 +489,31 @@ Notes:
* `solium`
* SQL
* `pgformatter`
* `sql-lint`
* `sqlfmt`
* `sqlformat`
* `sqlint`
* `sql-lint`
* Stylus
* `stylelint`
* SugarSS
* `stylelint`
* Svelte
* `prettier`
* `svelteserver`
* Swift
* Apple `swift-format`
* `sourcekit-lsp`
* `swiftformat`
* `swiftlint`
* systemd
* `systemd-analyze`!!
* Tcl
* `nagelfar`!!
* Terraform
* `fmt`
* `terraform`
* `terraform-fmt-fixer`
* `terraform-ls`
* `terraform-lsp`
* `tflint`
* Texinfo
* `alex`!!
@ -489,6 +530,7 @@ Notes:
* Thrift
* `thrift`
* TypeScript
* `deno`
* `eslint`
* `fecs`
* `prettier`
@ -496,8 +538,12 @@ Notes:
* `tslint`
* `tsserver`
* `typecheck`
* V
* `v`
* `vfmt`
* VALA
* `uncrustify`
* `vala_lint`!!
* Verilog
* `hdl-checker`
* `iverilog`
@ -525,7 +571,9 @@ Notes:
* XML
* `xmllint`
* YAML
* `circleci`!!
* `prettier`
* `spectral`
* `swaglint`
* `yamlfix`
* `yamllint`
@ -533,3 +581,6 @@ Notes:
* `yang-lsp`
* Zig
* `zls`
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,31 @@
===============================================================================
ALE Svelte Integration *ale-svelte-options*
===============================================================================
prettier *ale-svelte-prettier*
See |ale-javascript-prettier| for information about the available options.
===============================================================================
svelteserver *ale-svelte-svelteserver*
g:ale_svelte_svelteserver_executable *g:ale_svelte_svelteserver_executable*
*b:ale_svelte_svelteserver_executable*
Type: |String|
Default: `'svelteserver'`
See |ale-integrations-local-executables|
g:ale_svelte_svelteserver_use_global *g:ale_svelte_svelteserver_use_global*
*b:ale_svelte_svelteserver_use_global*
Type: |Number|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,44 @@
ALE Swift Integration *ale-swift-options*
===============================================================================
apple-swift-format *ale-swift-apple-swift-format*
There are 3 options to enable linting and fixing with Apple's swift-format:
1. Install the local executable in your path, as described here:
https://github.com/apple/swift-format
2. Install the executable via your OS package manager, for instance via
Homebrew with `brew install swift-format`
3. Your Swift project has a dependency on the swift-format package, so it can
be run with `swift run swift-format lint ...` In this case, you need to set
a variable, see |g:ale_swift_appleswiftformat_use_swiftpm|.
Additionally, ALE tries to locate and use the nearest existing `.swift-format`
configuration file.
g:ale_swift_appleswiftformat_executable *g:ale_swift_appleswiftformat_executable*
*b:ale_swift_appleswiftformat_executable*
Type: |String|
Default: `'swift-format'`
This variable can be modified to change the executable path for
`swift-format`.
g:ale_swift_appleswiftformat_use_swiftpm *g:ale_swift_appleswiftformat_use_swiftpm*
*b:ale_swift_appleswiftformat_use_swiftpm*
Type: |Number|
Default: `0`
When set to `1`, this option will cause ALE to use
`swift run swift-format lint ...` instead of the global executable. Use this
option if your Swift project has a dependency on the swift-format package.
See |ale-integrations-local-executables|
===============================================================================
sourcekitlsp *ale-swift-sourcekitlsp*
@ -16,6 +54,7 @@ g:ale_sourcekit_lsp_executable *g:ale_sourcekit_lsp_executable*
See |ale-integrations-local-executables|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,14 @@
===============================================================================
ALE systemd Integration *ale-systemd-options*
===============================================================================
systemd-analyze *ale-systemd-analyze*
ALE supports checking user systemd units with `systemd-analyze --user verify`
Checks will only work with user unit files in their proper location. There
aren't any options, and checks can only run after saving the file.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -32,6 +32,28 @@ g:ale_terraform_terraform_executable *g:ale_terraform_terraform_executable*
This variable can be changed to use a different executable for terraform.
===============================================================================
terraform-ls *ale-terraform-terraform-ls*
Official terraform language server. More stable than *terraform-lsp* but
currently has less features.
g:ale_terraform_ls_executable *g:ale_terraform_ls_executable*
*b:ale_terraform_ls_executable*
Type: |String|
Default: `'terraform-ls'`
This variable can be changed to use a different executable for terraform-ls.
g:ale_terraform_ls_options *g:ale_terraform_ls_options*
*b:ale_terraform_ls_options*
Type: |String|
Default: `''`
This variable can be changed to pass custom CLI flags to terraform-ls.
===============================================================================
terraform-lsp *ale-terraform-terraform-lsp*

View File

@ -2,6 +2,39 @@
ALE TypeScript Integration *ale-typescript-options*
===============================================================================
deno *ale-typescript-deno*
Starting from version 1.6.0, Deno comes with its own language server. Earlier
versions are not supported.
g:ale_deno_executable *g:ale_deno_executable*
*b:ale_deno_executable*
Type: |String|
Default: `'deno'`
g:ale_deno_lsp_project_root *g:ale_deno_lsp_project_root*
*b:ale_deno_lsp_project_root*
Type: |String|
Default: `''`
If this variable is left unset, ALE will try to find the project root by
executing the following steps in the given order:
1. Find an ancestor directory containing a tsconfig.json.
2. Find an ancestory irectory containing a .git folder.
3. Use the directory of the current buffer (if the buffer was opened from
a file).
g:ale_deno_unstable *g:ale_deno_unstable*
*b:ale_deno_unstable*
Type: |Number|
Default: `0`
Enable or disable unstable Deno features and APIs.
===============================================================================
eslint *ale-typescript-eslint*
@ -138,5 +171,32 @@ g:ale_typescript_tsserver_use_global *g:ale_typescript_tsserver_use_global*
tsserver in node_modules.
===============================================================================
xo *ale-typescript-xo*
g:ale_typescript_xo_executable *g:ale_typescript_xo_executable*
*b:ale_typescript_xo_executable*
Type: |String|
Default: `'xo'`
See |ale-integrations-local-executables|
g:ale_typescript_xo_options *g:ale_typescript_xo_options*
*b:ale_typescript_xo_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to xo.
g:ale_typescript_xo_use_global *g:ale_typescript_xo_use_global*
*b:ale_typescript_xo_use_global*
Type: |Number|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -0,0 +1,45 @@
===============================================================================
ALE V Integration *ale-v-options*
===============================================================================
Integration Information
`v` is V's build tool. `vfmt` (called as `v fmt` from the same
executable that does the builds) is the autoformatter/fixer.
g:ale_v_v_executable *g:ale_v_v_executable*
*b:ale_v_v_executable*
Type: |String|
Default: `'v'`
The executable that will be run for the `v` linter and the `vfmt` fixer.
===============================================================================
v *ale-v-v*
g:ale_v_v_options *g:ale_v_v_options*
*b:ale_v_v_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to the v linter.
They are injected directly after "v .".
===============================================================================
vfmt *ale-v-vfmt*
g:ale_v_vfmt_options *g:ale_v_vfmt_options*
*b:ale_v_vfmt_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to the vfmt fixer.
They are injected directly after "v fmt".
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -8,5 +8,26 @@ uncrustify *ale-vala-uncrustify*
See |ale-c-uncrustify| for information about the available options.
===============================================================================
Vala-Lint *ale-vala-vala-lint*
g:vala_vala_lint_executable *g:vala_vala_lint_executable*
*b:vala_vala_lint_executable*
Type: |String|
Default: `'io.elementary.vala-lint'`
This variable can be set to specify a Vala-Lint executable file.
g:vala_vala_lint_config_filename *g:vala_vala_lint_config_filename*
*b:vala_vala_lint_config_filename*
Type: |String|
Default: `'vala-lint.conf'`
This variable can be set to specify a Vala-Lint config filename. When a file
with the specified name was not found or this variable was set to empty,
Vala-Lint will be executed without specifying a config filename.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -1,6 +1,28 @@
===============================================================================
ALE YAML Integration *ale-yaml-options*
===============================================================================
circleci *ale-yaml-circleci*
Website: https://circleci.com/docs/2.0/local-cli
Installation
-------------------------------------------------------------------------------
Follow the instructions on the website, and make sure to test that you can
validate configuration files with: >
circleci config validate - < .circleci/config.yml
<
As long as the validator runs correctly, you should be able to see errors when
you save the configuration file. The validator doesn't run as you type because
it sends network requests, and running too often would overload the circleci
servers.
===============================================================================
prettier *ale-yaml-prettier*
@ -15,6 +37,40 @@ Install prettier either globally or locally: >
npm install prettier -g # global
npm install prettier # local
<
===============================================================================
spectral *ale-yaml-spectral*
Website: https://github.com/stoplightio/spectral
Installation
-------------------------------------------------------------------------------
Install spectral either globally or locally: >
npm install @stoplight/spectral -g # global
npm install @stoplight/spectral # local
<
Options
-------------------------------------------------------------------------------
g:ale_yaml_spectral_executable *g:ale_yaml_spectral_executable*
*b:ale_yaml_spectral_executable*
Type: |String|
Default: `'spectral'`
This variable can be set to change the path to spectral.
g:ale_yaml_spectral_use_global *g:ale_yaml_spectral_use_global*
*b:ale_yaml_spectral_use_global*
Type: |String|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
swaglint *ale-yaml-swaglint*
@ -48,6 +104,7 @@ g:ale_yaml_swaglint_use_global *g:ale_yaml_swaglint_use_global*
See |ale-integrations-local-executables|
===============================================================================
yamlfix *ale-yaml-yamlfix*
@ -86,6 +143,7 @@ g:ale_yaml_yamlfix_use_global *g:ale_yaml_yamlfix_use_global*
See |ale-integrations-local-executables|
===============================================================================
yamllint *ale-yaml-yamllint*

View File

@ -228,8 +228,8 @@ A minimal configuration for a language server linter might look so. >
\ 'project_root': '/path/to/root_of_project',
\})
<
For language servers that use a TCP socket connection, you should define the
address to connect to instead. >
For language servers that use a TCP or named pipe socket connection, you
should define the address to connect to instead. >
call ale#linter#Define('filetype_here', {
\ 'name': 'any_name_you_want',
@ -342,6 +342,12 @@ the buffers being checked.
When a |Dictionary| is returned for an |ALEFix| callback, the following keys
are supported for running the commands.
`cwd` An optional |String| for setting the working directory
for the command.
If not set, or `v:null`, the `cwd` of the last command
that spawn this one will be used.
`command` A |String| for the command to run. This key is required.
When `%t` is included in a command string, a temporary
@ -555,7 +561,6 @@ vimrc, and your issues should go away. >
set completeopt=menu,menuone,preview,noselect,noinsert
<
Or alternatively, if you want to show documentation in popups: >
set completeopt=menu,menuone,popup,noselect,noinsert
@ -646,6 +651,10 @@ problem will be displayed in a balloon instead of hover information.
Hover information can be displayed in the preview window instead by setting
|g:ale_hover_to_preview| to `1`.
When using Neovim, if |g:ale_hover_to_floating_preview| or |g:ale_floating_preview|
is set to 1, the hover information will show in a floating window. And
|g:ale_floating_window_border| for the border setting.
For Vim 8.1+ terminals, mouse hovering is disabled by default. Enabling
|balloonexpr| commands in terminals can cause scrolling issues in terminals,
so ALE will not attempt to show balloons unless |g:ale_set_balloons| is set to
@ -954,6 +963,15 @@ g:ale_default_navigation *g:ale_default_navigation*
buffer, such as for |ALEFindReferences|, or |ALEGoToDefinition|.
g:ale_detail_to_floating_preview *g:ale_detail_to_floating_preview*
*b:ale_detail_to_floating_preview*
Type: |Number|
Default: `0`
When this option is set to `1`, Neovim will use a floating window for
ALEDetail output.
g:ale_disable_lsp *g:ale_disable_lsp*
*b:ale_disable_lsp*
@ -1177,6 +1195,29 @@ g:ale_fix_on_save_ignore *g:ale_fix_on_save_ignore*
let g:ale_fix_on_save_ignore = [g:AddBar]
<
g:ale_floating_preview *g:ale_floating_preview*
Type: |Number|
Default: `0`
When set to `1`, Neovim will use a floating window for ale's preview window.
This is equivalent to setting |g:ale_hover_to_floating_preview| and
|g:ale_detail_to_floating_preview| to `1`.
g:ale_floating_window_border *g:ale_floating_window_border*
Type: |List|
Default: `['|', '-', '+', '+', '+', '+']`
When set to `[]`, window borders are disabled. The elements in the list set
the horizontal, top, top-left, top-right, bottom-right and bottom-left
border characters, respectively.
If the terminal supports Unicode, you might try setting the value to
` ['│', '─', '╭', '╮', '╯', '╰']`, to make it look nicer.
g:ale_history_enabled *g:ale_history_enabled*
Type: |Number|
@ -1235,6 +1276,14 @@ g:ale_hover_to_preview *g:ale_hover_to_preview*
instead of in balloons or the message line.
g:ale_hover_to_floating_preview *g:ale_hover_to_floating_preview*
*b:ale_hover_to_floating_preview*
Type: |Number|
Default: `0`
If set to `1`, Neovim will use floating windows for hover messages.
g:ale_keep_list_window_open *g:ale_keep_list_window_open*
*b:ale_keep_list_window_open*
Type: |Number|
@ -1388,6 +1437,7 @@ g:ale_linter_aliases *g:ale_linter_aliases*
\ 'ps1': 'powershell',
\ 'rmarkdown': 'r',
\ 'rmd': 'r',
\ 'svelte': ['svelte', 'javascript'],
\ 'systemverilog': 'verilog',
\ 'typescriptreact': ['typescript', 'tsx'],
\ 'verilog_systemverilog': ['verilog_systemverilog', 'verilog'],
@ -1526,19 +1576,23 @@ g:ale_linters *g:ale_linters*
following values: >
{
\ 'apkbuild': ['apkbuild_lint', 'secfixes_check'],
\ 'csh': ['shell'],
\ 'elixir': ['credo', 'dialyxir', 'dogma'],
\ 'go': ['gofmt', 'golint', 'go vet'],
\ 'go': ['gofmt', 'golint', 'gopls', 'govet'],
\ 'hack': ['hack'],
\ 'help': [],
\ 'inko': ['inko'],
\ 'perl': ['perlcritic'],
\ 'perl6': [],
\ 'python': ['flake8', 'mypy', 'pylint', 'pyright'],
\ 'rust': ['cargo', 'rls'],
\ 'spec': [],
\ 'svelte': ['eslint', 'svelteserver'],
\ 'text': [],
\ 'vue': ['eslint', 'vls'],
\ 'zsh': ['shell'],
\ 'v': ['v'],
\}
<
This option can be used to enable only a particular set of linters for a
@ -1677,22 +1731,13 @@ g:ale_lsp_show_message_severity *g:ale_lsp_show_message_severity*
`'disabled'` - Doesn't display any information at all.
g:ale_lsp_root *g:ale_lsp_root*
*b:ale_lsp_root*
g:ale_lsp_suggestions *g:ale_lsp_suggestions*
Type: |Dictionary| or |String|
Default: {}
Type: |Number|
Default: `0`
This option is used to determine the project root for the LSP linter. If the
value is a |Dictionary|, it maps a linter to either a string containing the
project root or a |Funcref| to call to look up the root. The funcref is
provided the buffer number as its argument.
The buffer-specific variable may additionally be a string containing the
project root itself.
If neither variable yields a result, a linter-specific function is invoked to
detect a project root. If this, too, yields no result, the linter is disabled.
If set to `1`, show hints/suggestions from LSP servers or tsserver, in
addition to warnings and errors.
g:ale_max_buffer_history_size *g:ale_max_buffer_history_size*
@ -1812,6 +1857,8 @@ g:ale_popup_menu_enabled *g:ale_popup_menu_enabled*
capabilities in the right click mouse menu when there's a LSP server or
tsserver available. See |ale-refactor|.
This feature is only supported in GUI versions of Vim.
This setting must be set to `1` before ALE is loaded for this behavior
to be enabled. See |ale-lint-settings-on-startup|.
@ -1837,6 +1884,25 @@ g:ale_rename_tsserver_find_in_strings *g:ale_rename_tsserver_find_in_strings*
`1`.
g:ale_root *g:ale_root*
*b:ale_root*
Type: |Dictionary| or |String|
Default: {}
This option is used to determine the project root for a linter. If the value
is a |Dictionary|, it maps a linter to either a |String| containing the
project root or a |Funcref| to call to look up the root. The |Funcref| is
provided the buffer number as its argument.
The buffer-specific variable may additionally be a string containing the
project root itself.
If neither variable yields a result, a linter-specific function is invoked to
detect a project root. If this, too, yields no result, and the linter is an
LSP linter, it will not run.
g:ale_set_balloons *g:ale_set_balloons*
*b:ale_set_balloons*
@ -2556,8 +2622,12 @@ documented in additional help files.
ada.....................................|ale-ada-options|
gcc...................................|ale-ada-gcc|
gnatpp................................|ale-ada-gnatpp|
ada-language-server...................|ale-ada-language-server|
ansible.................................|ale-ansible-options|
ansible-lint..........................|ale-ansible-ansible-lint|
apkbuild................................|ale-apkbuild-options|
apkbuild-lint.........................|ale-apkbuild-apkbuild-lint|
secfixes-check........................|ale-apkbuild-secfixes-check|
asciidoc................................|ale-asciidoc-options|
write-good............................|ale-asciidoc-write-good|
textlint..............................|ale-asciidoc-textlint|
@ -2567,6 +2637,8 @@ documented in additional help files.
gawk..................................|ale-awk-gawk|
bats....................................|ale-bats-options|
shellcheck............................|ale-bats-shellcheck|
bazel...................................|ale-bazel-options|
buildifier............................|ale-bazel-buildifier|
bib.....................................|ale-bib-options|
bibclean..............................|ale-bib-bibclean|
c.......................................|ale-c-options|
@ -2616,14 +2688,24 @@ documented in additional help files.
stylelint.............................|ale-css-stylelint|
cuda....................................|ale-cuda-options|
nvcc..................................|ale-cuda-nvcc|
clangd................................|ale-cuda-clangd|
clang-format..........................|ale-cuda-clangformat|
d.......................................|ale-d-options|
dfmt..................................|ale-d-dfmt|
dls...................................|ale-d-dls|
uncrustify............................|ale-d-uncrustify|
dafny...................................|ale-dafny-options|
dafny.................................|ale-dafny-dafny|
dart....................................|ale-dart-options|
analysis_server.......................|ale-dart-analysis_server|
dartanalyzer..........................|ale-dart-dartanalyzer|
dartfmt...............................|ale-dart-dartfmt|
desktop.................................|ale-desktop-options|
desktop-file-validate.................|ale-desktop-desktop-file-validate|
dhall...................................|ale-dhall-options|
dhall-format..........................|ale-dhall-format|
dhall-freeze..........................|ale-dhall-freeze|
dhall-lint............................|ale-dhall-lint|
dockerfile..............................|ale-dockerfile-options|
dockerfile_lint.......................|ale-dockerfile-dockerfile_lint|
hadolint..............................|ale-dockerfile-hadolint|
@ -2641,10 +2723,12 @@ documented in additional help files.
dialyzer..............................|ale-erlang-dialyzer|
elvis.................................|ale-erlang-elvis|
erlc..................................|ale-erlang-erlc|
erlfmt................................|ale-erlang-erlfmt|
syntaxerl.............................|ale-erlang-syntaxerl|
eruby...................................|ale-eruby-options|
ruumba................................|ale-eruby-ruumba|
fish....................................|ale-fish-options|
fish_indent...........................|ale-fish-fish_indent|
fortran.................................|ale-fortran-options|
gcc...................................|ale-fortran-gcc|
language_server.......................|ale-fortran-language-server|
@ -2689,6 +2773,7 @@ documented in additional help files.
hfmt..................................|ale-haskell-hfmt|
hindent...............................|ale-haskell-hindent|
hlint.................................|ale-haskell-hlint|
hls...................................|ale-haskell-hls|
stack-build...........................|ale-haskell-stack-build|
stack-ghc.............................|ale-haskell-stack-ghc|
stylish-haskell.......................|ale-haskell-stylish-haskell|
@ -2697,17 +2782,20 @@ documented in additional help files.
hcl.....................................|ale-hcl-options|
terraform-fmt.........................|ale-hcl-terraform-fmt|
html....................................|ale-html-options|
angular...............................|ale-html-angular|
fecs..................................|ale-html-fecs|
html-beautify.........................|ale-html-beautify|
htmlhint..............................|ale-html-htmlhint|
tidy..................................|ale-html-tidy|
prettier..............................|ale-html-prettier|
stylelint.............................|ale-html-stylelint|
tidy..................................|ale-html-tidy|
write-good............................|ale-html-write-good|
idris...................................|ale-idris-options|
idris.................................|ale-idris-idris|
ink.....................................|ale-ink-options|
ink-language-server...................|ale-ink-language-server|
inko....................................|ale-inko-options|
inko..................................|ale-inko-inko|
ispc....................................|ale-ispc-options|
ispc..................................|ale-ispc-ispc|
java....................................|ale-java-options|
@ -2735,6 +2823,7 @@ documented in additional help files.
jsonlint..............................|ale-json-jsonlint|
jq....................................|ale-json-jq|
prettier..............................|ale-json-prettier|
spectral..............................|ale-json-spectral|
julia...................................|ale-julia-options|
languageserver........................|ale-julia-languageserver|
kotlin..................................|ale-kotlin-options|
@ -2770,6 +2859,7 @@ documented in additional help files.
nimlsp................................|ale-nim-nimlsp|
nimpretty.............................|ale-nim-nimpretty|
nix.....................................|ale-nix-options|
nixfmt................................|ale-nix-nixfmt|
nixpkgs-fmt...........................|ale-nix-nixpkgs-fmt|
nroff...................................|ale-nroff-options|
write-good............................|ale-nroff-write-good|
@ -2784,9 +2874,16 @@ documented in additional help files.
uncrustify............................|ale-objcpp-uncrustify|
ocaml...................................|ale-ocaml-options|
merlin................................|ale-ocaml-merlin|
ocamllsp..............................|ale-ocaml-ocamllsp|
ols...................................|ale-ocaml-ols|
ocamlformat...........................|ale-ocaml-ocamlformat|
ocp-indent............................|ale-ocaml-ocp-indent|
openapi.................................|ale-openapi-options|
ibm_validator.........................|ale-openapi-ibm-validator|
prettier..............................|ale-openapi-prettier|
yamllint..............................|ale-openapi-yamllint|
pascal..................................|ale-pascal-options|
ptop..................................|ale-pascal-ptop|
pawn....................................|ale-pawn-options|
uncrustify............................|ale-pawn-uncrustify|
perl....................................|ale-perl-options|
@ -2820,6 +2917,7 @@ documented in additional help files.
swipl.................................|ale-prolog-swipl|
proto...................................|ale-proto-options|
protoc-gen-lint.......................|ale-proto-protoc-gen-lint|
protolint.............................|ale-proto-protolint|
pug.....................................|ale-pug-options|
puglint...............................|ale-pug-puglint|
puppet..................................|ale-puppet-options|
@ -2868,6 +2966,7 @@ documented in additional help files.
ruby....................................|ale-ruby-options|
brakeman..............................|ale-ruby-brakeman|
debride...............................|ale-ruby-debride|
prettier..............................|ale-ruby-prettier|
rails_best_practices..................|ale-ruby-rails_best_practices|
reek..................................|ale-ruby-reek|
rubocop...............................|ale-ruby-rubocop|
@ -2882,6 +2981,8 @@ documented in additional help files.
rls...................................|ale-rust-rls|
rustc.................................|ale-rust-rustc|
rustfmt...............................|ale-rust-rustfmt|
salt....................................|ale-salt-options|
salt-lint.............................|ale-salt-salt-lint|
sass....................................|ale-sass-options|
sasslint..............................|ale-sass-sasslint|
stylelint.............................|ale-sass-stylelint|
@ -2916,13 +3017,20 @@ documented in additional help files.
stylelint.............................|ale-stylus-stylelint|
sugarss.................................|ale-sugarss-options|
stylelint.............................|ale-sugarss-stylelint|
svelte..................................|ale-svelte-options|
prettier..............................|ale-svelte-prettier|
svelteserver..........................|ale-svelte-svelteserver|
swift...................................|ale-swift-options|
apple-swift-format....................|ale-swift-apple-swift-format|
sourcekitlsp..........................|ale-swift-sourcekitlsp|
systemd.................................|ale-systemd-options|
systemd-analyze.......................|ale-systemd-analyze|
tcl.....................................|ale-tcl-options|
nagelfar..............................|ale-tcl-nagelfar|
terraform...............................|ale-terraform-options|
terraform-fmt-fixer...................|ale-terraform-fmt-fixer|
terraform.............................|ale-terraform-terraform|
terraform-ls..........................|ale-terraform-terraform-ls|
terraform-lsp.........................|ale-terraform-terraform-lsp|
tflint................................|ale-terraform-tflint|
tex.....................................|ale-tex-options|
@ -2938,11 +3046,16 @@ documented in additional help files.
thrift..................................|ale-thrift-options|
thrift................................|ale-thrift-thrift|
typescript..............................|ale-typescript-options|
deno..................................|ale-typescript-deno|
eslint................................|ale-typescript-eslint|
prettier..............................|ale-typescript-prettier|
standard..............................|ale-typescript-standard|
tslint................................|ale-typescript-tslint|
tsserver..............................|ale-typescript-tsserver|
xo....................................|ale-typescript-xo|
v.......................................|ale-v-options|
v.....................................|ale-v-v|
vfmt..................................|ale-v-vfmt|
vala....................................|ale-vala-options|
uncrustify............................|ale-vala-uncrustify|
verilog/systemverilog...................|ale-verilog-options|
@ -2956,11 +3069,11 @@ documented in additional help files.
hdl-checker...........................|ale-vhdl-hdl-checker|
vcom..................................|ale-vhdl-vcom|
xvhdl.................................|ale-vhdl-xvhdl|
vim help................................|ale-vim-help-options|
write-good............................|ale-vim-help-write-good|
vim.....................................|ale-vim-options|
vimls.................................|ale-vim-vimls|
vint..................................|ale-vim-vint|
vim help................................|ale-vim-help-options|
write-good............................|ale-vim-help-write-good|
vue.....................................|ale-vue-options|
prettier..............................|ale-vue-prettier|
vls...................................|ale-vue-vls|
@ -2969,7 +3082,9 @@ documented in additional help files.
xml.....................................|ale-xml-options|
xmllint...............................|ale-xml-xmllint|
yaml....................................|ale-yaml-options|
circleci..............................|ale-yaml-circleci|
prettier..............................|ale-yaml-prettier|
spectral..............................|ale-yaml-spectral|
swaglint..............................|ale-yaml-swaglint|
yamlfix...............................|ale-yaml-yamlfix|
yamllint..............................|ale-yaml-yamllint|
@ -3504,6 +3619,12 @@ ale#command#Run(buffer, command, callback, [options]) *ale#command#Run()*
<
The following `options` can be provided.
`cwd` - An optional |String| for setting the working directory
for the command, just as per |ale#linter#Define|.
If not set, or `v:null`, the `cwd` of the last command
that spawned this one will be used.
`output_stream` - Either `'stdout'`, `'stderr'`, `'both'`, or
`'none`' for selecting which output streams to read
lines from.
@ -3613,6 +3734,21 @@ ale#fix#registry#Add(name, func, filetypes, desc, [aliases])
ALE will search for fixers in the registry first by `name`, then by their
`aliases`.
For example to register a custom fixer for `luafmt`: >
function! FormatLua(buffer) abort
return {
\ 'command': 'luafmt --stdin'
\}
endfunction
execute ale#fix#registry#Add('luafmt', 'FormatLua', ['lua'], 'luafmt for lua')
" You can now use it in g:ale_fixers
let g:ale_fixers = {
\ 'lua': ['luafmt']
}
<
ale#linter#Define(filetype, linter) *ale#linter#Define()*
@ -3729,10 +3865,33 @@ ale#linter#Define(filetype, linter) *ale#linter#Define()*
The result can be computed with |ale#command#Run()|.
The command string can be formatted with format
markers. See |ale-command-format-strings|.
This command will be fed the lines from the buffer to
check, and will produce the lines of output given to
the `callback`.
`cwd` An optional |String| for setting the working
directory for the command, or a |Funcref| for a
function to call for computing the command, accepting
a buffer number. The working directory can be
specified as a format string for determining the path
dynamically. See |ale-command-format-strings|.
To set the working directory to the directory
containing the file you're checking, you should
probably use `'%s:h'` as the option value.
If this option is absent or the string is empty, the
`command` will be run with no determined working
directory in particular.
The directory specified with this option will be used
as the default working directory for all commands run
in a chain with |ale#command#Run()|, unless otherwise
specified.
`output_stream` A |String| for the output stream the lines of output
should be read from for the command which is run. The
accepted values are `'stdout'`, `'stderr'`, and
@ -3788,7 +3947,7 @@ ale#linter#Define(filetype, linter) *ale#linter#Define()*
When this argument is set to `'socket'`, then the
linter will be defined as an LSP linter via a TCP
socket connection. `address` must be set.
or named pipe socket connection. `address` must be set.
ALE will not start a server automatically.
@ -3813,7 +3972,10 @@ ale#linter#Define(filetype, linter) *ale#linter#Define()*
`address` A |String| representing an address to connect to,
or a |Funcref| accepting a buffer number and
returning the |String|.
returning the |String|. If the value contains a
colon, it is interpreted as referring to a TCP
socket; otherwise it is interpreted as the path of a
named pipe.
The result can be computed with |ale#command#Run()|.