Technical Documentation: dense-analysis/ale
โน๏ธ Provenance: Multi-Tier Ingestion ยท CodeWiki Reference
Doc Ale Ada (`doc/ale-ada.txt`)
===============================================================================
ALE Ada Integration ale-ada-options
===============================================================================
cspell ale-ada-cspell
See |ale-cspell-options|
===============================================================================
gcc ale-ada-gcc
*ale-options.ada_gcc_executable*
*g:ale_ada_gcc_executable*
*b:ale_ada_gcc_executable*ada_gcc_executable
g:ale_ada_gcc_executable
Type: |String|
Default: 'gcc'
This variable can be changed to use a different executable for gcc.
*ale-options.ada_gcc_options*
*g:ale_ada_gcc_options*
*b:ale_ada_gcc_options*ada_gcc_options
g:ale_ada_gcc_options
Type: |String|
Default: '-gnatwa -gnatq'
This variable can be set to pass additional options to gcc.
===============================================================================
gnatpp ale-ada-gnatpp
*ale-options.ada_gnatpp_options*
*g:ale_ada_gnatpp_options*
*b:ale_ada_gnatpp_options*ada_gnatpp_options
g:ale_ada_gnatpp_options
Type: |String|
Default: ''
This variable can be set to pass extra options to the gnatpp fixer.
===============================================================================
ada-language-server ale-ada-language-server
*ale-options.ada_adals_executable*
*g:ale_ada_adals_executable*
*b:ale_ada_adals_executable*ada_adals_executable
g:ale_ada_adals_executable
Type: |String|
Default: 'ada_language_server'
This variable can be changed to use a different executable for Ada Language
Server.
*ale-options.ada_adals_project*
*g:ale_ada_adals_project*
*b:ale_ada_adals_project*ada_adals_project
g:ale_ada_adals_project
Type: |String|
Default: 'default.gpr'
This variable can be changed to use a different GPR file for Ada Language
Server.
*ale-options.ada_adals_encoding*
*g:ale_ada_adals_encoding*
*b:ale_ada_adals_encoding*ada_adals_encoding
g: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:
Doc Ale Ansible (`doc/ale-ansible.txt`)
===============================================================================
ALE Ansible Integration ale-ansible-options
===============================================================================
ansible-language-server ale-ansible-language-server
*ale-options.ansible_language_server_executable*
*g:ale_ansible_language_server_executable*
*b:ale_ansible_language_server_executable*ansible_language_server_executable
g:ale_ansible_language_server_executable
Type: |String|
Default: 'ansible-language-server'
Variable can be used to modify the executable used for Ansible language
server.
*ale-options.ansible_language_server_config*
*g:ale_ansible_language_server_config*
*b:ale_ansible_language_server_config*ansible_language_server_config
g:ale_ansible_language_server_config
Type: |Dictionary|
Default: '{}'
Configuration parameters sent to the language server on start. Refer to the
ansible language server configuration documentation for list of available
options: https://als.readthedocs.io/en/latest/settings/
===============================================================================
ansible-lint ale-ansible-ansible-lint
*ale-options.ansible_ansible_lint_executable*
*g:ale_ansible_ansible_lint_executable*
*b:ale_ansible_ansible_lint_executable*ansible_ansible_lint_executable
g:ale_ansible_ansible_lint_executable
Type: |String|
Default: 'ansible-lint'
This variable can be changed to modify the executable used for ansible-lint.
*ale-options.ansible_ansible_lint_auto_pipenv*
*g:ale_ansible_ansible_lint_auto_pipenv*
*b:ale_ansible_ansible_lint_auto_pipenv*ansible_ansible_lint_auto_pipenv
g:ale_ansible_ansible_lint_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.
*ale-options.ansible_ansible_lint_auto_poetry*
*g:ale_ansible_ansible_lint_auto_poetry*
*b:ale_ansible_ansible_lint_auto_poetry*ansible_ansible_lint_auto_poetry
g:ale_ansible_ansible_lint_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.ansible_ansible_lint_auto_uv*
*g:ale_ansible_ansible_lint_auto_uv*
*b:ale_ansible_ansible_lint_auto_uv*ansible_ansible_lint_auto_uv
g:ale_ansible_ansible_lint_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Apkbuild (`doc/ale-apkbuild.txt`)
===============================================================================
ALE APKBUILD Integration ale-apkbuild-options
===============================================================================
apkbuild-fixer ale-apkbuild-apkbuild-fixer
*ale-options.apkbuild_apkbuild_fixer_options*
*g:ale_apkbuild_apkbuild_fixer_options*
*b:ale_apkbuild_apkbuild_fixer_options*apkbuild_apkbuild_fixer_options
g:ale_apkbuild_apkbuild_fixer_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the apkbuild_fixer
fixer.
*ale-options.apkbuild_apkbuild_fixer_executable*
*g:ale_apkbuild_apkbuild_fixer_executable*
*b:ale_apkbuild_apkbuild_fixer_executable*apkbuild_apkbuild_fixer_executable
g:ale_apkbuild_apkbuild_fixer_executable
Type: |String|
Default: 'apkbuild-fixer'
This variable can be modified to change the executable path for
apkbuild-fixer.
*ale-options.apkbuild_apkbuild_fixer_lint_executable*
*g:ale_apkbuild_apkbuild_fixer_lint_executable*
*b:ale_apkbuild_apkbuild_fixer_lint_executable*apkbuild_apkbuild_fixer_lint_executable
g:ale_apkbuild_apkbuild_fixer_lint_executable
Type: |String|
Default: 'apkbuild-fixer'
This variable can be modified to change the executable path for
apkbuild-lint, the binary used to find violations.
===============================================================================
apkbuild-lint ale-apkbuild-apkbuild-lint
*ale-options.apkbuild_apkbuild_lint_executable*
*g:ale_apkbuild_apkbuild_lint_executable*
*b:ale_apkbuild_apkbuild_lint_executable*apkbuild_apkbuild_lint_executable
g: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
*ale-options.apkbuild_secfixes_check_executable*
*g:ale_apkbuild_secfixes_check_executable*
*b:ale_apkbuild_secfixes_check_executable*apkbuild_secfixes_check_executable
g: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:
Doc Ale Asciidoc (`doc/ale-asciidoc.txt`)
===============================================================================
ALE AsciiDoc Integration ale-asciidoc-options
===============================================================================
cspell ale-asciidoc-cspell
See |ale-cspell-options|
===============================================================================
write-good ale-asciidoc-write-good
See |ale-write-good-options|
===============================================================================
textlint ale-asciidoc-textlint
See |ale-text-textlint|
===============================================================================
redpen ale-asciidoc-redpen
See |ale-redpen-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Asm (`doc/ale-asm.txt`)
===============================================================================
ALE ASM Integration ale-asm-options
===============================================================================
gcc ale-asm-gcc
*ale-options.asm_gcc_executable*
*g:ale_asm_gcc_executable*
*b:ale_asm_gcc_executable*asm_gcc_executable
g:ale_asm_gcc_executable
Type: |String|
Default: 'gcc'
This variable can be changed to use a different executable for gcc.
*ale-options.asm_gcc_options*
*g:ale_asm_gcc_options*
*b:ale_asm_gcc_options*asm_gcc_options
g:ale_asm_gcc_options
Type: |String|
Default: '-Wall'
This variable can be set to pass additional options to gcc.
===============================================================================
llvm_mc ale-asm-llvm_mc
*ale-options.asm_llvm_mc_executable*
*g:ale_asm_llvm_mc_executable*
*b:ale_asm_llvm_mc_executable*asm_llvm_mc_executable
g:ale_asm_llvm_mc_executable
Type: |String|
Default: 'llvm-mc'
This variable can be changed to use a different executable for llvm-mc.
*ale-options.asm_llvm_mc_options*
*g:ale_asm_llvm_mc_options*
*b:ale_asm_llvm_mc_options*asm_llvm_mc_options
g:ale_asm_llvm_mc_options
Type: |String|
Default: ''
This variable can be set to pass additional options to llvm-mc.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Astro (`doc/ale-astro.txt`)
===============================================================================
ALE Astro Integration ale-astro-options
===============================================================================
dprint ale-astro-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markup_fmt/.
===============================================================================
eslint ale-astro-eslint
See |ale-javascript-eslint| for information about the available options.
===============================================================================
prettier ale-astro-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Autopkgtest (`doc/ale-autopkgtest.txt`)
===============================================================================
ALE Autopkgtest Integration ale-autopkgtest-options
===============================================================================
debian-lsp ale-autopkgtest-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog,
debian/watch, debian/tests/control, debian/upstream/metadata, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Options
ale-options.autopkgtest_debian_lsp_executable
g:ale_autopkgtest_debian_lsp_executable
b:ale_autopkgtest_debian_lsp_executable
autopkgtest_debian_lsp_executable
g:ale_autopkgtest_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Avra (`doc/ale-avra.txt`)
===============================================================================
ALE AVRA Integration ale-avra-options
===============================================================================
avra ale-avra-avra
*ale-options.avra_avra_executable*
*g:ale_avra_avra_executable*
*b:ale_avra_avra_executable*avra_avra_executable
g:ale_avra_avra_executable
Type: |String|
Default 'avra'
This variable can be changed to use different executable for AVRA.
*ale-options.avra_avra_options*
*g:ale_avra_avra_options*
*b:ale_avra_avra_options*avra_avra_options
g:ale_avra_avra_options
Type: |String|
Default: ''
This variable can be set to pass additional options to AVRA.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Awk (`doc/ale-awk.txt`)
===============================================================================
ALE Awk Integration ale-awk-options
===============================================================================
gawk ale-awk-gawk
*ale-options.awk_gawk_executable*
*g:ale_awk_gawk_executable*
*b:ale_awk_gawk_executable*awk_gawk_executable
g:ale_awk_gawk_executable
Type: |String|
Default: 'gawk'
This variable sets executable used for gawk.
*ale-options.awk_gawk_options*
*g:ale_awk_gawk_options*
*b:ale_awk_gawk_options*awk_gawk_options
g:ale_awk_gawk_options
Type: |String|
Default: ''
With this variable we are able to pass extra arguments for gawk for
invocation.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Bats (`doc/ale-bats.txt`)
===============================================================================
ALE Bats Integration ale-bats-options
===============================================================================
shellcheck ale-bats-shellcheck
The shellcheck linter for Bats uses the sh options for shellcheck; see:
|ale-sh-shellcheck|.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Bazel (`doc/ale-bazel.txt`)
===============================================================================
ALE Bazel Integration ale-bazel-options
===============================================================================
buildifier ale-bazel-buildifier
*ale-options.bazel_buildifier_executable*
*g:ale_bazel_buildifier_executable*
*b:ale_bazel_buildifier_executable*bazel_buildifier_executable
g:ale_bazel_buildifier_executable
Type: |String|
Default: 'buildifier'
See |ale-integrations-local-executables|
*ale-options.bazel_buildifier_options*
*g:ale_bazel_buildifier_options*
*b:ale_bazel_buildifier_options*bazel_buildifier_options
g:ale_bazel_buildifier_options
Type: |String|
Default: ''
This variable can be set to pass extra options to buildifier.
*ale-options.bazel_buildifier_use_global*
*g:ale_bazel_buildifier_use_global*
*b:ale_bazel_buildifier_use_global*bazel_buildifier_use_global
g:ale_bazel_buildifier_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:
Doc Ale Bib (`doc/ale-bib.txt`)
===============================================================================
ALE BibTeX Integration ale-bib-options
===============================================================================
bibclean ale-bib-bibclean
*ale-options.bib_bibclean_executable*
*g:ale_bib_bibclean_executable*
*b:ale_bib_bibclean_executable*bib_bibclean_executable
g:ale_bib_bibclean_executable
Type: |String|
Default: 'bibclean'
*ale-options.bib_bibclean_options*
*g:ale_bib_bibclean_options*
*b:ale_bib_bibclean_options*bib_bibclean_options
g:ale_bib_bibclean_options
Type: |String|
Default: '-align-equals'
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Bicep (`doc/ale-bicep.txt`)
===============================================================================
ALE Bicep Integration ale-bicep-options
===============================================================================
bicep ale-bicep-bicep
*ale-options.bicep_bicep_executable*
*g:ale_bicep_bicep_executable*
*b:ale_bicep_bicep_executable*bicep_bicep_executable
g:ale_bicep_bicep_executable
Type: |String|
Default: 'bicep'
This variable can be set to change the path to bicep.
*ale-options.bicep_bicep_options*
*g:ale_bicep_bicep_options*
*b:ale_bicep_bicep_options*bicep_bicep_options
g:ale_bicep_bicep_options
Type: |String|
Default: ''
This variable can be set to pass additional options to bicep.
===============================================================================
az_bicep ale-bicep-az_bicep
*ale-options.bicep_az_bicep_executable*
*g:ale_bicep_az_bicep_executable*
*b:ale_bicep_az_bicep_executable*bicep_az_bicep_executable
g:ale_bicep_az_bicep_executable
Type: |String|
Default: 'az'
This variable can be set to change the path to az_bicep.
*ale-options.bicep_az_bicep_options*
*g:ale_bicep_az_bicep_options*
*b:ale_bicep_az_bicep_options*bicep_az_bicep_options
g:ale_bicep_az_bicep_options
Type: |String|
Default: ''
This variable can be set to pass additional options to az_bicep.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Bindzone (`doc/ale-bindzone.txt`)
===============================================================================
ALE BINDZone Integration ale-bindzone-options
===============================================================================
checkzone ale-bindzone-checkzone
*ale-options.bindzone_checkzone_executable*
*g:ale_bindzone_checkzone_executable*
*b:ale_bindzone_checkzone_executable*bindzone_checkzone_executable
g:ale_bindzone_checkzone_executable
Type: |String|
Default: named-checkzone
This variable can be changed to set the path to named-checkzone executable.
*ale-options.bindzone_checkzone_options*
*g:ale_bindzone_checkzone_options*
*b:ale_bindzone_checkzone_options*bindzone_checkzone_options
g:ale_bindzone_checkzone_options
Type: |String|
Default: -c IN
This variable can be changed to add additional command-line arguments.
All available options can be found at:
https://bind9.readthedocs.io/en/stable/manpages.html#named-checkzone-zone-file-validation-tool
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Bitbake (`doc/ale-bitbake.txt`)
===============================================================================
ALE BitBake Integration ale-bitbake-options
===============================================================================
oelint-adv ale-bitbake-oelint_adv
*ale-options.bitbake_oelint_adv_executable*
*g:ale_bitbake_oelint_adv_executable*
*b:ale_bitbake_oelint_adv_executable*bitbake_oelint_adv_executable
g:ale_bitbake_oelint_adv_executable
Type: |String|
Default: 'oelint-adv'
This variable can be changed to use a different executable for oelint-adv.
*ale-options.bitbake_oelint_adv_options*
*g:ale_bitbake_oelint_adv_options*
*b:ale_bitbake_oelint_adv_options*bitbake_oelint_adv_options
g:ale_bitbake_oelint_adv_options
Type: |String|
Default: ''
This variable can be set to pass additional options to oelint-adv.
*ale-options.bitbake_oelint_adv_config*
*g:ale_bitbake_oelint_adv_config*
*b:ale_bitbake_oelint_adv_config*g:ale_bitbake_oelint_adv_config
Type: |String|
Default: '.oelint.cfg'
This variable can be set to use a different config file.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale C (`doc/ale-c.txt`)
===============================================================================
ALE C Integration ale-c-options
For basic checking of problems with C files, ALE offers the cc linter, which
runs either clang, or gcc. See |ale-c-cc|.
===============================================================================
Global Options
ale-options.c_always_make
g:ale_c_always_make
b:ale_c_always_make
c_always_make
g:ale_c_always_make
Type: |Number|
Default: has('unix') && !has('macunix')
If set to 1, use --always-make for make, which means that output will
always be parsed from make dry runs with GNU make. BSD make does not
support this option, so you probably want to turn this option off when using
a BSD variant.
*ale-options.c_build_dir_names*
*g:ale_c_build_dir_names*
*b:ale_c_build_dir_names*c_build_dir_names
g:ale_c_build_dir_names
Type: |List|
Default: ['build', 'build/Debug', 'build/Release', 'bin']
A list of directory names to be used when searching upwards from C files
to discover compilation databases with. For directory named 'foo', ALE
will search for 'foo/compile_commands.json' in all directories on and
above the directory containing the C file to find path to compilation
database. This feature is useful for the clang tools wrapped around
LibTooling (namely here, clang-tidy)
*ale-options.c_build_dir*
*g:ale_c_build_dir*
*b:ale_c_build_dir*c_build_dir
g:ale_c_build_dir
Type: |String|
Default: ''
For programs that can read compile_commands.json files, this option can be
set to the directory containing the file for the project. ALE will try to
determine the location of compile_commands.json automatically, but if your
file exists in some other directory, you can set this option so ALE will
know where it is.
This directory will be searched instead of |g:ale_c_build_dir_names|.
*ale-options.c_parse_compile_commands*
*g:ale_c_parse_compile_commands*
*b:ale_c_parse_compile_commands*c_parse_compile_commands
g:ale_c_parse_compile_commands
Type: |Number|
Default: 1
If set to 1, ALE will parse compile_commands.json files to automatically
determine flags for C or C++ compilers. ALE will first search for the
nearest compile_commands.json file, and then look for
compile_commands.json files in the directories for
|g:ale_c_build_dir_names|.
*ale-options.c_parse_makefile*
*g:ale_c_parse_makefile*
*b:ale_c_parse_makefile*c_parse_makefile
g:ale_c_parse_makefile
Type: |Number|
Default: 0
If set to 1, ALE will run make -n to automatically determine flags to
set for C or C++ compilers. This can make it easier to determine the correct
build flags to use for different files.
NOTE: When using this option on BSD, you may need to set
|g:ale_c_always_make| to 0, and make -n will not provide consistent
results if binaries have already been built, so use make clean when
editing your files.
WARNING: Running make -n automatically can execute arbitrary code, even
though it's supposed to be a dry run, so enable this option with care. You
might prefer to use the buffer-local version of the option instead with
|g:ale_pattern_options|, or you own code for checking which project you're
in.
You might want to disable this option if make -n takes too long to run for
projects you work on.
If |g:ale_c_parse_compile_commands| or |b:ale_c_parse_compile_commands| is
set to 1, flags taken from compile_commands.json will be preferred over
make -n output.
===============================================================================
astyle ale-c-astyle
*ale-options.c_astyle_executable*
*g:ale_c_astyle_executable*
*b:ale_c_astyle_executable*c_astyle_executable
g:ale_c_astyle_executable
Type: |String|
Default: 'astyle'
This variable can be changed to use a different executable for astyle.
*ale-options.c_astyle_project_options*
*g:ale_c_astyle_project_options*
*b:ale_c_astyle_project_options*c_astyle_project_options
g:ale_c_astyle_project_options
Type: |String|
Default: ''
This variable can be changed to use an option file for project level
configurations. Provide only the filename of the option file that should be
present at the project's root directory.
For example, if .astylrc is specified, the file is searched in the parent
directories of the source file's directory.
===============================================================================
cc ale-c-cc
ale-c-gcc
ale-c-clang
*ale-options.c_cc_executable*
*g:ale_c_cc_executable*
*b:ale_c_cc_executable*c_cc_executable
g:ale_c_cc_executable
Type: |String|
Default: '<auto>'
This variable can be changed to use a different executable for a C compiler.
ALE will try to use clang if Clang is available, otherwise ALE will
default to checking C code with gcc.
*ale-options.c_cc_options*
*g:ale_c_cc_options*
*b:ale_c_cc_options*c_cc_options
g:ale_c_cc_options
Type: |String|
Default: '-std=c11 -Wall'
This variable can be changed to modify flags given to the C compiler.
*ale-options.c_cc_use_header_lang_flag*
*g:ale_c_cc_use_header_lang_flag*
*b:ale_c_cc_use_header_lang_flag*c_cc_use_header_lang_flag
g:ale_c_cc_use_header_lang_flag
Type: |Number|
Default: -1
By default, ALE will use '-x c-header' instead of '-x c' for header files
when using Clang.
This variable can be changed to manually activate or deactivate this flag
for header files.
- When set to
-1, the default beviour is used,'-x c-header'is used with
Clang and'-x c'is used with other compilers. - When set to
0, the flag is deactivated,'-x c'is always used
independently of the compiler. - When set to
1, the flag is activated,'-x c-header'is always used
independently of the compiler.
Gcc does not support '-x c-header' when using '-' as input filename,
which is what ALE does. This why, by default, ALE only uses '-x c-header'
with Clang.
*ale-options.c_cc_header_exts*
*g:ale_c_cc_header_exts*
*b:ale_c_cc_header_exts*c_cc_header_exts
g:ale_c_cc_header_exts
Type: |List|
Default: ['h']
This variable can be changed to modify the list of extensions of the files
considered as header files.
This variable is only used when '-x c-header' is used instead of '-x c',
see |g:ale_c_cc_use_header_lang_flag|.
===============================================================================
ccls ale-c-ccls
*ale-options.c_ccls_executable*
*g:ale_c_ccls_executable*
*b:ale_c_ccls_executable*c_ccls_executable
g:ale_c_ccls_executable
Type: |String|
Default: 'ccls'
This variable can be changed to use a different executable for ccls.
*ale-options.c_ccls_init_options*
*g:ale_c_ccls_init_options*
*b:ale_c_ccls_init_options*c_ccls_init_options
g:ale_c_ccls_init_options
Type: |Dictionary|
Default: {}
This variable can be changed to customize ccls initialization options.
For example: >
let g:ale_c_ccls_init_options = {
\ 'cacheDirectory': '/tmp/ccls',
\ 'cacheFormat': 'binary',
\ 'diagnostics': {
\ 'onOpen': 0,
\ 'opChange': 1000,
\ },
}
<
For all available options and explanations, visit
https://github.com/MaskRay/ccls/wiki/Customization#initialization-options.
===============================================================================
clangcheck ale-c-clangcheck
clang-check will be run only when files are saved to disk, so thatcompile_commands.json files can be used. It is recommended to use this
linter in combination with compile_commands.json files.
Therefore, clang-check linter reads the options |g:ale_c_build_dir| and
|g:ale_c_build_dir_names|. Also, setting |g:ale_c_build_dir| actually
overrides |g:ale_c_build_dir_names|.
Options
ale-options.c_clangcheck_executable
g:ale_c_clangcheck_executable
b:ale_c_clangcheck_executable
c_clangcheck_executable
g:ale_c_clangcheck_executable
Type: |String|
Default: 'clang-check'
This variable can be changed to use a different executable for clangcheck.
*ale-options.c_clangcheck_options*
*g:ale_c_clangcheck_options*
*b:ale_c_clangcheck_options*c_clangcheck_options
g:ale_c_clangcheck_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clang-check.
This variable should not be set to point to build subdirectory with
-p path/to/build option, as it is handled by the |g:ale_c_build_dir|
option.
===============================================================================
clangd ale-c-clangd
*ale-options.c_clangd_executable*
*g:ale_c_clangd_executable*
*b:ale_c_clangd_executable*c_clangd_executable
g:ale_c_clangd_executable
Type: |String|
Default: 'clangd'
This variable can be changed to use a different executable for clangd.
*ale-options.c_clangd_options*
*g:ale_c_clangd_options*
*b:ale_c_clangd_options*c_clangd_options
g:ale_c_clangd_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clangd.
===============================================================================
clang-format ale-c-clangformat
*ale-options.c_clangformat_executable*
*g:ale_c_clangformat_executable*
*b:ale_c_clangformat_executable*c_clangformat_executable
g:ale_c_clangformat_executable
Type: |String|
Default: 'clang-format'
This variable can be changed to use a different executable for clang-format.
*ale-options.c_clangformat_options*
*g:ale_c_clangformat_options*
*b:ale_c_clangformat_options*c_clangformat_options
g:ale_c_clangformat_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clang-format.
*ale-options.c_clangformat_style_option*
*g:ale_c_clangformat_style_option*
*b:ale_c_clangformat_style_option*c_clangformat_style_option
g: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: >
let g:ale_c_clangformat_style_option = {
\ '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.
*ale-options.c_clangformat_use_local_file*
*g:ale_c_clangformat_use_local_file*
*b:ale_c_clangformat_use_local_file*c_clangformat_use_local_file
g: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.
===============================================================================
clangtidy ale-c-clangtidy
clang-tidy will be run only when files are saved to disk, so thatcompile_commands.json files can be used. It is recommended to use this
linter in combination with compile_commands.json files.
Therefore, clang-tidy linter reads the options |g:ale_c_build_dir| and
|g:ale_c_build_dir_names|. Also, setting |g:ale_c_build_dir| actually
overrides |g:ale_c_build_dir_names|.
Options
ale-options.c_clangtidy_checks
g:ale_c_clangtidy_checks
b:ale_c_clangtidy_checks
c_clangtidy_checks
g:ale_c_clangtidy_checks
Type: |List|
Default: []
The checks to enable for clang-tidy with the -checks argument.
All options will be joined with commas, and escaped appropriately for
the shell. The -checks flag can be removed entirely by setting this
option to an empty List.
Not all of clangtidy checks are applicable for C. You should consult the
clang documentation for an up-to-date list of compatible checks:
http://clang.llvm.org/extra/clang-tidy/checks/list.html
*ale-options.c_clangtidy_executable*
*g:ale_c_clangtidy_executable*
*b:ale_c_clangtidy_executable*c_clangtidy_executable
g:ale_c_clangtidy_executable
Type: |String|
Default: 'clang-tidy'
This variable can be changed to use a different executable for clangtidy.
*ale-options.c_clangtidy_options*
*g:ale_c_clangtidy_options*
*b:ale_c_clangtidy_options*c_clangtidy_options
g:ale_c_clangtidy_options
Type: |String|
Default: ''
This variable can be changed to modify compiler flags given to clang-tidy.
Setting this variable to a non-empty string,
and working in a buffer where no compilation database is found using
|g:ale_c_build_dir_names| or |g:ale_c_build_dir|,
will cause the--argument to be passed toclang-tidy, which will mean
that detection ofcompile_commands.jsonfiles for compile command
databases will be disabled.
Only set this option if you want to control compiler flags
entirely manually, and nocompile_commands.jsonfile is in one
of the |g:ale_c_build_dir_names| directories of the project tree.text*ale-options.c_clangtidy_extra_options* *g:ale_c_clangtidy_extra_options* *b:ale_c_clangtidy_extra_options*
c_clangtidy_extra_options
g:ale_c_clangtidy_extra_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clang-tidy.
*ale-options.c_clangtidy_fix_errors*
*g:ale_c_clangtidy_fix_errors*
*b:ale_c_clangtidy_fix_errors*c_clangtidy_fix_errors
g:ale_c_clangtidy_fix_errors
Type: |Number|
Default: 1
This variable can be changed to disable the -fix-errors option for the
|clangtidy| fixer.
===============================================================================
cppcheck ale-c-cppcheck
*ale-options.c_cppcheck_executable*
*g:ale_c_cppcheck_executable*
*b:ale_c_cppcheck_executable*c_cppcheck_executable
g:ale_c_cppcheck_executable
Type: |String|
Default: 'cppcheck'
This variable can be changed to use a different executable for cppcheck.
*ale-options.c_cppcheck_options*
*g:ale_c_cppcheck_options*
*b:ale_c_cppcheck_options*c_cppcheck_options
g:ale_c_cppcheck_options
Type: |String|
Default: '--enable=style'
This variable can be changed to modify flags given to cppcheck.
===============================================================================
cquery ale-c-cquery
*ale-options.c_cquery_executable*
*g:ale_c_cquery_executable*
*b:ale_c_cquery_executable*c_cquery_executable
g:ale_c_cquery_executable
Type: |String|
Default: 'cquery'
This variable can be changed to use a different executable for cquery.
*ale-options.c_cquery_cache_directory*
*g:ale_c_cquery_cache_directory*
*b:ale_c_cquery_cache_directory*c_cquery_cache_directory
g:ale_c_cquery_cache_directory
Type: |String|
Default: '~/.cache/cquery'
This variable can be changed to decide which directory cquery uses for its
cache.
===============================================================================
cspell ale-c-cspell
See |ale-cspell-options|
===============================================================================
flawfinder ale-c-flawfinder
*ale-options.c_flawfinder_executable*
*g:ale_c_flawfinder_executable*
*b:ale_c_flawfinder_executable*c_flawfinder_executable
g:ale_c_flawfinder_executable
Type: |String|
Default: 'flawfinder'
This variable can be changed to use a different executable for flawfinder.
*ale-options.c_flawfinder_minlevel*
*g:ale_c_flawfinder_minlevel*
*b:ale_c_flawfinder_minlevel*c_flawfinder_minlevel
g:ale_c_flawfinder_minlevel
Type: |Number|
Default: 1
This variable can be changed to ignore risks under the given risk threshold.
*ale-options.c_flawfinder_options*
*g:ale_c_flawfinder_options*
*b:ale-c-flawfinder*c_flawfinder_options
g:ale_c_flawfinder_options
Type: |String|
Default: ''
This variable can be used to pass extra options into the flawfinder command.
*ale-options.c_flawfinder_error_severity*
*g:ale_c_flawfinder_error_severity*
*b:ale_c_flawfinder_error_severity*c_flawfinder_error_severity
g:ale_c_flawfinder_error_severity
Type: |Number|
Default: 6
This variable can be changed to set the minimum severity to be treated as an
error. This setting also applies to flawfinder for c++.
===============================================================================
uncrustify ale-c-uncrustify
*ale-options.c_uncrustify_executable*
*g:ale_c_uncrustify_executable*
*b:ale_c_uncrustify_executable*c_uncrustify_executable
g:ale_c_uncrustify_executable
Type: |String|
Default: 'uncrustify'
This variable can be changed to use a different executable for uncrustify.
*ale-options.c_uncrustify_options*
*g:ale_c_uncrustify_options*
*b:ale_c_uncrustify_options*c_uncrustify_options
g:ale_c_uncrustify_options
Type: |String|
Default: ''
This variable can be change to modify flags given to uncrustify.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale C3 (`doc/ale-c3.txt`)
===============================================================================
ALE C3 Integration ale-c3-options
===============================================================================
c3lsp ale-c3-c3lsp
*ale-options.c3_c3lsp_executable*
*g:ale_c3_c3lsp_executable*
*b:ale_c3_c3lsp_executable*c3_c3lsp_executable
g:ale_c3_c3lsp_executable
Type: |String|
Default: c3lsp
This variable can be changed to set the path to c3lsp executable.
*ale-options.c3_c3lsp_options*
*g:ale_c3_c3lsp_options*
*b:ale_c3_c3lsp_options*c3_c3lsp_options
g:ale_c3_c3lsp_options
Type: |String|
Default: ''
Add command line options to the c3lsp executable. This is useful to specify
the path to the C3 standard library with '-stdlib-path='.
*ale-options.c3_c3lsp_init_options*
*g:ale_c3_c3lsp_init_options*
*b:ale_c3_c3lsp_init_options*c3_c3lsp_init_options
g:ale_c3_c3lsp_init_options
Type: |Dictionary|
Default: {}
Dictionary containing configuration settings that will be passed to the
language server.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cairo (`doc/ale-cairo.txt`)
===============================================================================
ALE Cairo Integration ale-cairo-options
===============================================================================
scarb ale-cairo-scarb
*ale-options.cairo_scarb_executable*
*g:ale_cairo_scarb_executable*
*b:ale_cairo_scarb_executable*cairo_scarb_executable
g:ale_cairo_scarb_executable
Type: |String|
Default: 'scarb build'
For Cairo1 projects using Scarb
For more information read 'https://docs.swmansion.com/scarb/'
===============================================================================
starknet ale-cairo-starknet
*ale-options.cairo_starknet_executable*
*g:ale_cairo_starknet_executable*
*b:ale_cairo_starknet_executable*cairo_starknet_executable
g:ale_cairo_starknet_executable
Type: |String|
Default: 'starknet-compile'
Overrides the starknet-compile binary after installing the cairo-language.
For more information read 'https://starknet.io/docs/quickstart.html'
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Chef (`doc/ale-chef.txt`)
===============================================================================
ALE Chef Integration ale-chef-options
===============================================================================
cookstyle ale-chef-cookstyle
*ale-options.chef_cookstyle_options*
*g:ale_chef_cookstyle_options*
*b:ale_chef_cookstyle_options*chef_cookstyle_options
g:ale_chef_cookstyle_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to cookstyle.
*ale-options.chef_cookstyle_executable*
*g:ale_chef_cookstyle_executable*
*b:ale_chef_cookstyle_executable*chef_cookstyle_executable
g:ale_chef_cookstyle_executable
Type: |String|
Default: 'cookstyle'
This variable can be changed to point to the cookstyle binary in case it's
not on the $PATH or a specific version/path must be used.
===============================================================================
foodcritic ale-chef-foodcritic
*ale-options.chef_foodcritic_options*
*g:ale_chef_foodcritic_options*
*b:ale_chef_foodcritic_options*chef_foodcritic_options
g:ale_chef_foodcritic_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to foodcritic.
*ale-options.chef_foodcritic_executable*
*g:ale_chef_foodcritic_executable*
*b:ale_chef_foodcritic_executable*chef_foodcritic_executable
g:ale_chef_foodcritic_executable
Type: |String|
Default: 'foodcritic'
This variable can be changed to point to the foodcritic binary in case it's
not on the $PATH or a specific version/path must be used.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Clojure (`doc/ale-clojure.txt`)
===============================================================================
ALE Clojure Integration ale-clojure-options
===============================================================================
clj-kondo ale-clojure-clj-kondo
A minimal and opinionated linter for code that sparks joy.
https://github.com/borkdude/clj-kondo
Options
ale-options.clojure_clj_kondo_options
g:ale_clojure_clj_kondo_options
b:ale_clojure_clj_kondo_options
clojure_clj_kondo_options
g:ale_clojure_clj_kondo_options
Type: |String|
Default: '--cache'
This variable can be changed to modify options passed to clj-kondo.
===============================================================================
cljfmt ale-clojure-cljfmt
cljfmt is a linter and fixer for Clojure code, with defaults adhering to the
Clojure Style Guide (see https://guide.clojure.style/ )
https://github.com/weavejester/cljfmt
Linting options are not configurable by ale, but instead are controlled by
Leiningen, or a cljfmt file in the current or parent directories.
see https://github.com/weavejester/cljfmt#Configuration for more information.
===============================================================================
joker ale-clojure-joker
Joker is a small Clojure interpreter and linter written in Go.
https://github.com/candid82/joker
Linting options are not configurable by ale, but instead are controlled by a.joker file in same directory as the file (or current working directory if
linting stdin), a parent directory relative to the file, or the users home
directory.
see https://github.com/candid82/joker#linter-mode for more information.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cloudformation (`doc/ale-cloudformation.txt`)
===============================================================================
ALE CloudFormation Integration ale-cloudformation-options
===============================================================================
cfn-python-lint ale-cloudformation-cfn-python-lint
cfn-python-lint is a linter for AWS CloudFormation template file.
Website: https://github.com/awslabs/cfn-python-lint
Installation
Install cfn-python-lint using either pip or brew: >
pip install cfn-lint
<
If pip is not available use setuptools. >
python setup.py clean --all
python setup.py install
<
You can install the linter via brew on macOS. >
brew install cfn-lint
<
Configuration
To get cloudformation linter to work on only CloudFormation files we must set
the buffer |filetype| to yaml.cloudformation. This causes ALE to lint the
file with linters configured for cloudformation and YAML files.
Just put the following in ftdetect/cloudformation.vim: >
au BufRead,BufNewFile *.template.yaml set filetype=yaml.cloudformation
This will get both cloudformation and yaml linters to work on any file with.template.yaml extension.
===============================================================================
checkov ale-cloudformation-checkov
*ale-options.cloudformation_checkov_executable*
*g:ale_cloudformation_checkov_executable*
*b:ale_cloudformation_checkov_executable*cloudformation_checkov_executable
g:ale_cloudformation_checkov_executable
Type: |String|
Default: 'checkov'
This variable can be changed to use a different executable for checkov.
*ale-options.cloudformation_checkov_options*
*g:ale_cloudformation_checkov_options*
*b:ale_cloudformation_checkov_options*cloudformation_checkov_options
g:ale_cloudformation_checkov_options
Type: |String|
Default: ''
This variable can be changed to set additional options for checkov.
Configuration
To get chekov to work with cloudformation files (rather than general yaml
files) we must set the buffer |filetype| to yaml.cloudformation. This
causes ALE to lint the file with linters configured for cloudformation and
YAML files.
One option is to put the following in ftdetect/cloudformation.vim: >
au BufRead,BufNewFile *.template.yaml set filetype=yaml.cloudformation
This will get both cloudformation and yaml linters to work on any file with.template.yaml extension.
Another option is to check for the presence of 'AWSTemplateFormatVersion' in
the yaml file: >
au BufRead,BufNewFile .yaml,.yml if search('AWSTemplateFormatVersion', 'nw') | set filetype=yaml.cloudformation | endif
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cmake (`doc/ale-cmake.txt`)
===============================================================================
ALE CMake Integration ale-cmake-options
===============================================================================
cmakelint ale-cmake-cmakelint
*ale-options.cmake_cmakelint_executable*
*g:ale_cmake_cmakelint_executable*
*b:ale_cmake_cmakelint_executable*cmake_cmakelint_executable
g:ale_cmake_cmakelint_executable
Type: |String|
Default: 'cmakelint'
This variable can be set to change the path the cmakelint.
*ale-options.cmake_cmakelint_options*
*g:ale_cmake_cmakelint_options*
*b:ale_cmake_cmakelint_options*cmake_cmakelint_options
g:ale_cmake_cmakelint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to cmakelint.
===============================================================================
cmake-lint ale-cmake-cmake-lint
*ale-options.cmake_cmake_lint_executable*
*g:ale_cmake_cmake_lint_executable*
*b:ale_cmake_cmake_lint_executable*cmake_cmake_lint_executable
g:ale_cmake_cmake_lint_executable
Type: |String|
Default: 'cmake-lint'
This variable can be set to change the path the cmake-lint.
*ale-options.cmake_cmake_lint_options*
*g:ale_cmake_cmake_lint_options*
*b:ale_cmake_cmake_lint_options*cmake_cmake_lint_options
g:ale_cmake_cmake_lint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to cmake-lint.
===============================================================================
cmake-format ale-cmake-cmakeformat
*ale-options.cmake_cmakeformat_executable*
*g:ale_cmake_cmakeformat_executable*
*b:ale_cmake_cmakeformat_executable*cmake_cmakeformat_executable
g:ale_cmake_cmakeformat_executable
Type: |String|
Default: 'cmakeformat'
This variable can be set to change the path the cmake-format.
*ale-options.cmake_cmakeformat_options*
*g:ale_cmake_cmakeformat_options*
*b:ale_cmake_cmakeformat_options*cmake_cmakeformat_options
g:ale_cmake_cmakeformat_options
Type: |String|
Default: ''
This variable can be set to pass additional options to cmake-format.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cpp (`doc/ale-cpp.txt`)
===============================================================================
ALE C++ Integration ale-cpp-options
For basic checking of problems with C++ files, ALE offers the cc linter,
which runs either clang++, or gcc. See |ale-cpp-cc|.
===============================================================================
Global Options
The following C options also apply to some C++ linters too.
- |g:ale_c_always_make|
- |g:ale_c_build_dir_names|
- |g:ale_c_build_dir|
- |g:ale_c_parse_makefile|
- |g:ale_c_parse_compile_commands|
===============================================================================
astyle ale-cpp-astyle
*ale-options.cpp_astyle_executable*
*g:ale_cpp_astyle_executable*
*b:ale_cpp_astyle_executable*cpp_astyle_executable
g:ale_cpp_astyle_executable
Type: |String|
Default: 'astyle'
This variable can be changed to use a different executable for astyle.
*ale-options.cpp_astyle_project_options*
*g:ale_cpp_astyle_project_options*
*b:ale_cpp_astyle_project_options*cpp_astyle_project_options
g:ale_cpp_astyle_project_options
Type: |String|
Default: ''
This variable can be changed to use an option file for project level
configurations. Provide only the filename of the option file that should be
present at the project's root directory.
For example, if .astylrc is specified, the file is searched in the parent
directories of the source file's directory.
===============================================================================
cc ale-cpp-cc
ale-cpp-gcc
ale-cpp-clang
*ale-options.cpp_cc_executable*
*g:ale_cpp_cc_executable*
*b:ale_cpp_cc_executable*cpp_cc_executable
g:ale_cpp_cc_executable
Type: |String|
Default: '<auto>'
This variable can be changed to use a different executable for a C++ compiler.
ALE will try to use clang++ if Clang is available, otherwise ALE will
default to checking C++ code with gcc.
*ale-options.cpp_cc_options*
*g:ale_cpp_cc_options*
*b:ale_cpp_cc_options*cpp_cc_options
g:ale_cpp_cc_options
Type: |String|
Default: '-std=c++14 -Wall'
This variable can be changed to modify flags given to the C++ compiler.
*ale-options.cpp_cc_use_header_lang_flag*
*g:ale_cpp_cc_use_header_lang_flag*
*b:ale_cpp_cc_use_header_lang_flag*cpp_cc_use_header_lang_flag
g:ale_cpp_cc_use_header_lang_flag
Type: |Number|
Default: -1
By default, ALE will use '-x c++-header' instead of '-x c++' for header
files when using Clang.
This variable can be changed to manually activate or deactivate this flag
for header files.
- When set to
-1, the default behavior is used,'-x c++-header'is used
with Clang and'-x c++'is used with other compilers. - When set to
0, the flag is deactivated,'-x c++'is always used
independently of the compiler. - When set to
1, the flag is activated,'-x c++-header'is always used
independently of the compiler.
GCC does not support '-x c++-header' when using '-' as input filename,
which is what ALE does. This why, by default, ALE only uses '-x c++-header'
with Clang.
*ale-options.cpp_cc_header_exts*
*g:ale_cpp_cc_header_exts*
*b:ale_cpp_cc_header_exts*cpp_cc_header_exts
g:ale_cpp_cc_header_exts
Type: |List|
Default: ['h', 'hpp']
This variable can be changed to modify the list of extensions of the files
considered as header files.
This variable is only used when '-x c++-header' is used instead of '-x c++',
see |g:ale_cpp_cc_use_header_lang_flag|.
===============================================================================
ccls ale-cpp-ccls
*ale-options.cpp_ccls_executable*
*g:ale_cpp_ccls_executable*
*b:ale_cpp_ccls_executable*cpp_ccls_executable
g:ale_cpp_ccls_executable
Type: |String|
Default: 'ccls'
This variable can be changed to use a different executable for ccls.
*ale-options.cpp_ccls_init_options*
*g:ale_cpp_ccls_init_options*
*b:ale_cpp_ccls_init_options*cpp_ccls_init_options
g:ale_cpp_ccls_init_options
Type: |Dictionary|
Default: {}
This variable can be changed to customize ccls initialization options.
Example: >
let g:ale_cpp_ccls_init_options = {
\ 'cacheDirectory': '/tmp/ccls',
\ 'cacheFormat': 'binary',
\ 'diagnostics': {
\ 'onOpen': 0,
\ 'opChange': 1000,
\ },
}
<
Visit https://github.com/MaskRay/ccls/wiki/Initialization-options for all
available options and explanations.
===============================================================================
clangcheck ale-cpp-clangcheck
clang-check will be run only when files are saved to disk, so thatcompile_commands.json files can be used. It is recommended to use this
linter in combination with compile_commands.json files. Therefore,clang-check linter reads the options |g:ale_c_build_dir| and
|g:ale_c_build_dir_names|. Also, setting |g:ale_c_build_dir| actually
overrides |g:ale_c_build_dir_names|.
Options
ale-options.cpp_clangcheck_executable
g:ale_cpp_clangcheck_executable
b:ale_cpp_clangcheck_executable
cpp_clangcheck_executable
g:ale_cpp_clangcheck_executable
Type: |String|
Default: 'clang-check'
This variable can be changed to use a different executable for clangcheck.
*ale-options.cpp_clangcheck_options*
*g:ale_cpp_clangcheck_options*
*b:ale_cpp_clangcheck_options*cpp_clangcheck_options
g:ale_cpp_clangcheck_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clang-check.
This variable should not be set to point to build subdirectory with
-p path/to/build option, as it is handled by the |g:ale_c_build_dir|
option.
===============================================================================
clangd ale-cpp-clangd
*ale-options.cpp_clangd_executable*
*g:ale_cpp_clangd_executable*
*b:ale_cpp_clangd_executable*cpp_clangd_executable
g:ale_cpp_clangd_executable
Type: |String|
Default: 'clangd'
This variable can be changed to use a different executable for clangd.
*ale-options.cpp_clangd_options*
*g:ale_cpp_clangd_options*
*b:ale_cpp_clangd_options*cpp_clangd_options
g:ale_cpp_clangd_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clangd.
===============================================================================
clang-format ale-cpp-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for C++.
===============================================================================
clangtidy ale-cpp-clangtidy
clang-tidy will be run only when files are saved to disk, so thatcompile_commands.json files can be used. It is recommended to use this
linter in combination with compile_commands.json files.
Therefore, clang-tidy linter reads the options |g:ale_c_build_dir| and
|g:ale_c_build_dir_names|. Also, setting |g:ale_c_build_dir| actually
overrides |g:ale_c_build_dir_names|.
Options
ale-options.cpp_clangtidy_checks
g:ale_cpp_clangtidy_checks
b:ale_cpp_clangtidy_checks
cpp_clangtidy_checks
g:ale_cpp_clangtidy_checks
Type: |List|
Default: []
The checks to enable for clang-tidy with the -checks argument.
All options will be joined with commas, and escaped appropriately for
the shell. The -checks flag can be removed entirely by setting this
option to an empty List.
*ale-options.cpp_clangtidy_executable*
*g:ale_cpp_clangtidy_executable*
*b:ale_cpp_clangtidy_executable*cpp_clangtidy_executable
g:ale_cpp_clangtidy_executable
Type: |String|
Default: 'clang-tidy'
This variable can be changed to use a different executable for clangtidy.
*ale-options.cpp_clangtidy_options*
*g:ale_cpp_clangtidy_options*
*b:ale_cpp_clangtidy_options*cpp_clangtidy_options
g:ale_cpp_clangtidy_options
Type: |String|
Default: ''
This variable can be changed to modify compiler flags given to clang-tidy.
Setting this variable to a non-empty string,
and working in a buffer where no compilation database is found using
|g:ale_c_build_dir_names| or |g:ale_c_build_dir|,
will cause the--argument to be passed toclang-tidy, which will mean
that detection ofcompile_commands.jsonfiles for compile command
databases will be disabled.
Only set this option if you want to control compiler flags
entirely manually, and nocompile_commands.jsonfile is in one
of the |g:ale_c_build_dir_names| directories of the project tree.text*ale-options.cpp_clangtidy_extra_options* *g:ale_cpp_clangtidy_extra_options* *b:ale_cpp_clangtidy_extra_options*
cpp_clangtidy_extra_options
g:ale_cpp_clangtidy_extra_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clang-tidy.
*ale-options.cpp_clangtidy_fix_errors*
*g:ale_cpp_clangtidy_fix_errors*
*b:ale_cpp_clangtidy_fix_errors*cpp_clangtidy_fix_errors
g:ale_cpp_clangtidy_fix_errors
Type: |Number|
Default: 1
This variable can be changed to disable the -fix-errors option for the
|clangtidy| fixer.
===============================================================================
clazy ale-cpp-clazy
*ale-options.cpp_clazy_executable*
*g:ale_cpp_clazy_executable*
*b:ale_cpp_clazy_executable*cpp_clazy_executable
g:ale_cpp_clazy_executable
Type: |String|
Default: 'clazy-standalone'
This variable can be changed to use a different executable for clazy.
*ale-options.cpp_clazy_checks*
*g:ale_cpp_clazy_checks*
*b:ale_cpp_clazy_checks*cpp_clazy_checks
g:ale_cpp_clazy_checks
Type: |List|
Default: ['level1']
The checks to enable for clazy with the -checks argument.
All options will be joined with commas, and escaped appropriately for
the shell. The -checks flag can be removed entirely by setting this
option to an empty List.
*ale-options.cpp_clazy_options*
*g:ale_cpp_clazy_options*
*b:ale_cpp_clazy_options*cpp_clazy_options
g:ale_cpp_clazy_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clazy.
===============================================================================
cppcheck ale-cpp-cppcheck
*ale-options.cpp_cppcheck_executable*
*g:ale_cpp_cppcheck_executable*
*b:ale_cpp_cppcheck_executable*cpp_cppcheck_executable
g:ale_cpp_cppcheck_executable
Type: |String|
Default: 'cppcheck'
This variable can be changed to use a different executable for cppcheck.
*ale-options.cpp_cppcheck_options*
*g:ale_cpp_cppcheck_options*
*b:ale_cpp_cppcheck_options*cpp_cppcheck_options
g:ale_cpp_cppcheck_options
Type: |String|
Default: '--enable=style'
This variable can be changed to modify flags given to cppcheck.
===============================================================================
cpplint ale-cpp-cpplint
*ale-options.cpp_cpplint_executable*
*g:ale_cpp_cpplint_executable*
*b:ale_cpp_cpplint_executable*cpp_cpplint_executable
g:ale_cpp_cpplint_executable
Type: |String|
Default: 'cpplint'
This variable can be changed to use a different executable for cpplint.
*ale-options.cpp_cpplint_options*
*g:ale_cpp_cpplint_options*
*b:ale_cpp_cpplint_options*cpp_cpplint_options
g:ale_cpp_cpplint_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to cpplint.
*ale-options.c_cpplint_executable*
*g:ale_c_cpplint_executable*
*b:ale_c_cpplint_executable*c_cpplint_executable
g:ale_c_cpplint_executable
Type: |String|
Default: 'cpplint'
This variable can be changed to use a different executable for cpplint.
*ale-options.c_cpplint_options*
*g:ale_c_cpplint_options*
*b:ale_c_cpplint_options*c_cpplint_options
g:ale_c_cpplint_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to cpplint.
===============================================================================
cquery ale-cpp-cquery
*ale-options.cpp_cquery_executable*
*g:ale_cpp_cquery_executable*
*b:ale_cpp_cquery_executable*cpp_cquery_executable
g:ale_cpp_cquery_executable
Type: |String|
Default: 'cquery'
This variable can be changed to use a different executable for cquery.
*ale-options.cpp_cquery_cache_directory*
*g:ale_cpp_cquery_cache_directory*
*b:ale_cpp_cquery_cache_directory*cpp_cquery_cache_directory
g:ale_cpp_cquery_cache_directory
Type: |String|
Default: '~/.cache/cquery'
This variable can be changed to decide which directory cquery uses for its
cache.
===============================================================================
cspell ale-cpp-cspell
See |ale-cspell-options|
===============================================================================
flawfinder ale-cpp-flawfinder
*ale-options.cpp_flawfinder_executable*
*g:ale_cpp_flawfinder_executable*
*b:ale_cpp_flawfinder_executable*cpp_flawfinder_executable
g:ale_cpp_flawfinder_executable
Type: |String|
Default: 'flawfinder'
This variable can be changed to use a different executable for flawfinder.
*ale-options.cpp_flawfinder_minlevel*
*g:ale_cpp_flawfinder_minlevel*
*b:ale_cpp_flawfinder_minlevel*cpp_flawfinder_minlevel
g:ale_cpp_flawfinder_minlevel
Type: |Number|
Default: 1
This variable can be changed to ignore risks under the given risk threshold.
*ale-options.cpp_flawfinder_options*
*g:ale_cpp_flawfinder_options*
*b:ale-cpp-flawfinder*cpp_flawfinder_options
g:ale_cpp_flawfinder_options
Type: |String|
Default: ''
This variable can be used to pass extra options into the flawfinder command.
===============================================================================
uncrustify ale-cpp-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cs (`doc/ale-cs.txt`)
===============================================================================
ALE C# Integration ale-cs-options
In addition to the linters that are provided with ALE, C# code can be checked
with the OmniSharp plugin. See here: https://github.com/OmniSharp/omnisharp-vim
===============================================================================
clang-format ale-cs-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for C#.
===============================================================================
csc ale-cs-csc
The |ale-cs-csc| linter checks for semantic errors when files are opened or
saved.
See |ale-lint-file-linters| for more information on linters which do not check
for problems while you type.
The csc linter uses the mono csc compiler, providing full C# 7 and newer
support, to generate a temporary module target file (/t:module). The module
includes all '*.cs' files contained in the directory tree rooted at the path
defined by the |g:ale_cs_csc_source| or |b:ale_cs_csc_source| variable and all
sub directories.
It will in future replace the |ale-cs-mcs| and |ale-cs-mcsc| linters as both
utilize the mcsc compiler which, according to the mono project, is no longer
actively developed, and only receives maintenance updates. However, because
the csc compiler does not support the -syntax option, this linter does not
offer any as-you-type syntax checking, similar to the |ale-cs-mcsc| linter.
The paths to search for additional assembly files can be specified using the
|g:ale_cs_csc_assembly_path| or |b:ale_cs_csc_assembly_path| variables.
NOTE: ALE will not find any errors in files apart from syntax errors if any
one of the source files contains a syntax error. Syntax errors must be fixed
first before other errors will be shown.
Options
ale-options.cs_csc_options
g:ale_cs_csc_options
b:ale_cs_csc_options
cs_csc_options
g:ale_cs_csc_options
Type: |String|
Default: ''
This option can be set to pass additional arguments to the csc compiler.
For example, to add the dotnet package which is not added per default: >
let g:ale_cs_mcs_options = ' /warn:4 /langversion:7.2'<
NOTE: the /unsafe option is always passed to csc.
*ale-options.cs_csc_source*
*g:ale_cs_csc_source*
*b:ale_cs_csc_source*cs_csc_source
g:ale_cs_csc_source
Type: |String|
Default: ''
This variable defines the root path of the directory tree searched for the
'*.cs' files to be linted. If this option is empty, the source file's
directory will be used.
NOTE: Currently it is not possible to specify sub directories and
directory sub trees which shall not be searched for *.cs files.
*ale-options.cs_csc_assembly_path*
*g:ale_cs_csc_assembly_path*
*b:ale_cs_csc_assembly_path*cs_csc_assembly_path
g:ale_cs_csc_assembly_path
Type: |List|
Default: []
This variable defines a list of path strings to be searched for external
assembly files. The list is passed to the csc compiler using the /lib:
flag.
*ale-options.cs_csc_assemblies*
*g:ale_cs_csc_assemblies*
*b:ale_cs_csc_assemblies*cs_csc_assemblies
g:ale_cs_csc_assemblies
Type: |List|
Default: []
This variable defines a list of external assembly (*.dll) files required
by the mono mcs compiler to generate a valid module target. The list is
passed the csc compiler using the /r: flag.
For example: >
" Compile C# programs with the Unity engine DLL file on Mac.
let g:ale_cs_mcsc_assemblies = [
\ '/Applications/Unity/Unity.app/Contents/Frameworks/Managed/UnityEngine.dll',
\ 'path-to-unityproject/obj/Debug',
]
<
===============================================================================
cspell ale-cs-cspell
See |ale-cspell-options|
===============================================================================
dotnet-format ale-cs-dotnet-format
Installation
Installing .NET SDK should probably ensure that dotnet is in your $PATH.
For .NET 6 the dotnet format tool is already included in the .NET SDK. For
.NET 5 or below you will have to manually install it using the instructions
from listed in this repository: https://github.com/dotnet/format
Options
ale-options.cs_dotnet_format_executable
g:ale_cs_dotnet_format_executable
b:ale_cs_dotnet_format_executable
cs_dotnet_format_executable
g:ale_cs_dotnet_format_executable
Type: |String|
Default: 'dotnet'
This variable can be set to specify an absolute path to the
dotnet executable (or to specify an alternate executable).
*ale-options.cs_dotnet_format_options*
*g:ale_cs_dotnet_format_options*
*b:ale_cs_dotnet_format_options*cs_dotnet_format_options
g:ale_cs_dotnet_format_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the dotnet format
fixer.
===============================================================================
dprint ale-cs-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/roslyn/.
===============================================================================
mcs ale-cs-mcs
The mcs linter looks only for syntax errors while you type. See
|ale-cs-mcsc| for the separately configured linter for checking for semantic
errors.
Options
ale-options.cs_mcs_options
g:ale_cs_mcs_options
b:ale_cs_mcs_options
cs_mcs_options
g:ale_cs_mcs_options
Type: |String|
Default: ''
This variable can be changed to pass additional flags given to mcs.
NOTE: The -unsafe flag is selected implicitly and thus does not need to be
explicitly included in the |g:ale_cs_mcs_options| or |b:ale_cs_mcs_options|
parameter.
===============================================================================
mcsc ale-cs-mcsc
The mcsc linter checks for semantic errors when files are opened or saved See
|ale-lint-file-linters| for more information on linters which do not check for
problems while you type.
The mcsc linter uses the mono mcs compiler to generate a temporary module
target file (-t:module). The module includes including all '*.cs' files
contained in the directory tree rooted at the path defined by the
|g:ale_cs_mcsc_source| or |b:ale_cs_mcsc_source| variable. variable and all
sub directories.
The paths to search for additional assembly files can be specified using the
|g:ale_cs_mcsc_assembly_path| or |b:ale_cs_mcsc_assembly_path| variables.
NOTE: ALE will not find any errors in files apart from syntax errors if any
one of the source files contains a syntax error. Syntax errors must be fixed
first before other errors will be shown.
Options
ale-options.cs_mcsc_options
g:ale_cs_mcsc_options
b:ale_cs_mcsc_options
cs_mcsc_options
g:ale_cs_mcsc_options
Type: |String|
Default: ''
This option can be set to pass additional arguments to the mcs compiler.
For example, to add the dotnet package which is not added per default: >
let g:ale_cs_mcs_options = '-pkg:dotnet'
<
NOTE: the -unsafe option is always passed to mcs.
*ale-options.cs_mcsc_source*
*g:ale_cs_mcsc_source*
*b:ale_cs_mcsc_source*cs_mcsc_source
g:ale_cs_mcsc_source
Type: |String|
Default: ''
This variable defines the root path of the directory tree searched for the
'*.cs' files to be linted. If this option is empty, the source file's
directory will be used.
NOTE: Currently it is not possible to specify sub directories and
directory sub trees which shall not be searched for *.cs files.
*ale-options.cs_mcsc_assembly_path*
*g:ale_cs_mcsc_assembly_path*
*b:ale_cs_mcsc_assembly_path*cs_mcsc_assembly_path
g:ale_cs_mcsc_assembly_path
Type: |List|
Default: []
This variable defines a list of path strings to be searched for external
assembly files. The list is passed to the mcs compiler using the -lib:
flag.
*ale-options.cs_mcsc_assemblies*
*g:ale_cs_mcsc_assemblies*
*b:ale_cs_mcsc_assemblies*cs_mcsc_assemblies
g:ale_cs_mcsc_assemblies
Type: |List|
Default: []
This variable defines a list of external assembly (*.dll) files required
by the mono mcs compiler to generate a valid module target. The list is
passed the mcs compiler using the -r: flag.
For example: >
" Compile C# programs with the Unity engine DLL file on Mac.
let g:ale_cs_mcsc_assemblies = [
\ '/Applications/Unity/Unity.app/Contents/Frameworks/Managed/UnityEngine.dll',
\ 'path-to-unityproject/obj/Debug',
]
<
===============================================================================
uncrustify ale-cs-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Css (`doc/ale-css.txt`)
===============================================================================
ALE CSS Integration ale-css-options
===============================================================================
cspell ale-css-cspell
See |ale-cspell-options|
===============================================================================
css-beautify ale-css-css-beautify
*ale-options.css_css_beautify_executable*
*g:ale_css_css_beautify_executable*
*b:ale_css_css_beautify_executable*css_css_beautify_executable
g:ale_css_css_beautify_executable
Type: |String|
Default: 'css-beautify'
See |ale-integrations-local-executables|
*ale-options.css_css_beautify_options*
*g:ale_css_css_beautify_options*
*b:ale_css_css_beautify_options*css_css_beautify_options
g:ale_css_css_beautify_options
Type: |String|
Default: ''
This variable can be set to pass additional options to css-beautify.
*ale-options.css_css_beautify_use_global*
*g:ale_css_css_beautify_use_global*
*b:ale_css_css_beautify_use_global*css_css_beautify_use_global
g:ale_css_css_beautify_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
dprint ale-css-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/malva/.
===============================================================================
fecs ale-css-fecs
fecs options for CSS is the same as the options for JavaScript, and both of
them reads ./.fecsrc as the default configuration file. See:
|ale-javascript-fecs|.
===============================================================================
prettier ale-css-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
stylelint ale-css-stylelint
*ale-options.css_stylelint_executable*
*g:ale_css_stylelint_executable*
*b:ale_css_stylelint_executable*css_stylelint_executable
g:ale_css_stylelint_executable
Type: |String|
Default: 'stylelint'
See |ale-integrations-local-executables|
*ale-options.css_stylelint_options*
*g:ale_css_stylelint_options*
*b:ale_css_stylelint_options*css_stylelint_options
g:ale_css_stylelint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to stylelint.
*ale-options.css_stylelint_use_global*
*g:ale_css_stylelint_use_global*
*b:ale_css_stylelint_use_global*css_stylelint_use_global
g:ale_css_stylelint_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
vscodecss ale-css-vscode
Website: https://github.com/hrsh7th/vscode-langservers-extracted
Installation
Install VSCode css language server either globally or locally: >
npm install vscode-langservers-extracted
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Cuda (`doc/ale-cuda.txt`)
===============================================================================
ALE CUDA Integration ale-cuda-options
===============================================================================
clang-format ale-cuda-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for CUDA.
===============================================================================
clangd ale-cuda-clangd
*ale-options.cuda_clangd_executable*
*g:ale_cuda_clangd_executable*
*b:ale_cuda_clangd_executable*cuda_clangd_executable
g:ale_cuda_clangd_executable
Type: |String|
Default: 'clangd'
This variable can be changed to use a different executable for clangd.
*ale-options.cuda_clangd_options*
*g:ale_cuda_clangd_options*
*b:ale_cuda_clangd_options*cuda_clangd_options
g:ale_cuda_clangd_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clangd.
===============================================================================
nvcc ale-cuda-nvcc
*ale-options.cuda_nvcc_executable*
*g:ale_cuda_nvcc_executable*
*b:ale_cuda_nvcc_executable*cuda_nvcc_executable
g:ale_cuda_nvcc_executable
Type: |String|
Default: 'nvcc'
This variable can be changed to use a different executable for nvcc.
Currently only nvcc 8.0 is supported.
*ale-options.cuda_nvcc_options*
*g:ale_cuda_nvcc_options*
*b:ale_cuda_nvcc_options*cuda_nvcc_options
g:ale_cuda_nvcc_options
Type: |String|
Default: '-std=c++11'
This variable can be changed to modify flags given to nvcc.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale D (`doc/ale-d.txt`)
===============================================================================
ALE D Integration ale-d-options
===============================================================================
dfmt ale-d-dfmt
*ale-options.d_dfmt_options*
*g:ale_d_dfmt_options*
*b:ale_d_dfmt_options*d_dfmt_options
g:ale_d_dfmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the dfmt fixer.
===============================================================================
dls ale-d-dls
*ale-options.d_dls_executable*
*g:ale_d_dls_executable*
*b:ale_d_dls_executable*d_dls_executable
g:ale_d_dls_executable
Type: |String|
Default: dls
See |ale-integrations-local-executables|
===============================================================================
uncrustify ale-d-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Dafny (`doc/ale-dafny.txt`)
===============================================================================
ALE Dafny Integration ale-dafny-options
===============================================================================
dafny ale-dafny-dafny
*ale-options.dafny_dafny_timelimit*
*g:ale_dafny_dafny_timelimit*
*b:ale_dafny_dafny_timelimit*dafny_dafny_timelimit
g: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:
Doc Ale Dart (`doc/ale-dart.txt`)
===============================================================================
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
ale-options.dart_analysis_server_executable
g:ale_dart_analysis_server_executable
b:ale_dart_analysis_server_executable
dart_analysis_server_executable
g:ale_dart_analysis_server_executable
Type: |String|
Default: 'dart'
This variable can be set to change the path of dart.
*ale-options.dart_analysis_server_enable_language_server*
*g:ale_dart_analysis_server_enable_language_server*
*b:ale_dart_analysis_server_enable_language_server*dart_analysis_server_enable_language_server
g:ale_dart_analysis_server_enable_language_server
Type: |Number|
Default: 1
When set to 1, ALE will use the new dart language-server command,
available from Dart version 2.16.0, to launch the language server. When set
to 0, ALE will instead use the deprecated
./snapshots/analysis_server.dart.snapshot --lsp command used by older
versions of Dart.
===============================================================================
dart-analyze ale-dart-analyze
Installation
Installing Dart should probably ensure that dart is in your $PATH.
In case it is not, 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_format_executable = '/usr/lib/dart/bin/dart'
Install Dart via whatever means. dart analyze will be included in the SDK.
Options
ale-options.dart_analyze_executable
g:ale_dart_analyze_executable
b:ale_dart_analyze_executable
dart_analyze_executable
g:ale_dart_analyze_executable
Type: |String|
Default: 'dart'
This variable can be set to specify an absolute path to the
format executable (or to specify an alternate executable).
===============================================================================
dart-format ale-dart-format
Installation
Installing Dart should probably ensure that dart is in your $PATH.
In case it is not, 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_format_executable = '/usr/lib/dart/bin/dart'
<
Options
ale-options.dart_format_executable
g:ale_dart_format_executable
b:ale_dart_format_executable
dart_format_executable
g:ale_dart_format_executable
Type: |String|
Default: 'dart'
This variable can be set to specify an absolute path to the
format executable (or to specify an alternate executable).
*ale-options.dart_format_options*
*g:ale_dart_format_options*
*b:ale_dart_format_options*dart_format_options
g:ale_dart_format_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the dart format fixer.
===============================================================================
dartfmt ale-dart-dartfmt
Installation
Installing Dart should probably ensure that dartfmt is in your $PATH.
In case it is not, try to set the executable option to its absolute path: >
" Set the executable path for dartfmt to the absolute path to it.
let g:ale_dart_dartfmt_executable = '/usr/lib/dart/bin/dartfmt'
<
Options
ale-options.dart_dartfmt_executable
g:ale_dart_dartfmt_executable
b:ale_dart_dartfmt_executable
dart_dartfmt_executable
g:ale_dart_dartfmt_executable
Type: |String|
Default: ''
This variable can be set to specify an absolute path to the
dartfmt executable (or to specify an alternate executable).
*ale-options.dart_dartfmt_options*
*g:ale_dart_dartfmt_options*
*b:ale_dart_dartfmt_options*dart_dartfmt_options
g:ale_dart_dartfmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the dartfmt fixer.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debchangelog (`doc/ale-debchangelog.txt`)
===============================================================================
ALE Debian Changelog Integration ale-debchangelog-options
===============================================================================
debian-lsp ale-debchangelog-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Options
ale-options.debchangelog_debian_lsp_executable
g:ale_debchangelog_debian_lsp_executable
b:ale_debchangelog_debian_lsp_executable
debchangelog_debian_lsp_executable
g:ale_debchangelog_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debcontrol (`doc/ale-debcontrol.txt`)
===============================================================================
ALE Debian Control Integration ale-debcontrol-options
===============================================================================
debian-lsp ale-debcontrol-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Options
ale-options.debcontrol_debian_lsp_executable
g:ale_debcontrol_debian_lsp_executable
b:ale_debcontrol_debian_lsp_executable
debcontrol_debian_lsp_executable
g:ale_debcontrol_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debcopyright (`doc/ale-debcopyright.txt`)
===============================================================================
ALE Debian Copyright Integration ale-debcopyright-options
===============================================================================
debian-lsp ale-debcopyright-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Options
ale-options.debcopyright_debian_lsp_executable
g:ale_debcopyright_debian_lsp_executable
b:ale_debcopyright_debian_lsp_executable
debcopyright_debian_lsp_executable
g:ale_debcopyright_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debsources (`doc/ale-debsources.txt`)
===============================================================================
ALE Debian Sources Integration ale-debsources-options
===============================================================================
debian-lsp ale-debsources-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Options
ale-options.debsources_debian_lsp_executable
g:ale_debsources_debian_lsp_executable
b:ale_debsources_debian_lsp_executable
debsources_debian_lsp_executable
g:ale_debsources_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debupstream (`doc/ale-debupstream.txt`)
===============================================================================
ALE Debian Upstream Metadata Integration ale-debupstream-options
===============================================================================
debian-lsp ale-debupstream-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog,
debian/watch, debian/tests/control, debian/upstream/metadata, and
debian/source/format files with features including diagnostics, completions,
and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Filetype Detection
Vim does not detect debian/upstream/metadata files by default. To enable
detection, add the following to your vimrc: >
autocmd BufNewFile,BufRead */debian/upstream/metadata setfiletype debupstream
<
Options
ale-options.debupstream_debian_lsp_executable
g:ale_debupstream_debian_lsp_executable
b:ale_debupstream_debian_lsp_executable
debupstream_debian_lsp_executable
g:ale_debupstream_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Debwatch (`doc/ale-debwatch.txt`)
===============================================================================
ALE Debian Watch Integration ale-debwatch-options
===============================================================================
debian-lsp ale-debwatch-debian-lsp
Website: https://github.com/jelmer/debian-lsp
debian-lsp is a Language Server Protocol implementation for Debian packaging
files. It supports debian/control, debian/copyright, debian/changelog,
debian/watch, and debian/source/format files with features including
diagnostics, completions, and code actions.
Installation
debian-lsp can be installed via cargo: >
cargo install debian-lsp
<
Or from Debian repositories (if available): >
apt install debian-lsp
<
Filetype Detection
Vim does not detect debian/watch files by default. To enable detection, add
the following to your vimrc: >
autocmd BufNewFile,BufRead */debian/watch setfiletype debwatch
<
Options
ale-options.debwatch_debian_lsp_executable
g:ale_debwatch_debian_lsp_executable
b:ale_debwatch_debian_lsp_executable
debwatch_debian_lsp_executable
g:ale_debwatch_debian_lsp_executable
Type: |String|
Default: 'debian-lsp'
This variable can be set to change the path to debian-lsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Desktop (`doc/ale-desktop.txt`)
===============================================================================
ALE desktop Integration ale-desktop-options
===============================================================================
desktop-file-validate ale-desktop-desktop-file-validate
ALE supports checking .desktop files with desktop-file-validate.
Options
ale-options.desktop_desktop_file_validate_options
g:ale_desktop_desktop_file_validate_options
b:ale_desktop_desktop_file_validate_options
desktop_desktop_file_validate_options
g: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:
Doc Ale Development (`doc/ale-development.txt`)
ale-development.txt For Vim version 8.0.
ale-dev
ale-development
ALE Development Documentation
===============================================================================
CONTENTS ale-development-contents
- Introduction.........................|ale-development-introduction|
- Design Goals.........................|ale-design-goals|
- Coding Standards.....................|ale-coding-standards|
- Testing ALE..........................|ale-development-tests|
4.1. Writing Linter Tests.............|ale-development-linter-tests|
4.2. Writing Fixer Tests..............|ale-development-fixer-tests|
4.3. Running Tests on Windows.........|ale-development-windows-tests| - Contributing.........................|ale-development-contributing|
5.1. Preparing a Release..............|ale-development-release|
===============================================================================
- Introduction ale-development-introduction
This document contains helpful information for ALE developers, including
design goals, information on how to run the tests, coding standards, and so
on. You should read this document if you want to get involved with ALE
development.
===============================================================================
2. Design Goals ale-design-goals
This section lists design goals for ALE, in no particular order. They are as
follows.
ALE code should be almost 100% VimL. This makes the plugin as portable as
possible.
ALE should run without needing any other plugins to be installed, to make
installation simple. ALE can integrate with other plugins for more advanced
functionality, non-essential functionality, or improving on basic first party
functionality.
ALE should check files with as many tools as possible by default, except where
they cause security issues or make excessive use of resources on modern
machines.
ALE should be free of breaking changes to the public API, which is comprised of
documented functions and options, until a major version is planned. Breaking
changes should be preceded by a deprecation phase complete with warnings.
Changes required for security may be an exception.
ALE supports Vim 8.2 and above, and Neovim 0.10.0 or newer. These are the
earliest versions of Vim and Neovim which support |+job|, |+timer|,
|+closure|, and |+lambda| features. All ALE code should be written so it is
compatible with these versions of Vim, or with version checks so particular
features can degrade or fail gracefully.
Just about everything should be documented and covered with tests.
By and large, people shouldn't pay for the functionality they don't use. Care
should be taken when adding new features, so supporting new features doesn't
degrade the general performance of anything ALE does.
LSP support will become more important as time goes on. ALE should provide
better support for LSP features as time goes on.
When merging pull requests, you should respond with Cheers! :beers:, purely
for comedy value.
===============================================================================
3. Coding Standards ale-coding-standards
The following general coding standards should be adhered to for Vim code.
- Check your Vim code with
Vintand do everything it says. ALE will check
your Vim code with Vint automatically. See: https://github.com/Kuniwak/vint
Read ALE'sDockerfileto see which version ofVintit uses. - Try to write descriptive and concise names for variables and functions.
Names shouldn't be too short or too long. Think about others reading your
code later on. - Use
snake_casenames for variables and arguments, andPascalCasenames
for functions. Prefix every variable name with its scope. (l:,g:, etc.) - Try to keep lines no longer than 80 characters, but this isn't an absolute
requirement. - Use 4 spaces for every level of indentation in Vim code.
- Add a blank line before every
function,if,for,while,try, orreturn,
which doesn't start a new level of indentation. When adding more code on the
same indentation level, also add blank lines after every corresponding end
for those mentioned keywords. This makes the logic in your code easier to
follow. - End every file with a trailing newline character, but not with extra blank
lines. Remove trailing whitespace from the ends of lines. - Write the full names of commands instead of abbreviations. For example, write
functioninstead offunc, andendifinstead ofend. - Write functions with
!, so files can be reloaded. Use the |abort| keyword
for all functions, so functions exit on the first error. - Make sure to credit yourself in files you have authored with
Author:
andDescription:comments.
In addition to the above general guidelines for the style of your code, you
should also follow some additional rules designed to prevent mistakes. Some of
these are reported with ALE's custom-linting-rules script. See
|ale-development-tests|.
- Don't leave stray
:echolines in code. Write" no-custom-checksabove
the line if you must echo something. - For strings use |is#| instead of |==#|,
is?instead of==?,isnot#
instead of!=#, andisnot?instead of!=?. This is because'x' ==# 0
returns 1, while'x' is# 0returns 0, so you will experience fewer issues
when numbers are compared with strings.isandisnotalso do not throw
errors when other objects like List or Dictionaries are compared with
strings. - Don't use the
getcwd()function in the ALE codebase. Most of ALE's code
runs from asynchronous callback functions, and these functions can execute
from essentially random buffers. Therefore, thegetcwd()output is
useless. Useexpand('#' . a:buffer . ':p:h')instead. Don't useexpand('%...')for the same reason. - Don't use the
simplify()function. It doesn't simplify paths enough. Useale#path#Simplify()instead. - Don't use the
shellescape()function. It doesn't escape arguments properly
on Windows. Useale#Escape()instead, which will avoid escaping where it
isn't needed, and generally escape arguments better on Windows. - Don't use the
tempname()function. It doesn't work when$TMPDIRisn't
set. Useale#util#Tempname()instead, which temporarily sets$TMPDIR
appropriately where needed. - Use
snake_casenames for linter names, so they can be used as part of
variable names. You can definealiasesfor linters, for other names people
might try to configure linters with. - Use |v:t_TYPE| variables instead of
type(), which are more readable.
Apply the following guidelines when writing Vader test files.
- Use 2 spaces for Vader test files, instead of the 4 spaces for Vim files.
- If you write
BeforeandAfterblocks, you should typically write them at
the top of the file, so they run for all tests. There may be some tests
where it make sense to modify theBeforeandAftercode part of the way
through the file. - If you modify any settings or global variables, reset them in
After
blocks. The VaderSaveandRestorecommands can be useful for this
purpose. - If you load or define linters in tests, write
call ale#linter#Reset()in
anAfterblock. - Just write
Executeblocks for Vader tests, and don't bother writingThen
blocks.Thenblocks execute afterAfterblocks in older versions, and
that can be confusing.
Apply the following rules when writing Bash scripts.
- Run
shellcheck, and do everything it says.
See: https://github.com/koalaman/shellcheck - Try to write scripts so they will run on Linux, BSD, or Mac OSX.
===============================================================================
4. Testing ALE ale-development-tests ale-dev-tests ale-tests
ALE is tested with a suite of tests executed via GitHub Actions. ALE runs
tests with the following versions of Vim in the following environments.
- Vim 8.2 on Linux and Windows via GitHub Actions.
- Vim 9.2 on Linux and Windows via GitHub Actions.
- Neovim 0.10 on Linux and Windows via GitHub Actions.
- Neovim 0.12 on Linux and Windows via GitHub Actions.
If you are developing ALE code on Linux, Mac OSX, or BSD, you can run ALEs
tests by installing Docker and running the run-tests script. Follow the
instructions on the Docker site for installing Docker.
See: https://docs.docker.com/install/
NOTE: Don't forget to add your user to the docker group on Linux, or Docker
just won't work. See: https://docs.docker.com/install/linux/linux-postinstall/
If you run simply ./run-tests from the ALE repository root directory, the
latest Docker image for tests will be downloaded if needed, and the script
will run all of the tests in Vader, Vint checks, and several Bash scripts for
finding extra issues. Run ./run-tests --help to see all of the options the
script supports. Note that the script supports selecting particular test files.
Once you get used to dealing with Vim and NeoVim compatibility issues, you
probably want to use ./run-tests --fast -q for running tests with only the
fastest available Vim version, and with success messages from tests
suppressed.
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 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|.
The supported tools lists are very long, so please bear in mind the meanings
of the emojis and special characters in the Vim help file.
| Key | Definition |
| -------------- | ----------------------------------------------------- |
|:speech_balloon:| Language Server Protocol (LSP) |
| :floppy_disk: | Only runs on disk (see: `help ale-lint-file-linters`) |
| :warning: | Disabled by default |<
`^` No linters for text or Vim help filetypes are enabled by default.
`!!` These linters check only files on disk. See |ale-lint-file-linters|<
If you forget to 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
Differences follow:
--- /tmp/readme.qLjNhJdB 2018-07-01 16:29:55.590331972 +0100
+++ /tmp/doc.dAi8zfVE 2018-07-01 16:29:55.582331877 +0100
@@ -1 +1 @@
- ASM: gcc, foobar
- ASM: gcc
<
Make sure to list documentation entries for linters and fixers in individual
help files in the table of contents, and to align help tags to the right
margin. For example, if you add a heading for anaardvarktool toale-python.txtwith a badly aligned doc tag, you will see errors like so. >
======================================== Look for badly aligned doc tags
Badly aligned tags follow:
doc/ale-python.txt:aardvark ...
Look for table of contents issues
Check for bad ToC sorting:
Check for mismatched ToC and headings:
--- /tmp/table-of-contents.mwCFOgSI 2018-07-01 16:33:25.068811878 +0100
+++ /tmp/headings.L4WU0hsO 2018-07-01 16:33:25.076811973 +0100
@@ -168,6 +168,7 @@
pyrex (cython), ale-pyrex-options
cython, ale-pyrex-cython
python, ale-python-options
- aardvark, ale-python-aardvark
autopep8, ale-python-autopep8
black, ale-python-black
flake8, ale-python-flake8
<
Make sure to make the table of contents match the headings, and to keep the
doc tags on the right margin.
===============================================================================
4.1 Writing Linter Tests ale-development-linter-tests
Tests for ALE linters take two forms.
- Tests for handling the output of commands.
- Tests for checking which commands are run, or connections are made.
Tests of the first form should go in the test/handler directory, and should
be written like so. >
Before:
" Load the file which defines the linter.
runtime ale_linters/filetype/linter_name_here.vim
After:
" Unload all linters again.
call ale#linter#Reset()
Execute(The output should be correct):
" Test that the right loclist items are parsed from the handler.
AssertEqual
\ [
\ {
\ 'lnum': 1,
\ 'type': 'E',
\ 'text': 'Something went wrong',
\ },
\ ],
\ ale_linters#filetype#linter_name#Handle(bufnr(''), [
\ '1:Something went wrong',
\ ]
<
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,
" clear caches, etc.
"
" Vader's 'Save' command will be called here for linter variables.
call ale#assert#SetUpLinterTest('filetype', 'linter_name')
After:
" Reset linters, variables, etc.
"
" Vader's 'Restore' command will be called here.
call ale#assert#TearDownLinterTest()
Execute(The default command should be correct):
" AssertLinter checks the executable and command.
" Pass expected_executable, expected_command
AssertLinter 'some-command', ale#Escape('some-command') . ' --foo'
Execute(Check chained commands):
" GivenCommandOutput can be called with 1 or more list for passing output
" to chained commands. The output for each callback defaults to an empty
" list.
GivenCommandOutput ['v2.1.2']
" Given a List of commands, check all of them.
" Given a String, only the last command in the chain will be checked.
AssertLinter 'some-command', [
\ ale#Escape('some-command') . ' --version',
\ ale#Escape('some-command') . ' --foo',
]
<
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.AssertLSPOptions options_dict - Check the options given to an LSP server.AssertLSPConfig config_dict - Check the config given to an LSP server.AssertLSPProject project_root - Check the root given to an LSP server.AssertLSPAddress address - Check the address to an LSP server.
===============================================================================
4.2 Writing Fixer Tests ale-development-fixer-tests
Tests for ALE fixers should go in the test/fixers directory, and should
be written like so. >
Before:
" Load the fixer and set up a series of commands, reset fixer variables,
" clear caches, etc.
"
" Vader's 'Save' command will be called here for fixer variables.
call ale#assert#SetUpFixerTest('filetype', 'fixer_name')
After:
" Reset fixers, variables, etc.
"
" Vader's 'Restore' command will be called here.
call ale#assert#TearDownFixerTest()
Execute(The default command should be correct):
" AssertFixer checks the result of the loaded fixer function.
AssertFixer {'command': ale#Escape('some-command') . ' --foo'}
Execute(Check chained commands):
" Same as above for linter tests.
GivenCommandOutput ['v2.1.2']
" Given a List of commands, check all of them.
" Given anything else, only the last result will be checked.
AssertFixer [
\ ale#Escape('some-command') . ' --version',
\ {'command': ale#Escape('some-command') . ' --foo'}
]
<
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 resultsAssertFixerNotExecuted - Check that fixers will not be executed.
===============================================================================
4.3 Running Tests on Windows ale-development-windows-tests
Tests are run for ALE on Windows via GitHub Actions using therhysd/action-setup-vim action to install Vim and Neovim. These tests can
frequently break due to minor differences in paths and how escaping is done
for commands on Windows.
The GitHub Actions workflow automatically:
- Installs the specified Vim or Neovim version.
- Clones Vader to
C:\vaderat the pinned commit. - Creates a directory junction from
C:\testpluginto the repository
checkout, so all test paths referencing/testplugin/resolve correctly. - Runs
run-tests.batwith the installed editor.
If you are a Linux or Mac user and need to run Windows tests locally, you
can use a Windows virtual machine. Here is a process for that.
First, install a Windows image with VirtualBox. Install VirtualBox and grab
a VirtualBox image for Windows such as from here:
https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
NOTE: If you need to enter a password for the virtual machine at any point,
the password is "Passw0rd!" without the double quotes.
NOTE: If your trial period for Windows runs out, run the commands like the
wallpaper tells you to.
Consult the VirtualBox documentation on how to install "Guest Additions."
You probably want to install "Guest Additions" for most things to work
properly.
After you've loaded your virtual machine image, go into "Settings" for your
virtual machine, and "Shared Folders." Add a shared folder with the name
"ale", and set the "Folder Path" to the path to your ALE repository, for
example: "/home/w0rp/ale"
Find out which drive letter "ale" has been mounted as in Windows. We'll use
"E:" as the drive letter, for example. Open the command prompt as an
administrator and type the following command to create a junction for the
"ale" directory, where "E:" is replaced with your drive letter. >
mklink /J C:\testplugin E:
<
Install Vader by opening PowerShell and running: >
git clone https://github.com/junegunn/vader.vim C:\vader
cd C:\vader
git checkout -qf c6243dd81c98350df4dec608fa972df98fa2a3af
<
Install Vim or Neovim on your Windows machine. You can download Vim from
https://github.com/vim/vim-win32-installer/releases or Neovim from
https://github.com/neovim/neovim/releases .
After you have finished installing everything, you can run the tests by
setting the VIM_EXE environment variable to the path of your Vim or
Neovim executable and running run-tests.bat. For Neovim, also setVIM_HEADLESS to --headless. >
cd C:\testplugin
set VIM_EXE=C:\path\to\vim.exe
run-tests
<
For Neovim: >
cd C:\testplugin
set VIM_EXE=C:\path\to\nvim.exe
set VIM_HEADLESS=--headless
run-tests
<
It will probably take several minutes for all of the tests to run. Be
patient. You can run a specific test by passing the filename as an argument
to the batch file, for example: run-tests test/test_c_flag_parsing.vader.
This will give you results much more quickly.
===============================================================================
5. Contributing ale-development-contributing
All integration of new code into ALE is done through GitHub pull requests.
Using that tool streamlines the process and minimizes the time and effort
required to e.g. ensure test suites are run for every change.
As for any project hosted by GitHub, the choice of platform demands every
contributor to take care to setup an account and configure it accordingly.
Due to details of our process, a difference to many other GitHub hosted
projects is that contributors who wish to keep the author fields for their
commits unaltered need to configure a public email address in their account
and profile settings. See: https://docs.github.com/en/account-and-profile/
Unless configuring GitHub to expose contact details, commits will be rewritten
to appear by USERNAME <[email protected]> .
===============================================================================
5.1 Preparing a Release ale-development-release
ALE offers release packages through GitHub, for two reasons:
- Some users like to target specific release versions rather than simply
installing the plugin frommaster. This includes users who create Linux
distribution specific packages from GitHub releases. - The releases provide a nice way to get an overview of what has changed in
ALE over time.
ALE has no fixed release schedule. Release versions are created whenever the
ALE developers feel the need to create one. ALE release versions follow the
typical Semantic Versioning scheme. See: https://semver.org/
Minor version releases for ALE should be the most common, followed by patch
releases. Every minor version release should be followed by a vA.B.x branch
such as v2.0.x for version 2.0.0 and every following patch version before2.1.0. The git branch strategy for patches is to first merge a bug fix tomaster, and then git cherry-pick a patch to a branch for a specific
version. ALE developers do not generally support anything but master or the
last minor version.
Generally ALE releases hit a major version only when there are breaking
changes to a public ALE setting or function. A "public" setting or function is
defined as any setting or function documented in the :help |ale.txt| file.
Major ALE versions ought to be so rare that they only come once a year at
most. ALE should not typically introduce any breaking changes.
If there are ever to be any breaking changes made for ALE, there should first
come a minor version release for ALE documenting all of the coming breaking
changes to ALE. It should be described how users can prepare for a breaking
change that is coming before it is done.
To create a release for ALE, you will need sufficient permissions in GitHub.
Once you do, follow these steps.
- Create a new release draft, or edit an existing one. It helps to craft
drafts ahead of time and write the last commit ID checked for release notes
on the last update to a draft.
See the releases page: https://github.com/dense-analysis/ale/releases - Examine
git logand read changes made between the last ID checked, or the
git tag of the previous release, and the current commit inmaster. - Write updates in separate sections (except where empty) for:
3.a. Breaking Changes
3.b. Deprecated Features
3.c. New Features
3.d. New Linters
3.e. New Fixers
3.f. Linter Enhancements
3.g. Fixer Enhancements
3.h. Bugs Fixed - Once you've finished writing the draft for the release, bump
s:current_ale_versioninautoload/ale.vimto the current version, and
add a line totest/test_ale_has.vaderto test for the version. See
|ale#Has()| documentation for more information. - Commit the changes after
./run-tests --fast -qpasses. - Tag the release with
git tag vA.B.C, replacingA,B, andCwith the
version numbers. Seegit tag --listfor examples. - Run
git pushandgit push --tagsto push the commit and the tag. - Edit the release draft in GitHub, select the tag you just pushed, and
publish the draft. - If you're creating a new major or minor version:
git checkout -b vA.B.x,
replacingAandBwith the major and minor versions.git pushthe new
branch, and the GitHub branch protection settings should automatically
apply to the new release branch. - You have already completed the last step.
Have fun creating ALE releases. Drink responsibly, or not at all, which is the
preference of w0rp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Dhall (`doc/ale-dhall.txt`)
===============================================================================
ALE Dhall Integration ale-dhall-options
Dhall - https://dhall-lang.org/
*ale-options.dhall_executable*
*g:ale_dhall_executable*
*b:ale_dhall_executable*dhall_executable
g:ale_dhall_executable
Type: |String|
Default: 'dhall'
*ale-options.dhall_options*
*g:ale_dhall_options*
*b:ale_dhall_options*dhall_options
g:ale_dhall_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the 'dhallexecutable. This is shared withdhall-freezeanddhall-lint`.
let g:ale_dhall_options = '--ascii'
<
===============================================================================
dhall-format ale-dhall-format
===============================================================================
dhall-freeze ale-dhall-freeze
Options
ale-options.dhall_freeze_options
g:ale_dhall_freeze_options
b:ale_dhall_freeze_options
dhall_freeze_options
g:ale_dhall_freeze_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the 'dhall freeze`
executable.
let g:ale_dhall_freeze_options = '--all'
<
===============================================================================
dhall-lint ale-dhall-lint
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Dockerfile (`doc/ale-dockerfile.txt`)
===============================================================================
ALE Dockerfile Integration ale-dockerfile-options
===============================================================================
dockerfile_lint ale-dockerfile-dockerfile_lint
*ale-options.dockerfile_dockerfile_lint_executable*
*g:ale_dockerfile_dockerfile_lint_executable*
*b:ale_dockerfile_dockerfile_lint_executable*dockerfile_dockerfile_lint_executable
g:ale_dockerfile_dockerfile_lint_executable
Type: |String|
Default: 'dockerfile_lint'
This variable can be changed to specify the executable used to run
dockerfile_lint.
*ale-options.dockerfile_dockerfile_lint_options*
*g:ale_dockerfile_dockerfile_lint_options*
*b:ale_dockerfile_dockerfile_lint_options*dockerfile_dockerfile_lint_options
g:ale_dockerfile_dockerfile_lint_options
Type: |String|
Default: ''
This variable can be changed to add additional command-line arguments to
the dockerfile lint invocation - like custom rule file definitions.
===============================================================================
dockerlinter ale-dockerfile-dockerlinter
*ale-options.dockerfile_dockerlinter_executable*
*g:ale_dockerfile_dockerlinter_executable*
*b:ale_dockerfile_dockerlinter_executable*dockerfile_dockerlinter_executable
g:ale_dockerfile_dockerlinter_executable
Type: |String|
Default: 'dockerlinter'
This variable can be changed to specify the executable used to run
dockerlinter.
*ale-options.dockerfile_dockerlinter_options*
*g:ale_dockerfile_dockerlinter_options*
*b:ale_dockerfile_dockerlinter_options*dockerfile_dockerlinter_options
g:ale_dockerfile_dockerlinter_options
Type: |String|
Default: ''
This variable can be changed to add additional command-line arguments to
the dockerfile lint invocation - like custom rule file definitions.
===============================================================================
dprint ale-dockerfile-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/dockerfile/.
===============================================================================
hadolint ale-dockerfile-hadolint
hadolint can be found at: https://github.com/hadolint/hadolint
Options
ale-options.dockerfile_hadolint_options
g:ale_dockerfile_hadolint_options
b:ale_dockerfile_hadolint_options
dockerfile_hadolint_options
g:ale_dockerfile_hadolint_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the hadolint
invocation. These arguments will be used whether docker is being used or not
(see below).
*ale-options.dockerfile_hadolint_use_docker*
*g:ale_dockerfile_hadolint_use_docker*
*b:ale_dockerfile_hadolint_use_docker*dockerfile_hadolint_use_docker
g:ale_dockerfile_hadolint_use_docker
Type: |String|
Default: 'never'
This variable controls if docker and the hadolint image are used to run this
linter: if 'never', docker will never be used; 'always' means docker will
always be used; 'yes' and docker will be used if the hadolint executable
cannot be found.
For now, the default is 'never'. This may change as ale's support for using
docker to lint evolves.
*ale-options.dockerfile_hadolint_image*
*g:ale_dockerfile_hadolint_image*
*b:ale_dockerfile_hadolint_image*dockerfile_hadolint_image
g:ale_dockerfile_hadolint_image
Type: |String|
Default: 'hadolint/hadolint'
This variable controls the docker image used to run hadolint. The default
is hadolint's author's build, and can be found at:
https://hub.docker.com/r/hadolint/hadolint/
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Elixir (`doc/ale-elixir.txt`)
===============================================================================
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:
Doc Ale Elm (`doc/ale-elm.txt`)
===============================================================================
ALE Elm Integration ale-elm-options
===============================================================================
elm-format ale-elm-elm-format
*ale-options.elm_format_executable*
*g:ale_elm_format_executable*
*b:ale_elm_format_executable*elm_format_executable
g:ale_elm_format_executable
Type: |String|
Default: 'elm-format'
See |ale-integrations-local-executables|
*ale-options.elm_format_use_global*
*g:ale_elm_format_use_global*
*b:ale_elm_format_use_global*elm_format_use_global
g:ale_elm_format_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.elm_format_options*
*g:ale_elm_format_options*
*b:ale_elm_format_options*elm_format_options
g:ale_elm_format_options
Type: |String|
Default: '--yes'
This variable can be set to pass additional options to elm-format.
===============================================================================
elm-ls ale-elm-elm-ls
*ale-options.elm_ls_executable*
*g:ale_elm_ls_executable*
*b:ale_elm_ls_executable*elm_ls_executable
g:ale_elm_ls_executable
Type: |String|
Default: 'elm-language-server'
See |ale-integrations-local-executables|
*ale-options.elm_ls_use_global*
*g:ale_elm_ls_use_global*
*b:ale_elm_ls_use_global*elm_ls_use_global
g:ale_elm_ls_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 1)
See |ale-integrations-local-executables|
*ale-options.elm_ls_elm_path*
*g:ale_elm_ls_elm_path*
*b:ale_elm_ls_elm_path*elm_ls_elm_path
g:ale_elm_ls_elm_path
Type: |String|
Default: ''
See |ale-integrations-local-executables|
*ale-options.elm_ls_elm_format_path*
*g:ale_elm_ls_elm_format_path*
*b:ale_elm_ls_elm_format_path*elm_ls_elm_format_path
g:ale_elm_ls_elm_format_path
Type: |String|
Default: ''
See |ale-integrations-local-executables|
*ale-options.elm_ls_elm_test_path*
*g:ale_elm_ls_elm_test_path*
*b:ale_elm_ls_elm_test_path*elm_ls_elm_test_path
g:ale_elm_ls_elm_test_path
Type: |String|
Default: ''
See |ale-integrations-local-executables|
*ale-options.elm_ls_elm_analyse_trigger*
*g:ale_elm_ls_elm_analyse_trigger*
*b:ale_elm_ls_elm_analyse_trigger*elm_ls_elm_analyse_trigger
g:ale_elm_ls_elm_analyse_trigger
Type: |String|
Default: 'change'
One of 'change', 'save' or 'never'
===============================================================================
elm-make ale-elm-elm-make
*ale-options.elm_make_executable*
*g:ale_elm_make_executable*
*b:ale_elm_make_executable*elm_make_executable
g:ale_elm_make_executable
Type: |String|
Default: 'elm'
See |ale-integrations-local-executables|
*ale-options.elm_make_use_global*
*g:ale_elm_make_use_global*
*b:ale_elm_make_use_global*elm_make_use_global
g:ale_elm_make_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:
Doc Ale Erlang (`doc/ale-erlang.txt`)
===============================================================================
ALE Erlang Integration ale-erlang-options
===============================================================================
dialyzer ale-erlang-dialyzer
*ale-options.erlang_dialyzer_executable*
*g:ale_erlang_dialyzer_executable*
*b:ale_erlang_dialyzer_executable*erlang_dialyzer_executable
g:ale_erlang_dialyzer_executable
Type: |String|
Default: 'dialyzer'
This variable can be changed to specify the dialyzer executable.
*ale-options.erlang_dialyzer_options*
*g:ale_erlang_dialyzer_options*
*b:ale_erlang_dialyzer_options*erlang_dialyzer_options
g: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.
ale-options.erlang_dialyzer_plt_file
g:ale_erlang_dialyzer_plt_file
b:ale_erlang_dialyzer_plt_file
erlang_dialyzer_plt_file
g:ale_erlang_dialyzer_plt_file
Type: |String|
Default: ''
This variable can be changed to specify the path to the PLT file. By
default, it will search for the PLT file inside the _build directory. If
there isn't one, it will fallback to the path $REBAR_PLT_DIR/dialyzer/plt.
Otherwise, it will default to $HOME/.dialyzer_plt.
*ale-options.erlang_dialyzer_rebar3_profile*
*g:ale_erlang_dialyzer_rebar3_profile*
*b:ale_erlang_dialyzer_rebar3_profile*erlang_dialyzer_rebar3_profile
g:ale_erlang_dialyzer_rebar3_profile
Type: |String|
Default: 'default'
This variable can be changed to specify the profile that is used to
run dialyzer with rebar3.
===============================================================================
elvis ale-erlang-elvis
*ale-options.erlang_elvis_executable*
*g:ale_erlang_elvis_executable*
*b:ale_erlang_elvis_executable*erlang_elvis_executable
g:ale_erlang_elvis_executable
Type: |String|
Default: 'elvis'
This variable can be changed to specify the elvis executable.
===============================================================================
erlang-mode ale-erlang-erlang-mode
*ale-options.erlang_erlang_mode_emacs_executable*
*g:ale_erlang_erlang_mode_emacs_executable*
*b:ale_erlang_erlang_mode_emacs_executable*erlang_erlang_mode_emacs_executable
g:ale_erlang_erlang_mode_emacs_executable
Type: |String|
Default: 'emacs'
This variable can be changed to specify the Emacs executable.
*ale-options.erlang_erlang_mode_indent_level*
*g:ale_erlang_erlang_mode_indent_level*
*b:ale_erlang_erlang_mode_indent_level*erlang_erlang_mode_indent_level
g:ale_erlang_erlang_mode_indent_level
Type: |Number|
Default: 4
Indentation of Erlang calls/clauses within blocks.
*ale-options.erlang_erlang_mode_icr_indent*
*g:ale_erlang_erlang_mode_icr_indent*
*b:ale_erlang_erlang_mode_icr_indent*erlang_erlang_mode_icr_indent
g:ale_erlang_erlang_mode_icr_indent
Type: 'nil' or |Number|
Default: 'nil'
Indentation of Erlang if/case/receive patterns. 'nil' means keeping default
behavior. When non-'nil', indent to the column of if/case/receive.
*ale-options.erlang_erlang_mode_indent_guard*
*g:ale_erlang_erlang_mode_indent_guard*
*b:ale_erlang_erlang_mode_indent_guard*erlang_erlang_mode_indent_guard
g:ale_erlang_erlang_mode_indent_guard
Type: |Number|
Default: 2
Indentation of Erlang guards.
*ale-options.erlang_erlang_mode_argument_indent*
*g:ale_erlang_erlang_mode_argument_indent*
*b:ale_erlang_erlang_mode_argument_indent*erlang_erlang_mode_argument_indent
g:ale_erlang_erlang_mode_argument_indent
Type: 'nil' or |Number|
Default: 2
Indentation of the first argument in a function call. When 'nil', indent
to the column after the '(' of the function.
*ale-options.erlang_erlang_mode_indent_tabs_mode*
*g:ale_erlang_erlang_mode_indent_tabs_mode*
*b:ale_erlang_erlang_mode_indent_tabs_mode*erlang_erlang_mode_indent_tabs_mode
g:ale_erlang_erlang_mode_indent_tabs_mode
Type: 'nil' or 't'
Default: 'nil'
Indentation can insert tabs if this is non-'nil'.
===============================================================================
erlang_ls ale-erlang-erlang_ls
*ale-options.erlang_erlang_ls_executable*
*g:ale_erlang_erlang_ls_executable*
*b:ale_erlang_erlang_ls_executable*erlang_erlang_ls_executable
g:ale_erlang_erlang_ls_executable
Type: |String|
Default: 'erlang_ls'
This variable can be changed to specify the erlang_ls executable.
*ale-options.erlang_erlang_ls_log_dir*
*g:ale_erlang_erlang_ls_log_dir*
*b:ale_erlang_erlang_ls_log_dir*erlang_erlang_ls_log_dir
g:ale_erlang_erlang_ls_log_dir
Type: |String|
Default: ''
If set this variable overrides default directory where logs will be written.
*ale-options.erlang_erlang_ls_log_level*
*g:ale_erlang_erlang_ls_log_level*
*b:ale_erlang_erlang_ls_log_level*erlang_erlang_ls_log_level
g:ale_erlang_erlang_ls_log_level
Type: |String|
Default: 'info'
This variable can be changed to specify log level.
===============================================================================
erlc ale-erlang-erlc
*ale-options.erlang_erlc_executable*
*g:ale_erlang_erlc_executable*
*b:ale_erlang_erlc_executable*erlang_erlc_executable
g:ale_erlang_erlc_executable
Type: |String|
Default: 'erlc'
This variable can be changed to specify the erlc executable.
*ale-options.erlang_erlc_options*
*g:ale_erlang_erlc_options*
*b:ale_erlang_erlc_options*erlang_erlc_options
g:ale_erlang_erlc_options
Type: |String|
Default: ''
This variable controls additional parameters passed to erlc, such as -I
or -pa.
===============================================================================
erlfmt ale-erlang-erlfmt
*ale-options.erlang_erlfmt_executable*
*g:ale_erlang_erlfmt_executable*
*b:ale_erlang_erlfmt_executable*erlang_erlfmt_executable
g:ale_erlang_erlfmt_executable
Type: |String|
Default: 'erlfmt'
This variable can be changed to specify the erlfmt executable.
*ale-options.erlang_erlfmt_options*
*g:ale_erlang_erlfmt_options*
*b:ale_erlang_erlfmt_options*erlang_erlfmt_options
g: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
*ale-options.erlang_syntaxerl_executable*
*g:ale_erlang_syntaxerl_executable*
*b:ale_erlang_syntaxerl_executable*erlang_syntaxerl_executable
g:ale_erlang_syntaxerl_executable
Type: |String|
Default: 'syntaxerl'
This variable can be changed to specify the syntaxerl executable.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Eruby (`doc/ale-eruby.txt`)
===============================================================================
ALE Eruby Integration ale-eruby-options
There are four linters for eruby files:
erberblinterubiserubihtmlbeautifierruumba
erb is in the Ruby standard library and is mostly universal. erubis is the
default parser in Rails between 3.0 and 5.1. erubi is the default in Rails
5.1 and later. ruumba can extract Ruby from eruby files and run rubocop on
the result. To selectively enable a subset, see |g:ale_linters|.
===============================================================================
erb-formatter ale-eruby-erbformatter
*ale-options.eruby_erbformatter_executable*
*g:ale_eruby_erbformatter_executable*
*b:ale_eruby_erbformatter_executable*eruby_erbformatter_executable
g:ale_eruby_erbformatter_executable
Type: |String|
Default: 'erb-formatter'
Override the invoked erb-formatter binary. This is useful for running
erb-formatter from binstubs or a bundle.
===============================================================================
erblint ale-eruby-erblint
*ale-options.eruby_erblint_executable*
*g:ale_eruby_erblint_executable*
*b:ale_eruby_erblint_executable*eruby_erblint_executable
g:ale_eruby_erblint_executable
Type: |String|
Default: 'erb_lint'
Override the invoked erblint binary. This is useful for running erblint
from binstubs or a bundle.
*ale-options.eruby_erblint_options*
*g:ale_eruby_erblint_options*
*b:ale_ruby_erblint_options*eruby_erblint_options
g:ale_eruby_erblint_options
Type: |String|
Default: ''
This variable can be change to modify flags given to erblint.
===============================================================================
htmlbeautifier ale-eruby-htmlbeautifier
*ale-options.eruby_htmlbeautifier_executable*
*g:ale_eruby_htmlbeautifier_executable*
*b:ale_eruby_htmlbeautifier_executable*eruby_htmlbeautifier_executable
g:ale_eruby_htmlbeautifier_executable
Type: |String|
Default: 'htmlbeautifier'
Override the invoked htmlbeautifier binary. This is useful for running
htmlbeautifier from binstubs or a bundle.
===============================================================================
ruumba ale-eruby-ruumba
*ale-options.eruby_ruumba_executable*
*g:ale_eruby_ruumba_executable*
*b:ale_eruby_ruumba_executable*eruby_ruumba_executable
g:ale_eruby_ruumba_executable
Type: |String|
Default: 'ruumba'
Override the invoked ruumba binary. This is useful for running ruumba
from binstubs or a bundle.
*ale-options.eruby_ruumba_options*
*g:ale_eruby_ruumba_options*
*b:ale_ruby_ruumba_options*eruby_ruumba_options
g:ale_eruby_ruumba_options
Type: |String|
Default: ''
This variable can be change to modify flags given to ruumba.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Fish (`doc/ale-fish.txt`)
===============================================================================
ALE Fish Integration ale-fish-options
Lints fish files using fish -n.
Note that fish -n is not foolproof: it sometimes gives false positives or
errors that are difficult to parse without more context. This integration skips
displaying errors if an error message is not found.
If ALE is not showing any errors but your file does not run as expected, runfish -n <file.fish> from the command line.
===============================================================================
fish_indent ale-fish-fish_indent
*ale-options.fish_fish_indent_executable*
*g:ale_fish_fish_indent_executable*
*b:ale_fish_fish_indent_executable*fish_fish_indent_executable
g:ale_fish_fish_indent_executable
Type: |String|
Default: 'fish_indent'
This variable can be changed to use a different executable for fish_indent.
*ale-options.fish_fish_indent_options*
*g:ale_fish_fish_indent_options*
*b:ale_fish_fish_indent_options*fish_fish_indent_options
g: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:
Doc Ale Fortran (`doc/ale-fortran.txt`)
===============================================================================
ALE Fortran Integration ale-fortran-options
===============================================================================
fortitude ale-fortran-fortitude
*ale-options.fortran_fortitude_executable*
*g:fortran_fortitude_executable*
*b:fortran_fortitude_executable*fortran_fortitude_executable
g:fortran_fortitude_executable
Type: |String|
Default: 'fortitude'
This variable can be changed to modify the executable used for fortitude.
*ale-options.fortran_fortitude_options*
*g:fortran_fortitude_options*
*b:fortran_fortitude_options*fortran_fortitude_options
g:fortran_fortitude_options
Type: |String|
Default: ''
This variable can be changed to modify options given to fortitude check.
===============================================================================
gcc ale-fortran-gcc
*ale-options.fortran_gcc_executable*
*g:ale_fortran_gcc_executable*
*b:ale_fortran_gcc_executable*fortran_gcc_executable
g:ale_fortran_gcc_executable
Type: |String|
Default: 'gcc'
This variable can be changed to modify the executable used for checking
Fortran code with GCC.
*ale-options.fortran_gcc_options*
*g:ale_fortran_gcc_options*
*b:ale_fortran_gcc_options*fortran_gcc_options
g:ale_fortran_gcc_options
Type: |String|
Default: '-Wall'
This variable can be changed to modify flags given to gcc.
*ale-options.fortran_gcc_use_free_form*
*g:ale_fortran_gcc_use_free_form*
*b:ale_fortran_gcc_use_free_form*fortran_gcc_use_free_form
g:ale_fortran_gcc_use_free_form
Type: |Number|
Default: 1
When set to 1, the -ffree-form flag will be used for GCC, to check files
with the free form layout. When set to 0, -ffixed-form will be used
instead, for checking files with fixed form layouts.
===============================================================================
language_server ale-fortran-language-server
*ale-options.fortran_language_server_executable*
*g:ale_fortran_language_server_executable*
*b:ale_fortran_language_server_executable*fortran_language_server_executable
g:ale_fortran_language_server_executable
Type: |String|
Default: 'fortls'
This variable can be changed to modify the executable used for the Fortran
Language Server.
*ale-options.fortran_language_server_use_global*
*g:ale_fortran_language_server_use_global*
*b:ale_fortran_language_server_use_global*fortran_language_server_use_global
g:ale_fortran_language_server_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:
Doc Ale Fountain (`doc/ale-fountain.txt`)
===============================================================================
ALE Fountain Integration ale-fountain-options
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Fuse (`doc/ale-fuse.txt`)
===============================================================================
ALE FusionScript Integration ale-fuse-options
===============================================================================
fusion-lint ale-fuse-fusionlint
*ale-options.fusion_fusionlint_executable*
*g:ale_fusion_fusionlint_executable*
*b:ale_fuse_fusionlint_executable*fusion_fusionlint_executable
g:ale_fusion_fusionlint_executable
Type: |String|
Default: 'fusion-lint'
This variable can be changed to change the path to fusion-lint.
*ale-options.fuse_fusionlint_options*
*g:ale_fuse_fusionlint_options*
*b:ale_fuse_fusionlint_options*fuse_fusionlint_options
g:ale_fuse_fusionlint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to fusion-lint.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Generic (`doc/ale-generic.txt`)
===============================================================================
ALE Generic Integration ale-generic-options
ale-integration-generic
===============================================================================
Integration Information
Some tools are not language specific. This document collects information on
ale's support for these tools.
===============================================================================
astgrep ale-generic-astgrep
'ast-grep' is a tool which can detect code patterns and offer fixes based
on various languages' abstract syntax trees (ASTs) using tree-sitter.
*ale-options.astgrep_executable*
*g:ale_astgrep_executable*
*b:ale_astgrep_executable*astgrep_executable
g:ale_astgrep_executable
Type: |String|
Default: 'ast-grep'
This variable can be modified to change the executable path for
ast-grep.
*ale-options.astgrep_scan_options*
*g:ale_astgrep_scan_options*
*b:ale_astgrep_scan_options*astgrep_scan_options
g:ale_astgrep_scan_options
Type: |String|
Default: '--update-all'
This variable can be modified to change the options when applying rules with
the ast-grep scan command.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Gitcommit (`doc/ale-gitcommit.txt`)
===============================================================================
ALE Git Commit Integration ale-gitcommit-options
===============================================================================
gitlint ale-gitcommit-gitlint
*ale-options.gitcommit_gitlint_executable*
*g:ale_gitcommit_gitlint_executable*
*b:ale_gitcommit_gitlint_executable*gitcommit_gitlint_executable
g:ale_gitcommit_gitlint_executable
Type: |String|
Default: 'gitlint'
This variable can be changed to modify the executable used for gitlint.
*ale-options.gitcommit_gitlint_options*
*g:ale_gitcommit_gitlint_options*
*b:ale_gitcommit_gitlint_options*gitcommit_gitlint_options
g:ale_gitcommit_gitlint_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the gitlint
invocation. For example, you can specify the path to a configuration file. >
let g:ale_gitcommit_gitlint_options = '-C /home/user/.config/gitlint.ini'
<
You can also disable particular error codes using this option. For example,
you can ignore errors for git commits with a missing body. >
let g:ale_gitcommit_gitlint_options = '--ignore B6'
<
ale-options.gitcommit_gitlint_use_global
g:ale_gitcommit_gitlint_use_global
b:ale_gitcommit_gitlint_use_global
gitcommit_gitlint_use_global
g:ale_gitcommit_gitlint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable controls whether or not ALE will search for gitlint in a
virtualenv directory first. If this variable is set to 1, then ALE will
always use |g:ale_gitcommit_gitlint_executable| for the executable path.
Both variables can be set with b: buffer variables instead.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Gleam (`doc/ale-gleam.txt`)
===============================================================================
ALE Gleam Integration ale-gleam-options
ale-integration-gleam
===============================================================================
gleam_format ale-gleam-gleam_format
*ale-options.gleam_gleam_format_executable*
*g:ale_gleam_gleam_format_executable*
*b:ale_gleam_gleam_format_executable*gleam_gleam_format_executable
g:ale_gleam_gleam_format_executable
Type: |String|
Default: 'gleam'
This variable can be modified to change the executable path for
gleam format.
===============================================================================
gleamlsp ale-gleam-gleamlsp
*ale-options.gleam_gleamlsp_executable*
*g:ale_gleam_gleamlsp_executable*
*b:ale_gleam_gleamlsp_executable*gleam_gleamlsp_executable
g:ale_gleam_gleamlsp_executable
Type: |String|
Default: 'gleam'
This variable can be modified to change the executable path for gleamlsp.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Glsl (`doc/ale-glsl.txt`)
===============================================================================
ALE GLSL Integration ale-glsl-options
ale-integration-glsl
===============================================================================
Integration Information
Since Vim does not detect the glsl file types out-of-the-box, you need the
runtime files for glsl from here: https://github.com/tikhomirov/vim-glsl
Note that the current glslang-based linter expects glslangValidator in
standard paths. If it's not installed system-wide you can set
|g:ale_glsl_glslang_executable| to a specific path.
===============================================================================
glslang ale-glsl-glslang
*ale-options.glsl_glslang_executable*
*g:ale_glsl_glslang_executable*
*b:ale_glsl_glslang_executable*glsl_glslang_executable
g:ale_glsl_glslang_executable
Type: |String|
Default: 'glslangValidator'
This variable can be changed to change the path to glslangValidator.
*ale-options.glsl_glslang_options*
*g:ale_glsl_glslang_options*
*b:ale_glsl_glslang_options*glsl_glslang_options
g:ale_glsl_glslang_options
Type: |String|
Default: ''
This variable can be set to pass additional options to glslangValidator.
===============================================================================
glslls ale-glsl-glslls
*ale-options.glsl_glslls_executable*
*g:ale_glsl_glslls_executable*
*b:ale_glsl_glslls_executable*glsl_glslls_executable
g:ale_glsl_glslls_executable
Type: |String|
Default: 'glslls'
This variable can be changed to change the path to glslls.
See |ale-integrations-local-executables|
*ale-options.glsl_glslls_logfile*
*g:ale_glsl_glslls_logfile*
*b:ale_glsl_glslls_logfile*glsl_glslls_logfile
g:ale_glsl_glslls_logfile
Type: |String|
Default: ''
Setting this variable to a writeable file path will enable logging to that
file.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Go (`doc/ale-go.txt`)
===============================================================================
ALE Go Integration ale-go-options
===============================================================================
Integration Information
ALE enables gofmt, gopls and go vet by default. It also supports staticcheck,go build, ``gosimple, golangserver, golangci-lint, and goimports.
To enable golangci-lint, update |g:ale_linters| as appropriate.
A possible configuration is to enable golangci-lint and `gofmt:
" Enable all of the linters you want for Go.
let g:ale_linters = {'go': ['golangci-lint', 'gofmt']}
<
ale-options.go_go_executable
g:ale_go_go_executable
b:ale_go_go_executable
go_go_executable
g:ale_go_go_executable
Type: |String|
Default: 'go'
The executable that will be run for the gobuild and govet linters, and
the gomod fixer.
*ale-options.go_go111module*
*g:ale_go_go111module*
*b:ale_go_go111module*go_go111module
g:ale_go_go111module
Type: |String|
Default: ''
Override the value of the $GO111MODULE environment variable for
golang tools.
===============================================================================
bingo ale-go-bingo
*ale-options.go_bingo_executable*
*g:ale_go_bingo_executable*
*b:ale_go_bingo_executable*go_bingo_executable
g:ale_go_bingo_executable
Type: |String|
Default: 'bingo'
Location of the bingo binary file.
*ale-options.go_bingo_options*
*g:ale_go_bingo_options*
*b:ale_go_bingo_options*go_bingo_options
g:ale_go_bingo_options
Type: |String|
Default: ''
===============================================================================
cspell ale-go-cspell
See |ale-cspell-options|
===============================================================================
dprint ale-go-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/gofumpt/.
===============================================================================
gobuild ale-go-gobuild
*ale-options.go_gobuild_options*
*g:ale_go_gobuild_options*
*b:ale_go_gobuild_options*go_gobuild_options
g:ale_go_gobuild_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the gobuild linter.
They are injected directly after "go test".
===============================================================================
gofmt ale-go-gofmt
*ale-options.go_gofmt_options*
*g:ale_go_gofmt_options*
*b:ale_go_gofmt_options*go_gofmt_options
g:ale_go_gofmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the gofmt fixer.
===============================================================================
gofumpt ale-go-gofumpt
*ale-options.go_gofumpt_executable*
*g:ale_go_gofumpt_executable*
*b:ale_go_gofumpt_executable*go_gofumpt_executable
g:ale_go_gofumpt_executable
Type: |String|
Default: 'gofumpt'
Executable to run to use as the gofumpt fixer.
*ale-options.go_gofumpt_options*
*g:ale_go_gofumpt_options*
*b:ale_go_gofumpt_options*go_gofumpt_options
g:ale_go_gofumpt_options
Type: |String|
Default: ''
Options to pass to the gofumpt fixer.
===============================================================================
goimports ale-go-goimports
*ale-options.go_goimports_executable*
*g:ale_go_goimports_executable*
*b:ale_go_goimports_executable*go_goimports_executable
g:ale_go_goimports_executable
Type: |String|
Default: 'goimports'
This variable can be set to change the executable path for goimports.
*ale-options.go_goimports_options*
*g:ale_go_goimports_options*
*b:ale_go_goimports_options*go_goimports_options
g:ale_go_goimports_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the goimports fixer.
===============================================================================
golangci-lint ale-go-golangci-lint
golangci-lint is a lint_file linter, which only lints files that are
written to disk. This differs from the default behavior of linting the buffer.
See: |ale-lint-file|
*ale-options.go_golangci_lint_executable*
*g:ale_go_golangci_lint_executable*
*b:ale_go_golangci_lint_executable*go_golangci_lint_executable
g:ale_go_golangci_lint_executable
Type: |String|
Default: 'golangci-lint'
The executable that will be run for golangci-lint.
*ale-options.go_golangci_lint_options*
*g:ale_go_golangci_lint_options*
*b:ale_go_golangci_lint_options*go_golangci_lint_options
g:ale_go_golangci_lint_options
Type: |String|
Default: ''
This variable can be changed to alter the command-line arguments to the
golangci-lint run invocation.
*ale-options.go_golangci_lint_package*
*g:ale_go_golangci_lint_package*
*b:ale_go_golangci_lint_package*go_golangci_lint_package
g:ale_go_golangci_lint_package
Type: |Number|
Default: 0
When set to 1, the whole Go package will be checked instead of only the
current file.
golangci_lint can also be user as a fixer to format go source files. In this
case the following configuration variables can be used to configure the
formatters:
*ale-options.go_golangci_formatter_executable*
*g:ale_go_golangci_formatter_executable*
*b:ale_go_golangci_formatter_executable*go_golangci_formatter_executable
g:ale_go_golangci_formatter_executable
Type: |String|
Default: 'golangci-lint'
The executable that will be run for golangci-lint.
*ale-options.go_golangci_formatter_options*
*g:ale_go_golangci_formatter_options*
*b:ale_go_golangci_formatter_options*go_golangci_formatter_options
g:ale_go_golangci_formatter_options
Type: |String|
Default: ''
This variable can be changed to alter the command-line arguments to the
golangci-lint fmt invocation.
===============================================================================
golangserver ale-go-golangserver
*ale-options.go_langserver_executable*
*g:ale_go_langserver_executable*
*b:ale_go_langserver_executable*go_langserver_executable
g:ale_go_langserver_executable
Type: |String|
Default: 'go-langserver'
Location of the go-langserver binary file.
*ale-options.go_langserver_options*
*g:ale_go_langserver_options*
*b:ale_go_langserver_options*go_langserver_options
g:ale_go_langserver_options
Type: |String|
Default: ''
Additional options passed to the go-langserver command. Note that the
-gocodecompletion option is ignored because it is handled automatically
by the |g:ale_completion_enabled| variable.
===============================================================================
golines ale-go-golines
*ale-options.go_golines_executable*
*g:ale_go_golines_executable*
*b:ale_go_lines_executable*go_golines_executable
g:ale_go_golines_executable
Type: |String|
Default: 'golines'
Location of the golines binary file
*ale-options.go_golines_options*
*g:ale_go_golines_options*
*b:ale_go_golines_options*go_golines_options
g:ale_go_golines_options
Type: |String|
Default: ''
Additional options passed to the golines command. By default golines has
--max-length=100 (lines above 100 characters will be wrapped)
===============================================================================
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
Options
ale-options.go_gopls_executable
g:ale_go_gopls_executable
b:ale_go_gopls_executable
go_gopls_executable
g:ale_go_gopls_executable
Type: |String|
Default: 'gopls'
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.
*ale-options.go_gopls_options*
*g:ale_go_gopls_options*
*b:ale_go_gopls_options*go_gopls_options
g:ale_go_gopls_options
Type: |String|
Default: ''
Command-line options passed to the gopls executable. See gopls -h.
*ale-options.go_gopls_fix_executable*
*g:ale_go_gopls_fix_executable*
*b:ale_go_gopls_fix_executable*go_gopls_fix_executable
g:ale_go_gopls_fix_executable
Type: |String|
Default: 'gopls'
Executable to run to use as the gopls fixer.
*ale-options.go_gopls_fix_options*
*g:ale_go_gopls_fix_options*
*b:ale_go_gopls_fix_options*go_gopls_fix_options
g:ale_go_gopls_fix_options
Type: |String|
Default: ''
Options to pass to the gopls fixer.
*ale-options.go_gopls_init_options*
*g:ale_go_gopls_init_options*
*b:ale_go_gopls_init_options*go_gopls_init_options
g:ale_go_gopls_init_options
Type: |Dictionary|
Default: {}
LSP initialization options passed to gopls. This can be used to configure
the behaviour of gopls.
For 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
*ale-options.go_gopls_use_global*
*g:ale_go_gopls_use_global*
*b:ale_go_gopls_use_global*go_gopls_use_global
g:ale_go_gopls_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
govet ale-go-govet
*ale-options.go_govet_options*
*g:ale_go_govet_options*
*b:ale_go_govet_options*go_govet_options
g:ale_go_govet_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the go vet linter.
===============================================================================
revive ale-go-revive
*ale-options.go_revive_executable*
*g:ale_go_revive_executable*
*b:ale_go_revive_executable*go_revive_executable
g:ale_go_revive_executable
Type: |String|
Default: 'revive'
This variable can be set to change the revive executable path.
*ale-options.go_revive_options*
*g:ale_go_revive_options*
*b:ale_go_revive_options*go_revive_options
g:ale_go_revive_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the revive
===============================================================================
staticcheck ale-go-staticcheck
*ale-options.go_staticcheck_executable*
*g:ale_go_staticcheck_executable*
*b:ale_go_staticcheck_executable*go_staticcheck_executable
g: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.
*ale-options.go_staticcheck_options*
*g:ale_go_staticcheck_options*
*b:ale_go_staticcheck_options*go_staticcheck_options
g:ale_go_staticcheck_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the staticcheck
linter.
*ale-options.go_staticcheck_lint_package*
*g:ale_go_staticcheck_lint_package*
*b:ale_go_staticcheck_lint_package*go_staticcheck_lint_package
g:ale_go_staticcheck_lint_package
Type: |Number|
Default: 1
When set to 1, the whole Go package will be checked instead of only the
current file.
*ale-options.go_staticcheck_use_global*
*g:ale_go_staticcheck_use_global*
*b:ale_go_staticcheck_use_global*go_staticcheck_use_global
g: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:
Doc Ale Gohtmltmpl (`doc/ale-gohtmltmpl.txt`)
===============================================================================
ALE Go HTML Template Integration ale-gohtmltmpl-options
===============================================================================
djlint ale-gohtmltmpl-djlint
See |ale-html-djlint|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Graphql (`doc/ale-graphql.txt`)
===============================================================================
ALE GraphQL Integration ale-graphql-options
===============================================================================
dprint ale-graphql-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/pretty_graphql/.
===============================================================================
eslint ale-graphql-eslint
The eslint linter for GraphQL uses the JavaScript options for eslint; see:
|ale-javascript-eslint|.
You will need the GraphQL ESLint plugin installed for this to work.
===============================================================================
gqlint ale-graphql-gqlint
===============================================================================
prettier ale-graphql-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Groovy (`doc/ale-groovy.txt`)
===============================================================================
ALE Groovy Integration ale-groovy-options
===============================================================================
Integration Information
Linting and fixing of Groovy files is enabled with the integration ofnpm-groovy-lint.
===============================================================================
npm-groovy-lint ale-groovy-npm-groovy-lint
*ale-options.groovy_npmgroovylint_executable*
*g:ale_groovy_npmgroovylint_executable*
*b:ale_groovy_npmgroovylint_executable*groovy_npmgroovylint_executable
g:ale_groovy_npmgroovylint_executable
Type: |String|
Default: 'npm-groovy-lint'
Location of the npm-groovy-lint binary file.
*ale-options.groovy_npmgroovylint_options*
*g:ale_groovy_npmgroovylint_options*
*b:ale_groovy_npmgroovylint_options*groovy_npmgroovylint_options
g:ale_groovy_npmgroovylint_options
Type: |String|
Default: '--loglevel warning'
Additional npm-groovy-lint linter options.
*ale-options.groovy_npmgroovylint_fix_options*
*g:ale_groovy_npmgroovylint_fix_options*
*b:ale_groovy_npmgroovylint_fix_options*groovy_npmgroovylint_fix_options
g:ale_groovy_npmgroovylint_fix_options
Type: |String|
Default: '--fix'
This variable can be used to configure fixing with npm-groovy-lint. It must
contain either --fix or --format for the fixer to work. See
npm-groovy-lint --help for more information on possible fix rules.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Hack (`doc/ale-hack.txt`)
===============================================================================
ALE Hack Integration ale-hack-options
ale-integration-hack
HHAST is disabled by default, as it executes code in the project root.
Currently linters must be enabled globally. HHAST can be enabled in ftplugin
files like so: >
let b:ale_linters = ['hack', 'hhast']
<
Or in Lua: >
require("ale").setup.buffer({linters = {"hack", "hhast"}})
<
===============================================================================
hack ale-hack-hack
*ale-options.hack_hack_executable*
*g:ale_hack_hack_executable*
*b:ale_hack_hack_executable*hack_hack_executable
g:ale_hack_hack_executable
Type: |String|
Default: 'hh_client'
This variable can be set to use a specific executable to interact with the
Hack typechecker.
===============================================================================
hackfmt ale-hack-hackfmt
*ale-options.hack_hackfmt_options*
*g:ale_hack_hackfmt_options*
*b:ale_hack_hackfmt_options*hack_hackfmt_options
g:ale_hack_hackfmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the hackfmt fixer.
===============================================================================
hhast ale-hack-hhast
*ale-options.hack_hhast_executable*
*g:ale_hack_hhast_executable*
*b:ale_hack_hhast_executable*hack_hhast_executable
g:ale_hack_hhast_executable
Type: |String|
Default: 'vendor/bin/hhast-lint'
This variable can be set to use a specific executable to interact with the
Hack typechecker.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Handlebars (`doc/ale-handlebars.txt`)
===============================================================================
ALE Handlebars Integration ale-handlebars-options
===============================================================================
djlint ale-handlebars-djlint
See |ale-html-djlint|
===============================================================================
prettier ale-handlebars-prettier
See |ale-javascript-prettier| for information about the available options.
Uses glimmer parser by default.
===============================================================================
ember-template-lint ale-handlebars-embertemplatelint
*ale-options.handlebars_embertemplatelint_executable*
*g:ale_handlebars_embertemplatelint_executable*
*b:ale_handlebars_embertemplatelint_executable*handlebars_embertemplatelint_executable
g:ale_handlebars_embertemplatelint_executable
Type: |String|
Default: 'ember-template-lint'
See |ale-integrations-local-executables|
*ale-options.handlebars_embertemplatelint_use_global*
*g:ale_handlebars_embertemplatelint_use_global*
*b:ale_handlebars_embertemplatelint_use_global*handlebars_embertemplatelint_use_global
g:ale_handlebars_embertemplatelint_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:
Doc Ale Haskell (`doc/ale-haskell.txt`)
===============================================================================
ALE Haskell Integration ale-haskell-options
===============================================================================
brittany ale-haskell-brittany
*ale-options.haskell_brittany_executable*
*g:ale_haskell_brittany_executable*
*b:ale_haskell_brittany_executable*haskell_brittany_executable
g:ale_haskell_brittany_executable
Type: |String|
Default: 'brittany'
This variable can be changed to use a different executable for brittany.
===============================================================================
cspell ale-haskell-cspell
See |ale-cspell-options|
===============================================================================
floskell ale-haskell-floskell
*ale-options.haskell_floskell_executable*
*g:ale_haskell_floskell_executable*
*b:ale_haskell_floskell_executable*haskell_floskell_executable
g:ale_haskell_floskell_executable
Type: |String|
Default: 'floskell'
This variable can be changed to use a different executable for floskell.
===============================================================================
ghc ale-haskell-ghc
*ale-options.haskell_ghc_options*
*g:ale_haskell_ghc_options*
*b:ale_haskell_ghc_options*haskell_ghc_options
g:ale_haskell_ghc_options
Type: |String|
Default: '-fno-code -v0'
This variable can be changed to modify flags given to ghc.
===============================================================================
ghc-mod ale-haskell-ghc-mod
*ale-options.haskell_ghc_mod_executable*
*g:ale_haskell_ghc_mod_executable*
*b:ale_haskell_ghc_mod_executable*haskell_ghc_mod_executable
g:ale_haskell_ghc_mod_executable
Type: |String|
Default: 'ghc-mod'
This variable can be changed to use a different executable for ghc-mod.
===============================================================================
cabal-ghc ale-haskell-cabal-ghc
*ale-options.haskell_cabal_ghc_options*
*g:ale_haskell_cabal_ghc_options*
*b:ale_haskell_cabal_ghc_options*haskell_cabal_ghc_options
g:ale_haskell_cabal_ghc_options
Type: |String|
Default: '-fno-code -v0'
This variable can be changed to modify flags given to ghc through cabal
exec.
===============================================================================
hdevtools ale-haskell-hdevtools
*ale-options.haskell_hdevtools_executable*
*g:ale_haskell_hdevtools_executable*
*b:ale_haskell_hdevtools_executable*haskell_hdevtools_executable
g:ale_haskell_hdevtools_executable
Type: |String|
Default: 'hdevtools'
This variable can be changed to use a different executable for hdevtools.
*ale-options.haskell_hdevtools_options*
*g:ale_haskell_hdevtools_options*
*b:ale_haskell_hdevtools_options*haskell_hdevtools_options
g:ale_haskell_hdevtools_options
Type: |String|
Default: get(g:, 'hdevtools_options', '-g -Wall')
This variable can be changed to modify flags given to hdevtools.
The hdevtools documentation recommends setting GHC options for hdevtools
with g:hdevtools_options. ALE will use the value of g:hdevtools_options
for the value of g:ale_haskell_hdevtools_options by default, so this
option can be respected and overridden specifically for ALE.
===============================================================================
hfmt ale-haskell-hfmt
*ale-options.haskell_hfmt_executable*
*g:ale_haskell_hfmt_executable*
*b:ale_haskell_hfmt_executable*haskell_hfmt_executable
g:ale_haskell_hfmt_executable
Type: |String|
Default: 'hfmt'
This variable can be changed to use a different executable for hfmt.
===============================================================================
hindent ale-haskell-hindent
*ale-options.haskell_hindent_executable*
*g:ale_haskell_hindent_executable*
*b:ale_haskell_hindent_executable*haskell_hindent_executable
g:ale_haskell_hindent_executable
Type: |String|
Default: 'hindent'
This variable can be changed to use a different executable for hindent.
===============================================================================
hlint ale-haskell-hlint
*ale-options.haskell_hlint_executable*
*g:ale_haskell_hlint_executable*
*b:ale_haskell_hlint_executable*haskell_hlint_executable
g:ale_haskell_hlint_executable
Type: |String|
Default: 'hlint'
This variable can be changed to use a different executable for hlint.
*ale-options.haskell_hlint_options*
*g:ale_haskell_hlint_options*
*b:ale_haskell_hlint_options*haskell_hlint_options
g:ale_haskell_hlint_options
Type: |String|
Default: ''
This variable can be used to pass extra options to the underlying hlint
executable.
===============================================================================
hls ale-haskell-hls
*ale-options.haskell_hls_executable*
*g:ale_haskell_hls_executable*
*b:ale_haskell_hls_executable*haskell_hls_executable
g:ale_haskell_hls_executable
Type: |String|
Default: 'haskell-language-server-wrapper'
This variable can be changed to use a different executable for the haskell
language server.
*ale-options.haskell_hls_config*
*g:ale_haskell_hls_config*
*b:ale_haskell_hls_config*haskell_hls_config
g:ale_haskell_hls_config
Type: |Dictionary|
Default: {}
Dictionary with configuration settings for HLS. For example, to see more
completions:
let g:ale_haskell_hls_config = {'haskell': {'maxCompletions': 250}}
<
Refer to HLS documentation for possible settings:
https://haskell-language-server.readthedocs.io/en/latest/configuration.html#language-specific-server-options
===============================================================================
stack-build ale-haskell-stack-build
*ale-options.haskell_stack_build_options*
*g:ale_haskell_stack_build_options*
*b:ale_haskell_stack_build_options*haskell_stack_build_options
g:ale_haskell_stack_build_options
Type: |String|
Default: '--fast'
We default to using '--fast'. Since Stack generates binaries, your
programs will be slower unless you separately rebuild them outside of ALE.
===============================================================================
stack-ghc ale-haskell-stack-ghc
*ale-options.haskell_stack_ghc_options*
*g:ale_haskell_stack_ghc_options*
*b:ale_haskell_stack_ghc_options*haskell_stack_ghc_options
g:ale_haskell_stack_ghc_options
Type: |String|
Default: '-fno-code -v0'
This variable can be changed to modify flags given to ghc through stack ghc
===============================================================================
stylish-haskell ale-haskell-stylish-haskell
*ale-options.haskell_stylish_haskell_executable*
*g:ale_haskell_stylish_haskell_executable*
*b:ale_haskell_stylish_haskell_executable*haskell_stylish_haskell_executable
g:ale_haskell_stylish_haskell_executable
Type: |String|
Default: 'stylish-haskell'
This variable can be changed to use a different executable for stylish-haskell.
===============================================================================
hie ale-haskell-hie
*ale-options.haskell_hie_executable*
*g:ale_haskell_hie_executable*
*b:ale_haskell_hie_executable*haskell_hie_executable
g:ale_haskell_hie_executable
Type: |String|
Default: 'hie'
This variable can be changed to use a different executable for the haskell
ide engine. i.e. 'hie-wrapper'
===============================================================================
ormolu ale-haskell-ormolu
*ale-options.haskell_ormolu_executable*
*g:ale_haskell_ormolu_executable*
*b:ale_haskell_ormolu_executable*haskell_ormolu_executable
g:ale_haskell_ormolu_executable
Type: |String|
Default: 'ormolu'
This variable can be changed to use a different executable for ormolu.
*ale-options.haskell_ormolu_options*
*g:ale_haskell_ormolu_options*
*b:ale_haskell_ormolu_options*haskell_ormolu_options
g:ale_haskell_ormolu_options
Type: |String|
Default: ''
This variable can be used to pass extra options to the underlying ormolu
executable.
===============================================================================
fourmolu ale-haskell-fourmolu
*ale-options.haskell_fourmolu_executable*
*g:ale_haskell_fourmolu_executable*
*b:ale_haskell_fourmolu_executable*haskell_fourmolu_executable
g:ale_haskell_fourmolu_executable
Type: |String|
Default: 'fourmolu'
This variable can be changed to use a different executable for fourmolu.
*ale-options.haskell_fourmolu_options*
*g:ale_haskell_fourmolu_options*
*b:ale_haskell_fourmolu_options*haskell_fourmolu_options
g:ale_haskell_fourmolu_options
Type: |String|
Default: ''
This variable can be used to pass extra options to the underlying fourmolu
executable.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Hcl (`doc/ale-hcl.txt`)
===============================================================================
ALE HCL Integration ale-hcl-options
===============================================================================
packer-fmt ale-hcl-packer-fmt
See |ale-packer-fmt-fixer| for information about the available options.
===============================================================================
terraform-fmt ale-hcl-terraform-fmt
See |ale-terraform-fmt-fixer| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Help (`doc/ale-help.txt`)
===============================================================================
ALE Help Integration ale-help-options
===============================================================================
cspell ale-help-cspell
See |ale-cspell-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Html (`doc/ale-html.txt`)
===============================================================================
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.
*ale-options.html_angular_executable*
*g:ale_html_angular_executable*
*b:ale_html_angular_executable*html_angular_executable
g:ale_html_angular_executable
Type: |String|
Default: 'ngserver'
See |ale-integrations-local-executables|
*ale-options.html_angular_use_global*
*g:ale_html_angular_use_global*
*b:ale_html_angular_use_global*html_angular_use_global
g:ale_html_angular_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
cspell ale-html-cspell
See |ale-cspell-options|
===============================================================================
djlint ale-html-djlint
djlint options for HTML are the same as the options for htmlangular,
htmldjango, jinja, handlebars, nunjucks and gotmplhtml.
*ale-options.html_djlint_executable*
*g:ale_html_djlint_executable*
*b:ale_html_djlint_executable*html_djlint_executable
g:ale_html_djlint_executable
Type: |String|
Default: 'djlint'
See |ale-integrations-local-executables|
*ale-options.html_djlint_options*
*g:ale_html_djlint_options*
*b:ale_html_djlint_options*html_djlint_options
g:ale_html_djlint_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to djlint.
===============================================================================
dprint ale-html-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markup_fmt/.
===============================================================================
fecs ale-html-fecs
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
*ale-options.html_beautify_executable*
*g:ale_html_beautify_executable*
*b:ale_html_beautify_executable*html_beautify_executable
g:ale_html_beautify_executable
Type: |String|
Default: 'html-beautify'
See |ale-integrations-local-executables|
*ale-options.html_beautify_options*
*g:ale_html_beautify_options*
*b:ale_html_beautify_options*html_beautify_options
g:ale_html_beautify_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to html-beautify.
*ale-options.html_beautify_use_global*
*g:ale_html_beautify_use_global*
*b:ale_html_beautify_use_global*html_beautify_use_global
g:ale_html_beautify_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
htmlhint ale-html-htmlhint
*ale-options.html_htmlhint_executable*
*g:ale_html_htmlhint_executable*
*b:ale_html_htmlhint_executable*html_htmlhint_executable
g:ale_html_htmlhint_executable
Type: |String|
Default: 'htmlhint'
See |ale-integrations-local-executables|
*ale-options.html_htmlhint_options*
*g:ale_html_htmlhint_options*
*b:ale_html_htmlhint_options*html_htmlhint_options
g:ale_html_htmlhint_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to HTMLHint.
*ale-options.html_htmlhint_use_global*
*g:ale_html_htmlhint_use_global*
*b:ale_html_htmlhint_use_global*html_htmlhint_use_global
g:ale_html_htmlhint_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prettier ale-html-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
rustywind ale-html-rustywind
*ale-options.html_rustywind_executable*
*g:ale_html_rustywind_executable*
*b:ale_html_rustywind_executable*html_rustywind_executable
g:ale_html_rustywind_executable
Type: |String|
Default: 'rustywind'
See |ale-integrations-local-executables|
*ale-options.html_rustywind_options*
*g:ale_html_rustywind_options*
*b:ale_html_rustywind_options*html_rustywind_options
g:ale_html_rustywind_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to rustywind.
===============================================================================
stylelint ale-html-stylelint
*ale-options.html_stylelint_executable*
*g:ale_html_stylelint_executable*
*b:ale_html_stylelint_executable*html_stylelint_executable
g:ale_html_stylelint_executable
Type: |String|
Default: 'stylelint'
See |ale-integrations-local-executables|
*ale-options.html_stylelint_options*
*g:ale_html_stylelint_options*
*b:ale_html_stylelint_options*html_stylelint_options
g:ale_html_stylelint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to stylelint.
*ale-options.html_stylelint_use_global*
*g:ale_html_stylelint_use_global*
*b:ale_html_stylelint_use_global*html_stylelint_use_global
g:ale_html_stylelint_use_global
Type: |String|
Default: 0
See |ale-integrations-local-executables|
===============================================================================
superhtml ale-html-superhtml
g:ale_html_superhtml_executable g:ale_html_superhtml_executable
b:ale_html_superhtml_executable
Type: |String|
Default: 'superhtml'
This variable can be changed to use a different executable for superhtml.
g:ale_html_superhtml_use_global g:ale_html_superhtml_use_global
b:ale_html_superhtml_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
tidy ale-html-tidy
tidy is a console application which corrects and cleans up HTML and XML
documents by fixing markup errors and upgrading legacy code to modern
standards.
Note:/usr/bin/tidy on macOS (installed by default) is too old. It was released
on 31 Oct 2006. It does not consider modern HTML specs (HTML5) and shows
outdated warnings. So |ale| ignores /usr/bin/tidy on macOS.
To use tidy on macOS, please install the latest version with Homebrew:
$ brew install tidy-html5
</usr/local/bin/tidy is installed.
Options
ale-options.html_tidy_executable
g:ale_html_tidy_executable
b:ale_html_tidy_executable
html_tidy_executable
g:ale_html_tidy_executable
Type: |String|
Default: 'tidy'
This variable can be changed to change the path to tidy.
*ale-options.html_tidy_options*
*g:ale_html_tidy_options*
*b:ale_html_tidy_options*html_tidy_options
g:ale_html_tidy_options
Type: |String|
Default: '-q -e -language en'
This variable can be changed to change the arguments provided to the
executable.
ALE will attempt to automatically detect the appropriate file encoding to
provide to html-tidy, and fall back to UTF-8 when encoding detection fails.
The recognized file encodings are as follows: ascii, big5, cp1252 (win1252),
cp850 (ibm858), cp932 (shiftjis), iso-2022-jp (iso-2022), latin1, macroman
(mac), sjis (shiftjis), utf-16le, utf-16, utf-8
*ale-options.html_tidy_use_global*
*g:ale_html_tidy_use_global*html_tidy_use_global
g:ale_html_tidy_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
vscodehtml ale-html-vscode
Website: https://github.com/hrsh7th/vscode-langservers-extracted
Installation
Install VSCode html language server either globally or locally: >
npm install vscode-langservers-extracted
<
===============================================================================
write-good ale-html-write-good
See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Htmlangular (`doc/ale-htmlangular.txt`)
===============================================================================
ALE HTML Angular Template Integration ale-htmlangular-options
===============================================================================
djlint ale-htmlangular-djlint
See |ale-html-djlint|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Htmldjango (`doc/ale-htmldjango.txt`)
===============================================================================
ALE HTML Django Template Integration ale-htmldjango-options
===============================================================================
djlint ale-htmldjango-djlint
See |ale-html-djlint|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Http (`doc/ale-http.txt`)
===============================================================================
ALE HTTP Integration ale-http-options
===============================================================================
kulala_fmt ale-http-kulala_fmt
*ale-options.http_kulala_fmt_executable*
*g:ale_http_kulala_fmt_executable*
*b:ale_http_kulala_fmt_executable*http_kulala_fmt
g:ale_http_kulala_fmt
Type: |String|
Default: 'kulala_fmt'
Override the invoked kulala_fmt binary.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Hurl (`doc/ale-hurl.txt`)
===============================================================================
ALE Hurl Integration ale-hurl-options
===============================================================================
hurlfmt ale-hurl-hurlfmt
*ale-options.hurl_hurlfmt_executable*
*g:ale_hurl_hurlfmt_executable*
*b:ale_hurl_hurlfmt_executable*hurl_hurlfmt_executable
g:ale_hurl_hurlfmt_executable
Type: |String|
Default: 'hurlfmt'
Override the invoked hurlfmt binary.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Idris (`doc/ale-idris.txt`)
===============================================================================
ALE Idris Integration ale-idris-options
===============================================================================
idris ale-idris-idris
*ale-options.idris_idris_executable*
*g:ale_idris_idris_executable*
*b:ale_idris_idris_executable*idris_idris_executable
g:ale_idris_idris_executable
Type: |String|
Default: 'idris'
This variable can be changed to change the path to idris.
*ale-options.idris_idris_options*
*g:ale_idris_idris_options*
*b:ale_idris_idris_options*idris_idris_options
g:ale_idris_idris_options
Type: |String|
Default: '--total --warnpartial --warnreach --warnipkg'
This variable can be changed to modify flags given to idris.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Ink (`doc/ale-ink.txt`)
===============================================================================
ALE Ink Integration ale-ink-options
===============================================================================
ink-language-server ale-ink-language-server
Ink Language Server - https://github.com/ephraim/ink-language-server
*ale-options.ink_ls_executable*
*g:ale_ink_ls_executable*
*b:ale_ink_ls_executable*ink_ls_executable
g:ale_ink_ls_executable
Type: |String|
Default: 'ink-language-server'
Ink language server executable.
*ale-options.ink_ls_initialization_options*
*g:ale_ink_ls_initialization_options*
*b:ale_ink_ls_initialization_options*ink_ls_initialization_options
g:ale_ink_ls_initialization_options
Type: |Dictionary|
Default: {}
Dictionary containing configuration settings that will be passed to the
language server at startup. For certain platforms and certain story
structures, the defaults will suffice. However, many projects will need to
change these settings - see the ink-language-server website for more
information.
An example of setting non-default options: >
let g:ale_ink_ls_initialization_options = {
\ 'ink': {
\ 'mainStoryPath': 'init.ink',
\ 'inklecateExecutablePath': '/usr/local/bin/inklecate',
\ 'runThroughMono': v:false,
\ },
}
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Inko (`doc/ale-inko.txt`)
===============================================================================
ALE Inko Integration ale-inko-options
ale-integration-inko
===============================================================================
inko ale-inko-inko
*ale-options.inko_inko_executable*
*g:ale_inko_inko_executable*
*b:ale_inko_inko_executable*inko_inko_executable
g: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:
Doc Ale Ispc (`doc/ale-ispc.txt`)
===============================================================================
ALE ISPC Integration ale-ispc-options
===============================================================================
ispc ale-ispc-ispc
*ale-options.ispc_ispc_executable*
*g:ale_ispc_ispc_executable*
*b:ale_ispc_ispc_executable*ispc_ispc_executable
g:ale_ispc_ispc_executable
Type: |String|
Default: 'ispc'
This variable can be changed to use a different executable for ispc.
*ale-options.ispc_ispc_options*
*g:ale_ispc_ispc_options*
*b:ale_ispc_ispc_options*ispc_ispc_options
g:ale_ispc_ispc_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to ispc.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Janet (`doc/ale-janet.txt`)
===============================================================================
ALE Janet Integration ale-janet-options
===============================================================================
janet-format ale-janet-janet-format
*ale-options.janet_janet_format_executable*
*g:ale_janet_janet_format_executable*
*b:ale_janet_janet_format_executable*janet_janet_format_executable
g:ale_janet_janet_format_executable
Type: |String|
Default: 'janet-format'
This variable sets the executable used for janet-format.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Java (`doc/ale-java.txt`)
===============================================================================
ALE Java Integration ale-java-options
===============================================================================
checkstyle ale-java-checkstyle
*ale-options.java_checkstyle_config*
*g:ale_java_checkstyle_config*
*b:ale_java_checkstyle_config*java_checkstyle_config
g:ale_java_checkstyle_config
Type: |String|
Default: '/google_checks.xml'
A path to a checkstyle configuration file.
If a configuration file is specified with |g:ale_java_checkstyle_options|,
it will be preferred over this setting.
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.
*ale-options.java_checkstyle_executable*
*g:ale_java_checkstyle_executable*
*b:ale_java_checkstyle_executable*java_checkstyle_executable
g:ale_java_checkstyle_executable
Type: |String|
Default: 'checkstyle'
This variable can be changed to modify the executable used for checkstyle.
*ale-options.java_checkstyle_options*
*g:ale_java_checkstyle_options*
*b:ale_java_checkstyle_options*java_checkstyle_options
g:ale_java_checkstyle_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to checkstyle.
If a configuration file is specified with -c, it will be used instead of
configuration files set with |g:ale_java_checkstyle_config|.
===============================================================================
clang-format ale-java-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for Java.
===============================================================================
cspell ale-java-cspell
See |ale-cspell-options|
===============================================================================
javac ale-java-javac
*ale-options.java_javac_classpath*
*g:ale_java_javac_classpath*
*b:ale_java_javac_classpath*java_javac_classpath
g:ale_java_javac_classpath
Type: |String| or |List|
Default: ''
This variable can be set to change the global classpath for Java.
*ale-options.java_javac_executable*
*g:ale_java_javac_executable*
*b:ale_java_javac_executable*java_javac_executable
g:ale_java_javac_executable
Type: |String|
Default: 'javac'
This variable can be set to change the executable path used for javac.
*ale-options.java_javac_options*
*g:ale_java_javac_options*
*b:ale_java_javac_options*java_javac_options
g:ale_java_javac_options
Type: |String|
Default: ''
This variable can be set to pass additional options to javac.
*ale-options.java_javac_sourcepath*
*g:ale_java_javac_sourcepath*
*b:ale_java_javac_sourcepath*java_javac_sourcepath
g:ale_java_javac_sourcepath
Type: |String| or |List|
Default: ''
This variable can set multiple source code paths, the source code path is a
relative path (relative to the project root directory).
The source path can be set as a String with a system-dependent path
separator. Note that the Unix path separator is a colon (:), and on
Windows the path separator is a semicolon (;). >
let g:ale_java_javac_sourcepath = 'build/gen/source/xx/main:build/gen/source'
<
The source path can be set as a List so ALE will add the appropriate path
separator for the host system automatically. >
let g:ale_java_javac_sourcepath = [
\ 'build/generated/source/querydsl/main',
\ 'target/generated-sources/source/querydsl/main',
]
<
===============================================================================
google-java-format ale-java-google-java-format
*ale-options.java_google_java_format_executable*
*g:ale_java_google_java_format_executable*
*b:ale_java_google_java_format_executable*java_google_java_format_executable
g:ale_java_google_java_format_executable
Type: |String|
Default: 'google-java-format'
See |ale-integrations-local-executables|
*ale-options.java_google_java_format_options*
*g:ale_java_google_java_format_options*
*b:ale_java_google_java_format_options*java_google_java_format_options
g:ale_java_google_java_format_options
Type: |String|
Default: ''
This variable can be set to pass additional options
===============================================================================
pmd ale-java-pmd
*ale-options.java_pmd_options*
*g:ale_java_pmd_options*
*b:ale_java_pmd_options*java_pmd_options
g:ale_java_pmd_options
Type: |String|
Default: '-R category/java/bestpractices'
This variable can be changed to modify flags given to PMD. Do not specify -f
and -d. They are added automatically.
===============================================================================
javalsp ale-java-javalsp
To enable Java LSP linter you need to download and build the vscode-javac
language server from https://github.com/georgewfraser/java-language-server.
Before building the language server you need to install pre-requisites: npm,
maven, and protobuf. You also need to have Java 13 and JAVA_HOME properly
set.
After downloading the source code and installing all pre-requisites you can
build the language server with the included build.sh script:
scripts/build.sh
This will create launch scripts for Linux, Mac, and Windows in the dist folder
within the repo:
lang_server_linux.shlang_server_mac.shlang_server_windows.sh
To let ALE use this language server you need to set the executable, as
documented below.
*ale-options.java_javalsp_executable*
*g:ale_java_javalsp_executable*
*b:ale_java_javalsp_executable*java_javalsp_executable
g:ale_java_javalsp_executable
Type: |String|
Default: ''
This variable must be set to the absolute path of the language server
launcher executable. For example: >
let g:ale_java_javalsp_executable = '/java-language-server/dist/lang_server_linux.sh'
<
ale-options.java_javalsp_config
g:ale_java_javalsp_config
b:ale_java_javalsp_config
java_javalsp_config
g:ale_java_javalsp_config
Type: |Dictionary|
Default: {}
The javalsp linter automatically detects external dependencies for Maven and
Gradle projects. In case the javalsp fails to detect some of them, you can
specify them configuring settings for the language server, such as in your
ftplugin file. >
let b:ale_java_javalsp_config = {
\ 'java': {
\ 'externalDependencies': [
\ 'junit:junit:jar:4.12:test',
\ 'junit:junit:4.1'
\ ],
\ 'classPath': [
\ 'lib/some-dependency.jar',
\ '/android-sdk/platforms/android-28.jar',
\ ],
\ },
}
<
Or in Lua: >
require("ale").setup.buffer({
java_lsp_config = {
java = {
externalDependencies = {
"junit:junit:jar:4.12:test",
"junit:junit:4.1"
},
classPath = {
"lib/some-dependency.jar",
"/android-sdk/platforms/android-28.jar",
},
},
}
})
<
The Java language server will look for the dependencies you specify in
externalDependencies array in your Maven and Gradle caches ~/.m2 and
~/.gradle.
===============================================================================
eclipselsp ale-java-eclipselsp
To enable Eclipse JDT LSP linter you need to clone and build the eclipse.jdt.ls
language server from https://github.com/eclipse/eclipse.jdt.ls. Simply
clone the source code repo and then build the plugin:
./mvnw clean verify
Note: currently, the build can only run when launched with JDK 11. More
recent versions can be used to run the server though.
After build completes the files required to run the language server will be
located inside the repository folder eclipse.jdt.ls. Please ensure to set
|g:ale_java_eclipselsp_path| to the absolute path of that folder.
You could customize compiler options and code assists of the server.
Under your project folder, modify the file .settings/org.eclipse.jdt.core.prefs
with options presented at
https://help.eclipse.org/neon/topic/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/core/JavaCore.html.
*ale-options.java_eclipselsp_path*
*g:ale_java_eclipselsp_path*
*b:ale_java_eclipselsp_path*java_eclipselsp_path
g:ale_java_eclipselsp_path
Type: |String|
Default: '$HOME/eclipse.jdt.ls'
Absolute path to the location of the eclipse.jdt.ls repository folder. Or if
you have VSCode extension installed the absolute path to the VSCode
extensions folder (e.g. $HOME/.vscode/extensions/redhat.java-0.4x.0 in
Linux).
*ale-options.java_eclipselsp_executable*
*g:ale_java_eclipselsp_executable*
*b:ale_java_eclipse_executable*java_eclipselsp_executable
g:ale_java_eclipselsp_executable
Type: |String|
Default: 'java'
This variable can be set to change the executable path used for java.
*ale-options.java_eclipselsp_config_path*
*g:ale_java_eclipselsp_config_path*
*b:ale_java_eclipse_config_path*java_eclipselsp_config_path
g:ale_java_eclipselsp_config_path
Type: |String|
Default: ''
Set this variable to change the configuration directory path used by
eclipselsp (e.g. $HOME/.jdtls in Linux). By default ALE will attempt to
use the configuration within the installation directory.
This setting is particularly useful when eclipselsp is installed in a
non-writable directory like /usr/share/java/jdtls, as is the case when
installed via system package.
*ale-options.java_eclipselsp_workspace_path*
*g:ale_java_eclipselsp_workspace_path*
*b:ale_java_eclipselsp_workspace_path*java_eclipselsp_workspace_path
g:ale_java_eclipselsp_workspace_path
Type: |String|
Default: ''
If you have Eclipse installed it is a good idea to set this variable to the
absolute path of the Eclipse workspace. If not set this value will be set to
the parent folder of the project root.
*ale-options.java_eclipselsp_javaagent*
*g:ale_java_eclipselsp_javaagent*
*b:ale_java_eclipselsp_javaagent*java_eclipselsp_javaagent
g:ale_java_eclipselsp_javaagent
Type: |String|
Default: ''
A variable to add java agent for annotation processing such as Lombok.
If you have multiple java agent files, use space to separate them.
For example: >
let g:ale_java_eclipselsp_javaagent='/eclipse/lombok.jar /eclipse/jacoco.jar'
<
===============================================================================
uncrustify ale-java-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Javascript (`doc/ale-javascript.txt`)
===============================================================================
ALE JavaScript Integration ale-javascript-options
ale-eslint-nested-configuration-files
For fixing files with ESLint, nested configuration files with root: false
are not supported. This is because ALE fixes files by writing the contents of
buffers to temporary files, and then explicitly sets the configuration file.
Configuration files which are set explicitly must be root configuration files.
If you are using nested configuration files, you should restructure your
project so your configuration files use extends instead.
See the ESLint documentation here:
http://eslint.org/docs/user-guide/configuring#extending-configuration-files
You should change the structure of your project from this: >
/path/foo/.eslintrc.js # root: true
/path/foo/bar/.eslintrc.js # root: false
<
To this: >
/path/foo/.base-eslintrc.js # Base configuration here
/path/foo/.eslintrc.js # extends: ["/path/foo/.base-eslintrc.js"]
/path/foo/bar/.eslintrc.js # extends: ["/path/foo/.base-eslintrc.js"]
<
===============================================================================
biome ale-javascript-biome
Check the docs over at |ale-typescript-biome|.
===============================================================================
clang-format ale-javascript-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for JavaScript.
===============================================================================
cspell ale-javascript-cspell
See |ale-cspell-options|
===============================================================================
deno ale-javascript-deno
Check the docs over at |ale-typescript-deno|.
===============================================================================
dprint ale-javascript-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/typescript/.
===============================================================================
eslint ale-javascript-eslint
*ale-options.javascript_eslint_executable*
*g:ale_javascript_eslint_executable*
*b:ale_javascript_eslint_executable*javascript_eslint_executable
g:ale_javascript_eslint_executable
Type: |String|
Default: 'eslint'
See |ale-integrations-local-executables|
*ale-options.javascript_eslint_options*
*g:ale_javascript_eslint_options*
*b:ale_javascript_eslint_options*javascript_eslint_options
g:ale_javascript_eslint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to eslint.
*ale-options.javascript_eslint_use_global*
*g:ale_javascript_eslint_use_global*
*b:ale_javascript_eslint_use_global*javascript_eslint_use_global
g:ale_javascript_eslint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.javascript_eslint_suppress_eslintignore*
*g:ale_javascript_eslint_suppress_eslintignore*
*b:ale_javascript_eslint_suppress_eslintignore*javascript_eslint_suppress_eslintignore
g:ale_javascript_eslint_suppress_eslintignore
Type: |Number|
Default: 0
This variable can be set to 1 to disable warnings for files being ignored
by eslint.
*ale-options.javascript_eslint_suppress_missing_config*
*g:ale_javascript_eslint_suppress_missing_config*
*b:ale_javascript_eslint_suppress_missing_config*javascript_eslint_suppress_missing_config
g:ale_javascript_eslint_suppress_missing_config
Type: |Number|
Default: 0
This variable can be set to 1 to disable errors for missing eslint
configuration files.
When turning this option on, eslint will not report any problems when no
configuration files are found.
===============================================================================
fecs ale-javascript-fecs
fecs is a lint tool for HTML/CSS/JavaScript, can be installed via:
$ npm install --save-dev fecs
And the configuration file is located at ./fecsrc, see http://fecs.baidu.com
for more options.
*ale-options.javascript_fecs_executable*
*g:ale_javascript_fecs_executable*
*b:ale_javascript_fecs_executable*javascript_fecs_executable
g:ale_javascript_fecs_executable
Type: |String|
Default: 'fecs'
See |ale-integrations-local-executables|
*ale-options.javascript_fecs_use_global*
*g:ale_javascript_fecs_use_global*
*b:ale_javascript_fecs_use_global*javascript_fecs_use_global
g:ale_javascript_fecs_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
flow ale-javascript-flow
*ale-options.javascript_flow_executable*
*g:ale_javascript_flow_executable*
*b:ale_javascript_flow_executable*javascript_flow_executable
g:ale_javascript_flow_executable
Type: |String|
Default: 'flow'
See |ale-integrations-local-executables|
*ale-options.javascript_flow_use_home_config*
*g:ale_javascript_flow_use_home_config*
*b:ale_javascript_flow_use_home_config*javascript_flow_use_home_config
g:ale_javascript_flow_use_home_config
Type: |Number|
Default: 0
When set to 1, ALE will allow Flow to be executed with configuration files
from your home directory. ALE will not run Flow with home directory
configuration files by default, as doing so can lead to Vim consuming all of
your RAM and CPU power.
*ale-options.javascript_flow_use_global*
*g:ale_javascript_flow_use_global*
*b:ale_javascript_flow_use_global*javascript_flow_use_global
g:ale_javascript_flow_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.javascript_flow_use_respect_pragma*
*g:ale_javascript_flow_use_respect_pragma*
*b:ale_javascript_flow_use_respect_pragma*javascript_flow_use_respect_pragma
g:ale_javascript_flow_use_respect_pragma
Type: |Number|
Default: 1
By default, ALE will use the --respect-pragma option for flow, so only
files with the @flow pragma are checked by ALE. This option can be set to
0 to disable that behavior, so all files can be checked by flow.
===============================================================================
importjs ale-javascript-importjs
*ale-options.javascript_importjs_executable*
*g:ale_javascript_importjs_executable*
*b:ale_javascript_importjs_executable*javascript_importjs_executable
g:ale_javascript_importjs_executable
Type: |String|
Default: 'importjs'
===============================================================================
jscs ale-javascript-jscs
*ale-options.javascript_jscs_executable*
*g:ale_javascript_jscs_executable*
*b:ale_javascript_jscs_executable*javascript_jscs_executable
g:ale_javascript_jscs_executable
Type: |String|
Default: 'jscs'
See |ale-integrations-local-executables|
*ale-options.javascript_jscs_use_global*
*g:ale_javascript_jscs_use_global*
*b:ale_javascript_jscs_use_global*javascript_jscs_use_global
g:ale_javascript_jscs_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
jshint ale-javascript-jshint
*ale-options.javascript_jshint_executable*
*g:ale_javascript_jshint_executable*
*b:ale_javascript_jshint_executable*javascript_jshint_executable
g:ale_javascript_jshint_executable
Type: |String|
Default: 'jshint'
See |ale-integrations-local-executables|
*ale-options.javascript_jshint_use_global*
*g:ale_javascript_jshint_use_global*
*b:ale_javascript_jshint_use_global*javascript_jshint_use_global
g:ale_javascript_jshint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prettier ale-javascript-prettier
*ale-options.javascript_prettier_executable*
*g:ale_javascript_prettier_executable*
*b:ale_javascript_prettier_executable*javascript_prettier_executable
g:ale_javascript_prettier_executable
Type: |String|
Default: 'prettier'
See |ale-integrations-local-executables|
*ale-options.javascript_prettier_options*
*g:ale_javascript_prettier_options*
*b:ale_javascript_prettier_options*javascript_prettier_options
g:ale_javascript_prettier_options
Type: |String|
Default: ''
This variable can be set to pass additional options to prettier.
*ale-options.javascript_prettier_use_global*
*g:ale_javascript_prettier_use_global*
*b:ale_javascript_prettier_use_global*javascript_prettier_use_global
g:ale_javascript_prettier_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prettier-eslint ale-javascript-prettier-eslint
*ale-options.javascript_prettier_eslint_executable*
*g:ale_javascript_prettier_eslint_executable*
*b:ale_javascript_prettier_eslint_executable*javascript_prettier_eslint_executable
g:ale_javascript_prettier_eslint_executable
Type: |String|
Default: 'prettier-eslint'
See |ale-integrations-local-executables|
*ale-options.javascript_prettier_eslint_options*
*g:ale_javascript_prettier_eslint_options*
*b:ale_javascript_prettier_eslint_options*javascript_prettier_eslint_options
g:ale_javascript_prettier_eslint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to prettier-eslint.
*ale-options.javascript_prettier_eslint_use_global*
*g:ale_javascript_prettier_eslint_use_global*
*b:ale_javascript_prettier_eslint_use_global*javascript_prettier_eslint_use_global
g:ale_javascript_prettier_eslint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prettier-standard ale-javascript-prettier-standard
*ale-options.javascript_prettier_standard_executable*
*g:ale_javascript_prettier_standard_executable*
*b:ale_javascript_prettier_standard_executable*javascript_prettier_standard_executable
g:ale_javascript_prettier_standard_executable
Type: |String|
Default: 'prettier-standard'
See |ale-integrations-local-executables|
*ale-options.javascript_prettier_standard_options*
*g:ale_javascript_prettier_standard_options*
*b:ale_javascript_prettier_standard_options*javascript_prettier_standard_options
g:ale_javascript_prettier_standard_options
Type: |String|
Default: ''
This variable can be set to pass additional options to prettier-standard.
*ale-options.javascript_prettier_standard_use_global*
*g:ale_javascript_prettier_standard_use_global*
*b:ale_javascript_prettier_standard_use_global*javascript_prettier_standard_use_global
g:ale_javascript_prettier_standard_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
standard ale-javascript-standard
*ale-options.javascript_standard_executable*
*g:ale_javascript_standard_executable*
*b:ale_javascript_standard_executable*javascript_standard_executable
g:ale_javascript_standard_executable
Type: |String|
Default: 'standard'
See |ale-integrations-local-executables|
*ale-options.javascript_standard_options*
*g:ale_javascript_standard_options*
*b:ale_javascript_standard_options*javascript_standard_options
g:ale_javascript_standard_options
Type: |String|
Default: ''
This variable can be set to pass additional options to standard.
*ale-options.javascript_standard_use_global*
*g:ale_javascript_standard_use_global*
*b:ale_javascript_standard_use_global*javascript_standard_use_global
g:ale_javascript_standard_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
xo ale-javascript-xo
*ale-options.javascript_xo_executable*
*g:ale_javascript_xo_executable*
*b:ale_javascript_xo_executable*javascript_xo_executable
g:ale_javascript_xo_executable
Type: |String|
Default: 'xo'
See |ale-integrations-local-executables|
*ale-options.javascript_xo_options*
*g:ale_javascript_xo_options*
*b:ale_javascript_xo_options*javascript_xo_options
g:ale_javascript_xo_options
Type: |String|
Default: ''
This variable can be set to pass additional options to xo.
*ale-options.javascript_xo_use_global*
*g:ale_javascript_xo_use_global*
*b:ale_javascript_xo_use_global*javascript_xo_use_global
g:ale_javascript_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:
Doc Ale Jinja (`doc/ale-jinja.txt`)
===============================================================================
ALE Jinja Integration ale-jinja-options
===============================================================================
djlint ale-jinja-djlint
See |ale-html-djlint|
===============================================================================
dprint ale-jinja-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markup_fmt/.
===============================================================================
j2lint ale-jinja-j2lint
*ale-options.jinja_j2lint_executable*
*g:ale_jinja_j2lint_executable*
*b:ale_jinja_j2lint_executable*jinja_j2lint_executable
g:ale_jinja_j2lint_executable
Type: |String|
Default: 'j2lint'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run j2lint'.
Set this to 'poetry' to invoke 'poetry run j2lint'.
Set this to 'uv' to invoke 'uv run j2lint'.
*ale-options.jinja_j2lint_options*
*g:ale_jinja_j2lint_options*
*b:ale_jinja_j2lint_options*jinja_j2lint_options
g:ale_jinja_j2lint_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
j2lint invocation.
*ale-options.jinja_j2lint_use_global*
*g:ale_jinja_j2lint_use_global*
*b:ale_jinja_j2lint_use_global*jinja_j2lint_use_global
g:ale_jinja_j2lint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.jinja_j2lint_auto_pipenv*
*g:ale_jinja_j2lint_auto_pipenv*
*b:ale_jinja_j2lint_auto_pipenv*jinja_j2lint_auto_pipenv
g:ale_jinja_j2lint_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.
*ale-options.jinja_j2lint_auto_poetry*
*g:ale_jinja_j2lint_auto_poetry*
*b:ale_jinja_j2lint_auto_poetry*jinja_j2lint_auto_poetry
g:ale_jinja_j2lint_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.jinja_j2lint_auto_uv*
*g:ale_jinja_j2lint_auto_uv*
*b:ale_jinja_j2lint_auto_uv*jinja_j2lint_auto_uv
g:ale_jinja_j2lint_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Json (`doc/ale-json.txt`)
===============================================================================
ALE JSON Integration ale-json-options
===============================================================================
biome ale-json-biome
Check the docs over at |ale-typescript-biome|.
===============================================================================
clang-format ale-json-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for JSON.
===============================================================================
cspell ale-json-cspell
See |ale-cspell-options|
===============================================================================
dprint ale-json-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/json/.
===============================================================================
eslint ale-json-eslint
The eslint linter for JSON uses the JavaScript options for eslint; see:
|ale-javascript-eslint|.
You will need a JSON ESLint plugin installed for this to work.
===============================================================================
fixjson ale-json-fixjson
fixjson is a JSON file fixer/formatter for humans using (relaxed) JSON5.
It provides:
- Pretty-prints JSON input
- Fixes various failures while humans writing JSON
- Fixes trailing commas objects or arrays
- Fixes missing commas for elements of objects or arrays
- Adds quotes to keys in objects
- Newlines in strings
- Hex numbers
- Fixes single quotes to double quotes
You can install it using npm:
$ npm install fixjson
<
ALE provides fixjson integration as a fixer. See |ale-fix|.
Options
ale-options.json_fixjson_executable
g:ale_json_fixjson_executable
b:ale_json_fixjson_executable
json_fixjson_executable
g:ale_json_fixjson_executable
Type: |String|
Default: 'fixjson'
The executable that will be run for fixjson.
*ale-options.json_fixjson_options*
*g:ale_json_fixjson_options*
*b:ale_json_fixjson_options*json_fixjson_options
g:ale_json_fixjson_options
Type: |String|
Default: ''
This variable can add extra options to the command executed for running
fixjson.
*ale-options.json_fixjson_use_global*
*g:ale_json_fixjson_use_global*
*b:ale_json_fixjson_use_global*json_fixjson_use_global
g:ale_json_fixjson_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
pytool ale-json-pytool
Use python's json.tool module to reformat json.
*ale-options.json_pytool_executable*
*g:ale_json_pytool_executable*
*b:ale_json_pytool_executable*json_pytool_executable
g:ale_json_pytool_executable
Type: |String|
Default: 'python'
The python executable that run to use its json.tool module. This fixer
requires python 3, which includes the json module.
*ale-options.json_pytool_options*
*g:ale_json_pytool_options*
*b:ale_json_pytool_options*json_pytool_options
g:ale_json_pytool_options
Type: |String|
Default: ''
These options are passed to the json.tool module. Example: >
let g:ale_json_pytool_options = '--sort-keys --indent 2'
< See docs for all options:
https://docs.python.org/3/library/json.html#module-json.tool
*ale-options.json_pytool_use_global*
*g:ale_json_pytool_use_global*
*b:ale_json_pytool_use_global*json_pytool_use_global
g:ale_json_pytool_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
jsonlint ale-json-jsonlint
*ale-options.json_jsonlint_executable*
*g:ale_json_jsonlint_executable*
*b:ale_json_jsonlint_executable*json_jsonlint_executable
g:ale_json_jsonlint_executable
Type: |String|
Default: 'jsonlint'
The executable that will be run for jsonlint.
*ale-options.json_jsonlint_use_global*
*g:ale_json_jsonlint_use_global*
*b:ale_json_jsonlint_use_global*json_jsonlint_use_global
g:ale_json_jsonlint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
jq ale-json-jq
*ale-options.json_jq_executable*
*g:ale_json_jq_executable*
*b:ale_json_jq_executable*json_jq_executable
g:ale_json_jq_executable
Type: |String|
Default: 'jq'
This option can be changed to change the path for jq.
*ale-options.json_jq_options*
*g:ale_json_jq_options*
*b:ale_json_jq_options*json_jq_options
g:ale_json_jq_options
Type: |String|
Default: ''
This option can be changed to pass extra options to jq.
*ale-options.json_jq_filters*
*g:ale_json_jq_filters*
*b:ale_json_jq_filters*json_jq_filters
g:ale_json_jq_filters
Type: |String|
Default: '.'
This option can be changed to pass custom filters to jq.
===============================================================================
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
*ale-options.json_spectral_executable*
*g:ale_json_spectral_executable*
*b:ale_json_spectral_executable*json_spectral_executable
g:ale_json_spectral_executable
Type: |String|
Default: 'spectral'
This variable can be set to change the path to spectral.
*ale-options.json_spectral_use_global*
*g:ale_json_spectral_use_global*
*b:ale_json_spectral_use_global*json_spectral_use_global
g:ale_json_spectral_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
vscodejson ale-json-vscode
Website: https://github.com/hrsh7th/vscode-langservers-extracted
Installation
Install VSCode json language server either globally or locally: >
npm install vscode-langservers-extracted
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Json5 (`doc/ale-json5.txt`)
===============================================================================
ALE JSON5 Integration ale-json5-options
===============================================================================
eslint ale-json5-eslint
The eslint linter for JSON uses the JavaScript options for eslint; see:
|ale-javascript-eslint|.
You will need a JSON5 ESLint plugin installed for this to work.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Jsonc (`doc/ale-jsonc.txt`)
===============================================================================
ALE JSONC Integration ale-jsonc-options
===============================================================================
biome ale-jsonc-biome
Check the docs over at |ale-typescript-biome|.
===============================================================================
eslint ale-jsonc-eslint
The eslint linter for JSON uses the JavaScript options for eslint; see:
|ale-javascript-eslint|.
You will need a JSONC ESLint plugin installed for this to work.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Jsonnet (`doc/ale-jsonnet.txt`)
===============================================================================
ALE Jsonnet Integration ale-jsonnet-options
===============================================================================
jsonnetfmt ale-jsonnet-jsonnetfmt
*ale-options.jsonnet_jsonnetfmt_executable*
*g:ale_jsonnet_jsonnetfmt_executable*
*b:ale_jsonnet_jsonnetfmt_executable*jsonnet_jsonnetfmt_executable
g:ale_jsonnet_jsonnetfmt_executable
Type: |String|
Default: 'jsonnetfmt'
This option can be changed to change the path for jsonnetfmt.
*ale-options.jsonnet_jsonnetfmt_options*
*g:ale_jsonnet_jsonnetfmt_options*
*b:ale_jsonnet_jsonnetfmt_options*jsonnet_jsonnetfmt_options
g:ale_jsonnet_jsonnetfmt_options
Type: |String|
Default: ''
This option can be changed to pass extra options to jsonnetfmt.
===============================================================================
jsonnet-lint ale-jsonnet-jsonnet-lint
*ale-options.jsonnet_jsonnet_lint_executable*
*g:ale_jsonnet_jsonnet_lint_executable*
*b:ale_jsonnet_jsonnet_lint_executable*jsonnet_jsonnet_lint_executable
g:ale_jsonnet_jsonnet_lint_executable
Type: |String|
Default: 'jsonnet-lint'
This option can be changed to change the path for jsonnet-lint.
*ale-options.jsonnet_jsonnet_lint_options*
*g:ale_jsonnet_jsonnet_lint_options*
*b:ale_jsonnet_jsonnet_lint_options*jsonnet_jsonnet_lint_options
g:ale_jsonnet_jsonnet_lint_options
Type: |String|
Default: ''
This option can be changed to pass extra options to jsonnet-lint.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Julia (`doc/ale-julia.txt`)
===============================================================================
ALE Julia Integration ale-julia-options
===============================================================================
fatou ale-julia-fatou
fatou is a language server, formatter, and linter for Julia. The fatou linter
runs the language server (fatou lsp) to report diagnostics, and the fatou
fixer formats Julia with fatou format.
Project-level configuration is read from a fatou.toml file discovered by
walking up from the file being edited. See https://github.com/jolars/fatou for
more information.
*ale-options.julia_fatou_executable*
*g:ale_julia_fatou_executable*
*b:ale_julia_fatou_executable*julia_fatou_executable
g:ale_julia_fatou_executable
Type: |String|
Default: 'fatou'
This variable can be changed to change the path to fatou.
*ale-options.julia_fatou_options*
*g:ale_julia_fatou_options*
*b:ale_julia_fatou_options*julia_fatou_options
g:ale_julia_fatou_options
Type: |String|
Default: ''
This variable can be changed to pass additional arguments to the fatou format command used by the fixer.
===============================================================================
languageserver ale-julia-languageserver
To enable Julia LSP linter you need to install the LanguageServer.jl package
within julia.
*ale-options.julia_executable*
*g:ale_julia_executable*
*b:ale_julia_executable*julia_executable
g:ale_julia_executable
Type: |String|
Default: 'julia'
Path to the julia exetuable.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Kotlin (`doc/ale-kotlin.txt`)
===============================================================================
ALE Kotlin Integration ale-kotlin-options
ale-integration-kotlin
===============================================================================
Integration Information
Make sure your setup has support for the kotlin file type. A filetype plugin
can be found here: https://github.com/udalov/kotlin-vim
Note: Make sure you have a working kotlin compiler
===============================================================================
kotlinc ale-kotlin-kotlinc
*ale-options.kotlin_kotlinc_options*
*g:ale_kotlin_kotlinc_options*
*b:ale_kotlin_kotlinc_options*kotlin_kotlinc_options
g:ale_kotlin_kotlinc_options
Type: |String|
Default: ''
Additional options to pass to the kotlin compiler
*ale-options.kotlin_kotlinc_enable_config*
*g:ale_kotlin_kotlinc_enable_config*
*b:ale_kotlin_kotlinc_enable_config*kotlin_kotlinc_enable_config
g:ale_kotlin_kotlinc_enable_config
Type: |Number|
Default: 0
Setting this variable to 1 tells the linter to load a configuration file.
This should be set in your vimrc
*ale-options.kotlin_kotlinc_config_file*
*g:ale_kotlin_kotlinc_config_file*
*b:ale_kotlin_kotlinc_config_file*kotlin_kotlinc_config_file
g:ale_kotlin_kotlinc_config_file
Type: |String|
Default: '.ale_kotlin_kotlinc_config'
Filename of the configuration file. This should be set in your vimrc
*ale-options.kotlin_kotlinc_classpath*
*g:ale_kotlin_kotlinc_classpath*
*b:ale_kotlin_kotlinc_classpath*kotlin_kotlinc_classpath
g:ale_kotlin_kotlinc_classpath
Type: |String|
Default: ''
A string containing the paths (separated by the appropriate path separator)
of the source directories.
*ale-options.kotlin_kotlinc_sourcepath*
*g:ale_kotlin_kotlinc_sourcepath*
*b:ale_kotlin_kotlinc_sourcepath*kotlin_kotlinc_sourcepath
g:ale_kotlin_kotlinc_sourcepath
Type: |String|
Default: ''
A string containing the paths (separated by space) of the source
directories.
*ale-options.kotlin_kotlinc_use_module_file*
*g:ale_kotlin_kotlinc_use_module_file*
*b:ale_kotlin_kotlinc_use_module_file*kotlin_kotlinc_use_module_file
g:ale_kotlin_kotlinc_use_module_file
Type: |Number|
Default: 0
This option indicates whether the linter should use a module file. It is off
by default.
*ale-options.kotlin_kotlinc_module_filename*
*g:ale_kotlin_kotlinc_module_filename*
*b:ale_kotlin_kotlinc_module_filename*kotlin_kotlinc_module_filename
g:ale_kotlin_kotlinc_module_filename
Type: |String|
Default: 'module.xml'
The filename of the module file that the linter should pass to the kotlin
compiler.
===============================================================================
ktlint ale-kotlin-ktlint
*ale-options.kotlin_ktlint_executable*
*g:ale_kotlin_ktlint_executable*
*b:ale_kotlin_ktlint_executable*kotlin_ktlint_executable
g:ale_kotlin_ktlint_executable
Type: |String|
Default: ''
The Ktlint executable.
Posix-compliant shell scripts are the only executables that can be found on
Ktlint's github release page. If you are not on such a system, your best
bet will be to download the ktlint jar and set this option to something
similar to 'java -jar /path/to/ktlint.jar'
*ale-options.kotlin_ktlint_rulesets*
*g:ale_kotlin_ktlint_rulesets*
*b:ale_kotlin_ktlint_rulesets*kotlin_ktlint_rulesets
g:ale_kotlin_ktlint_rulesets
Type: |List|
Default: []
This list should contain paths to ruleset jars and/or strings of maven
artifact triples. Example: >
let g:ale_kotlin_ktlint_rulesets = ['/path/to/custom-ruleset.jar',
'com.ktlint.rulesets:mycustomrule:1.0.0']
<
ale-options.kotlin_ktlint_options
g:ale_kotlin_ktlint_options
b:ale_kotlin_ktlint_options
kotlin_ktlint_options
g:ale_kotlin_ktlint_options
Type: |String|
Default: ''
Options to pass to ktlint for both linting and fixing. For example: >
let g:ale_kotlin_ktlint_options = '--android'
<
===============================================================================
languageserver ale-kotlin-languageserver
*ale-options.kotlin_languageserver_executable*
*g:ale_kotlin_languageserver_executable*
*b:ale_kotlin_languageserver_executable*kotlin_languageserver_executable
g:ale_kotlin_languageserver_executable
Type: |String|
Default: ''
The kotlin-language-server executable.
Executables are located inside the bin/ folder of the language server
release.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Latex (`doc/ale-latex.txt`)
===============================================================================
ALE LaTeX Integration ale-latex-options
===============================================================================
cspell ale-latex-cspell
===============================================================================
write-good ale-latex-write-good
See |ale-write-good-options|
===============================================================================
textlint ale-latex-textlint
See |ale-text-textlint|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Lean (`doc/ale-lean.txt`)
===============================================================================
ALE Lean Integration ale-lean-options
ale-integration-lean
===============================================================================
Integration Information
Currently, the only supported LSP for Lean 4 is lake.
===============================================================================
lake ale-lean-lake
g:ale_lean_lake_executable g:ale_lean_lake_executable
b:ale_lean_lake_executable
Type: |String|
Default: 'lake'
This variable can be modified to change the executable path for lake.
g:ale_lean_lake_config g:ale_lean_lake_config
b:ale_lean_lake_config
Type: |Dictionary|
Default: {}
Dictionary with configuration settings for lake.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Less (`doc/ale-less.txt`)
===============================================================================
ALE Less Integration ale-less-options
===============================================================================
dprint ale-less-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/malva/.
===============================================================================
lessc ale-less-lessc
*ale-options.less_lessc_executable*
*g:ale_less_lessc_executable*
*b:ale_less_lessc_executable*less_lessc_executable
g:ale_less_lessc_executable
Type: |String|
Default: 'lessc'
See |ale-integrations-local-executables|
*ale-options.less_lessc_options*
*g:ale_less_lessc_options*
*b:ale_less_lessc_options*less_lessc_options
g:ale_less_lessc_options
Type: |String|
Default: ''
This variable can be set to pass additional options to lessc.
*ale-options.less_lessc_use_global*
*g:ale_less_lessc_use_global*
*b:ale_less_lessc_use_global*less_lessc_use_global
g:ale_less_lessc_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prettier ale-less-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
stylelint ale-less-stylelint
*ale-options.less_stylelint_executable*
*g:ale_less_stylelint_executable*
*b:ale_less_stylelint_executable*less_stylelint_executable
g:ale_less_stylelint_executable
Type: |String|
Default: 'stylelint'
See |ale-integrations-local-executables|
*ale-options.less_stylelint_options*
*g:ale_less_stylelint_options*
*b:ale_less_stylelint_options*less_stylelint_options
g:ale_less_stylelint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to stylelint.
*ale-options.less_stylelint_use_global*
*g:ale_less_stylelint_use_global*
*b:ale_less_stylelint_use_global*less_stylelint_use_global
g:ale_less_stylelint_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:
Doc Ale Lilypond (`doc/ale-lilypond.txt`)
===============================================================================
ALE LilyPond Integration ale-lilypond-options
===============================================================================
lilypond ale-lilypond
g:ale_lilypond_lilypond_executable g:ale_lilypond_lilypond_executable
b:ale_lilypond_lilypond_executable
Type: |String|
Default: 'lilypond'
This variable can be changed to modify the executable used for lilypond.
g:ale_lilypond_lilypond_options g:ale_lilypond_lilypond_options
b:ale_lilypond_lilypond_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to lilypond.
For example, to add custom include paths: >
let g:ale_lilypond_lilypond_options = '--include=/path/to/includes'<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Llvm (`doc/ale-llvm.txt`)
===============================================================================
ALE LLVM Integration ale-llvm-options
===============================================================================
llc ale-llvm-llc
*ale-options.llvm_llc_executable*
*g:ale_llvm_llc_executable*
*b:ale_llvm_llc_executable*llvm_llc_executable
g:ale_llvm_llc_executable
Type: |String|
Default: "llc"
The command to use for checking. This variable is useful when llc command
has suffix like "llc-5.0".
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Lua (`doc/ale-lua.txt`)
===============================================================================
ALE Lua Integration ale-lua-options
===============================================================================
cspell ale-lua-cspell
See |ale-cspell-options|
===============================================================================
lua-format ale-lua-lua-format
*ale-options.lua_lua_format_executable*
*g:ale_lua_lua_format_executable*
*b:ale_lua_lua_format_executable*lua_lua_format_executable
g:ale_lua_lua_format_executable
Type: |String|
Default: 'lua-format'
This variable can be changed to change the path to lua-format.
*ale-options.lua_lua_format_options*
*g:ale_lua_lua_format_options*
*b:ale_lua_lua_format_options*lua_lua_format_options
g:ale_lua_lua_format_options
Type: |String|
Default: ''
This variable can be set to pass additional options to lua-format.
===============================================================================
lua-language-server ale-lua-lua-language-server
ale-lua-language-server
*ale-options.lua_language_server_executable*
*g:ale_lua_language_server_executable*
*b:ale_lua_language_server_executable*lua_language_server_executable
g:ale_lua_language_server_executable
Type: |String|
Default: 'lua-language-server'
This variable can be changed to set the path to lua-language-server.
If you have compiled the language server yourself in /some/path, the path
will be '/some/path/bin/lua-language-server'.
*ale-options.lua_language_server_config*
*g:ale_lua_language_server_config*
*b:ale_lua_language_server_config*lua_language_server_config
g:ale_lua_language_server_config
Type: |Dictionary|
Default: {}
Dictionary containing configuration settings that will be passed to the
language server.
For available configuration parameters, see Settings on the luals wiki:
https://luals.github.io/wiki/settings/
===============================================================================
luac ale-lua-luac
*ale-options.lua_luac_executable*
*g:ale_lua_luac_executable*
*b:ale_lua_luac_executable*lua_luac_executable
g:ale_lua_luac_executable
Type: |String|
Default: 'luac'
This variable can be changed to change the path to luac.
===============================================================================
luacheck ale-lua-luacheck
*ale-options.lua_luacheck_executable*
*g:ale_lua_luacheck_executable*
*b:ale_lua_luacheck_executable*lua_luacheck_executable
g:ale_lua_luacheck_executable
Type: |String|
Default: 'luacheck'
This variable can be changed to change the path to luacheck.
*ale-options.lua_luacheck_options*
*g:ale_lua_luacheck_options*
*b:ale_lua_luacheck_options*lua_luacheck_options
g:ale_lua_luacheck_options
Type: |String|
Default: ''
This variable can be set to pass additional options to luacheck.
===============================================================================
luafmt ale-lua-luafmt
*ale-options.lua_luafmt_executable*
*g:ale_lua_luafmt_executable*
*b:ale_lua_luafmt_executable*lua_luafmt_executable
g:ale_lua_luafmt_executable
Type: |String|
Default: 'luafmt'
This variable can be set to use a different executable for luafmt.
*ale-options.lua_luafmt_options*
*g:ale_lua_luafmt_options*
*b:ale_lua_luafmt_options*lua_luafmt_options
g:ale_lua_luafmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the luafmt fixer.
===============================================================================
selene ale-lua-selene
*ale-options.lua_selene_executable*
*g:ale_lua_selene_executable*
*b:ale_lua_selene_executable*lua_selene_executable
g:ale_lua_selene_executable
Type: |String|
Default: 'selene'
This variable can be set to use a different executable for selene.
*ale-options.lua_selene_options*
*g:ale_lua_selene_options*
*b:ale_lua_selene_options*lua_selene_options
g:ale_lua_selene_options
Type: |String|
Default: ''
This variable can be set to pass additional options to selene.
===============================================================================
stylua ale-lua-stylua
*ale-options.lua_stylua_executable*
*g:ale_lua_stylua_executable*
*b:ale_lua_stylua_executable*lua_stylua_executable
g:ale_lua_stylua_executable
Type: |String|
Default: 'stylua'
This variable can be set to use a different executable for stylua.
*ale-options.lua_stylua_options*
*g:ale_lua_stylua_options*
*b:ale_lua_stylua_options*lua_stylua_options
g:ale_lua_stylua_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the stylua fixer.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Make (`doc/ale-make.txt`)
===============================================================================
ALE Make Integration ale-make-options
===============================================================================
checkmake ale-make-checkmake
*ale-options.make_checkmake_config*
*g:ale_make_checkmake_config*
*b:ale_make_checkmake_config*make_checkmake_config
g:ale_make_checkmake_config
Type: |String|
Default: ''
This variable can be used to set the --config option of checkmake command.
if the value is empty, the checkmake command will not be invoked with the
option.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Markdown (`doc/ale-markdown.txt`)
===============================================================================
ALE Markdown Integration ale-markdown-options
===============================================================================
cspell ale-markdown-cspell
See |ale-cspell-options|
===============================================================================
dprint ale-markdown-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markdown/.
===============================================================================
harper ale-markdown-harper
*ale-options.markdown_harper_config*
*g:ale_markdown_harper_config*
*b:ale_markdown_harper_config*markdown_harper_config
g:ale_markdown_harper_config
Type: |Dictionary|
Default: {'harper-ls': {'diagnosticSeverity': 'hint', 'dialect': 'American', ...}}
Dictionary passed to harper-ls as LSP workspace configuration. The default
enables spell check, sentence capitalization, repeated words, long
sentences, a/an errors, and spacing rules, and disables spelled-out numbers
and wrong-quote checks.
Example: >
let g:ale_markdown_harper_config = {
\ 'harper-ls': {
\ 'diagnosticSeverity': 'warning',
\ 'linters': {
\ 'SpellCheck': v:true,
\ 'LongSentences': v:false,
\ },
\ },
}
<
===============================================================================
markdownlint-cli ale-markdown-markdownlint-cli
ale-markdown-markdownlint
https://github.com/igorshubovych/markdownlint-cli
The linter name is markdownlint_cli. markdownlint and
markdownlint-cli are aliases. The fixer name is markdownlint-cli;
markdownlint is an alias.
*ale-options.markdown_markdownlint_executable*
*g:ale_markdown_markdownlint_executable*
*b:ale_markdown_markdownlint_executable*markdown_markdownlint_executable
g:ale_markdown_markdownlint_executable
Type: |String|
Default: 'markdownlint'
Override the markdownlint-cli executable used by the linter.
*ale-options.markdown_markdownlint_options*
*g:ale_markdown_markdownlint_options*
*b:ale_markdown_markdownlint_options*markdown_markdownlint_options
g:ale_markdown_markdownlint_options
Type: |String|
Default: ''
This variable can be set to pass additional linter options to
markdownlint-cli.
*ale-options.markdownlint_executable*
*g:ale_markdownlint_executable*
*b:ale_markdownlint_executable*markdownlint_executable
g:ale_markdownlint_executable
Type: |String|
Default: 'markdownlint'
Override the markdownlint-cli executable used by the fixer.
*ale-options.markdownlint_options*
*g:ale_markdownlint_options*
*b:ale_markdownlint_options*markdownlint_options
g:ale_markdownlint_options
Type: |String|
Default: ''
This variable can be set to pass additional fixer options to
markdownlint-cli. ALE always adds the required --fix option.
===============================================================================
markdownlint-cli2 ale-markdown-markdownlint-cli2
https://github.com/DavidAnson/markdownlint-cli2
The linter name is markdownlint_cli2, with markdownlint-cli2 as an
alias. The fixer name is markdownlint-cli2.
*ale-options.markdown_markdownlint_cli2_executable*
*g:ale_markdown_markdownlint_cli2_executable*
*b:ale_markdown_markdownlint_cli2_executable*markdown_markdownlint_cli2_executable
g:ale_markdown_markdownlint_cli2_executable
Type: |String|
Default: 'markdownlint-cli2'
Override the markdownlint-cli2 executable used by the linter.
*ale-options.markdown_markdownlint_cli2_options*
*g:ale_markdown_markdownlint_cli2_options*
*b:ale_markdown_markdownlint_cli2_options*markdown_markdownlint_cli2_options
g:ale_markdown_markdownlint_cli2_options
Type: |String|
Default: ''
This variable can be set to pass additional linter options to
markdownlint-cli2.
*ale-options.markdownlint_cli2_executable*
*g:ale_markdownlint_cli2_executable*
*b:ale_markdownlint_cli2_executable*markdownlint_cli2_executable
g:ale_markdownlint_cli2_executable
Type: |String|
Default: 'markdownlint-cli2'
Override the markdownlint-cli2 executable used by the fixer.
*ale-options.markdownlint_cli2_options*
*g:ale_markdownlint_cli2_options*
*b:ale_markdownlint_cli2_options*markdownlint_cli2_options
g:ale_markdownlint_cli2_options
Type: |String|
Default: ''
This variable can be set to pass additional fixer options to
markdownlint-cli2. ALE always adds the required --fix option.
===============================================================================
marksman ale-markdown-marksman
*ale-options.markdown_marksman_executable*
*g:ale_markdown_marksman_executable*
*b:ale_markdown_marksman_executable*markdown_marksman_executable
g:ale_markdown_marksman_executable
Type: |String|
Default: 'marksman'
Override the invoked marksman binary.
===============================================================================
mdformat ale-markdown-mdformat
*ale-options.markdown_mdformat_executable*
*g:ale_markdown_mdformat_executable*
*b:ale_markdown_mdformat_executable*markdown_mdformat_executable
g:ale_markdown_mdformat_executable
Type: |String|
Default: 'mdformat'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke pipenv run mdformat.
Set this to 'poetry' to invoke poetry run mdformat.
Set this to 'uv' to invoke uv run mdformat.
*ale-options.markdown_mdformat_options*
*g:ale_markdown_mdformat_options*
*b:ale_markdown_mdformat_options*markdown_mdformat_options
g:ale_markdown_mdformat_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to mdformat.
*ale-options.markdown_mdformat_use_global*
*g:ale_markdown_mdformat_use_global*
*b:ale_markdown_mdformat_use_global*markdown_mdformat_use_global
g:ale_markdown_mdformat_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.markdown_mdformat_auto_pipenv*
*g:ale_markdown_mdformat_auto_pipenv*
*b:ale_markdown_mdformat_auto_pipenv*markdown_mdformat_auto_pipenv
g:ale_markdown_mdformat_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.
*ale-options.markdown_mdformat_auto_poetry*
*g:ale_markdown_mdformat_auto_poetry*
*b:ale_markdown_mdformat_auto_poetry*markdown_mdformat_auto_poetry
g:ale_markdown_mdformat_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a Poetry project, and set the executable
to poetry if true. This is overridden by a manually-set executable.
*ale-options.markdown_mdformat_auto_uv*
*g:ale_markdown_mdformat_auto_uv*
*b:ale_markdown_mdformat_auto_uv*markdown_mdformat_auto_uv
g:ale_markdown_mdformat_auto_uv
Type: |Number|
Default: 0
Detect whether the file is inside a uv project, and set the executable to
uv if true. This is overridden by a manually-set executable.
===============================================================================
mdl ale-markdown-mdl
*ale-options.markdown_mdl_executable*
*g:ale_markdown_mdl_executable*
*b:ale_markdown_mdl_executable*markdown_mdl_executable
g:ale_markdown_mdl_executable
Type: |String|
Default: 'mdl'
Override the invoked mdl binary. This is useful for running mdl from
binstubs or a bundle.
*ale-options.markdown_mdl_options*
*g:ale_markdown_mdl_options*
*b:ale_markdown_mdl_options*markdown_mdl_options
g:ale_markdown_mdl_options
Type: |String|
Default: ''
This variable can be set to pass additional options to mdl.
===============================================================================
pandoc ale-markdown-pandoc
*ale-options.markdown_pandoc_executable*
*g:ale_markdown_pandoc_executable*
*b:ale_markdown_pandoc_executable*markdown_pandoc_executable
g:ale_markdown_pandoc_executable
Type: |String|
Default: 'pandoc'
This variable can be set to specify where to find the pandoc executable
*ale-options.markdown_pandoc_options*
*g:ale_markdown_pandoc_options*
*b:ale_markdown_pandoc_options*markdown_pandoc_options
g:ale_markdown_pandoc_options
Type: |String|
Default: '-f gfm -t gfm -s -'
This variable can be set to change the default options passed to pandoc
===============================================================================
prettier ale-markdown-prettier
See |ale-javascript-prettier| for information about the available options.
===============================================================================
pymarkdown ale-markdown-pymarkdown
pymarkdown can be used both as a linter and a fixer for Markdown files.
*ale-options.markdown_pymarkdown_executable*
*g:ale_markdown_pymarkdown_executable*
*b:ale_markdown_pymarkdown_executable*markdown_pymarkdown_executable
g:ale_markdown_pymarkdown_executable
Type: |String|
Default: 'pymarkdown'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pymarkdown'.
Set this to 'poetry' to invoke 'poetry run pymarkdown'.
*ale-options.markdown_pymarkdown_options*
*g:ale_markdown_pymarkdown_options*
*b:ale_markdown_pymarkdown_options*markdown_pymarkdown_options
g:ale_markdown_pymarkdown_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
pymarkdown invocation.
*ale-options.markdown_pymarkdown_use_global*
*g:ale_markdown_pymarkdown_use_global*
*b:ale_markdown_pymarkdown_use_global*markdown_pymarkdown_use_global
g:ale_markdown_pymarkdown_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.markdown_pymarkdown_auto_pipenv*
*g:ale_markdown_pymarkdown_auto_pipenv*
*b:ale_markdown_pymarkdown_auto_pipenv*markdown_pymarkdown_auto_pipenv
g:ale_markdown_pymarkdown_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.
*ale-options.markdown_pymarkdown_auto_poetry*
*g:ale_markdown_pymarkdown_auto_poetry*
*b:ale_markdown_pymarkdown_auto_poetry*markdown_pymarkdown_auto_poetry
g:ale_markdown_pymarkdown_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.markdown_pymarkdown_auto_uv*
*g:ale_markdown_pymarkdown_auto_uv*
*b:ale_markdown_pymarkdown_auto_uv*markdown_pymarkdown_auto_uv
g:ale_markdown_pymarkdown_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
remark-lint ale-markdown-remark-lint
*ale-options.markdown_remark_lint_executable*
*g:ale_markdown_remark_lint_executable*
*b:ale_markdown_remark_lint_executable*markdown_remark_lint_executable
g:ale_markdown_remark_lint_executable
Type: |String|
Default: 'remark'
See |ale-integrations-local-executables|
*ale-options.markdown_remark_lint_options*
*g:ale_markdown_remark_lint_options*
*b:ale_markdown_remark_lint_options*markdown_remark_lint_options
g:ale_markdown_remark_lint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to remark-lint.
*ale-options.markdown_remark_lint_use_global*
*g:ale_markdown_remark_lint_use_global*
*b:ale_markdown_remark_lint_use_global*markdown_remark_lint_use_global
g:ale_markdown_remark_lint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
rumdl ale-markdown-rumdl
*ale-options.markdown_rumdl_executable*
*g:ale_markdown_rumdl_executable*
*b:ale_markdown_rumdl_executable*markdown_rumdl_executable
g:ale_markdown_rumdl_executable
Type: |String|
Default: 'rumdl'
Override the invoked rumdl binary.
*ale-options.markdown_rumdl_options*
*g:ale_markdown_rumdl_options*
*b:ale_markdown_rumdl_options*markdown_rumdl_options
g:ale_markdown_rumdl_options
Type: |String|
Default: ''
This variable can be set to pass additional options to rumdl server.
*ale-options.markdown_rumdl_fmt_options*
*g:ale_markdown_rumdl_fmt_options*
*b:ale_markdown_rumdl_fmt_options*markdown_rumdl_fmt_options
g:ale_markdown_rumdl_fmt_options
Type: |String|
Default: '--silent'
This variable can be set to pass additional options to rumdl fmt.
===============================================================================
textlint ale-markdown-textlint
See |ale-text-textlint|
===============================================================================
write-good ale-markdown-write-good
See |ale-write-good-options|
===============================================================================
redpen ale-markdown-redpen
See |ale-redpen-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Mercury (`doc/ale-mercury.txt`)
===============================================================================
ALE Mercury Integration ale-mercury-options
===============================================================================
mmc ale-mercury-mmc
*ale-options.mercury_mmc_executable*
*g:ale_mercury_mmc_executable*
*b:ale_mercury_mmc_executable*mercury_mmc_executable
g:ale_mercury_mmc_executable
Type: |String|
Default: 'mmc'
This variable can be changed to use a different executable for mmc.
*ale-options.mercury_mmc_options*
*g:ale_mercury_mmc_options*
*b:ale_mercury_mmc_options*mercury_mmc_options
g:ale_mercury_mmc_options
Type: |String|
Default: '--make --output-compile-error-lines 100'
This variable can be set to pass additional options to mmc.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Mustache (`doc/ale-mustache.txt`)
===============================================================================
ALE Mustache Integration ale-mustache-options
===============================================================================
dprint ale-mustache-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markup_fmt/.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nasm (`doc/ale-nasm.txt`)
===============================================================================
ALE NASM Integration ale-nasm-options
===============================================================================
nasm ale-nasm-nasm
*ale-options.nasm_nasm_executable*
*g:ale_nasm_nasm_executable*
*b:ale_nasm_nasm_executable*nasm_nasm_executable
g:ale_nasm_nasm_executable
Type: |String|
Default 'nasm'
This variable can be changed to use different executable for NASM.
*ale-options.nasm_nasm_options*
*g:ale_nasm_nasm_options*
*b:ale_nasm_nasm_options*nasm_nasm_options
g:ale_nasm_nasm_options
Type: |String|
Default: ''
This variable can be set to pass additional options to NASM.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nickel (`doc/ale-nickel.txt`)
===============================================================================
ALE Nickel Integration ale-nickel-options
===============================================================================
nickel_format ale-nickel-nickel-format
*ale-options.nickel_nickel_format_executable*
*g:ale_nickel_nickel_format_executable*
*b:ale_nickel_nickel_format_executable*nickel_nickel_format_executable
g:ale_nickel_nickel_format_executable
Type: |String|
Default: 'nickel'
This option can be changed to change the path for nickel.
*ale-options.nickel_nickel_format_options*
*g:ale_nickel_nickel_format_options*
*b:ale_nickel_nickel_format_options*nickel_nickel_format_options
g:ale_nickel_nickel_format_options
Type: |String|
Default: ''
This option can be changed to pass extra options to 'nickel format'
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nim (`doc/ale-nim.txt`)
===============================================================================
ALE Nim Integration ale-nim-options
===============================================================================
nimcheck ale-nim-nimcheck
ALE does not provide additional configuration options for nimcheck at this
point.
===============================================================================
nimlsp ale-nim-nimlsp
*ale-options.nim_nimlsp_nim_sources*
*g:ale_nim_nimlsp_nim_sources*
*b:ale_nim_nimlsp_nim_sources*g:ale_nim_nimlsp_nim_sources
Type: |String|
Default: ''
Sets the path to Nim source repository as the first argument to nimlsp
command.
===============================================================================
nimpretty ale-nim-nimpretty
*ale-options.nim_nimpretty_executable*
*g:ale_nim_nimpretty_executable*
*b:ale_nim_nimpretty_executable*nim_nimpretty_executable
g:ale_nim_nimpretty_executable
Type: |String|
Default: 'nimpretty'
This variable can be changed to use a different executable for nimpretty.
*ale-options.nim_nimpretty_options*
*g:ale_nim_nimpretty_options*
*b:ale_nim_nimpretty_options*nim_nimpretty_options
g:ale_nim_nimpretty_options
Type: |String|
Default: '--maxLineLen:80'
This variable can be changed to modify flags given to nimpretty.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nix (`doc/ale-nix.txt`)
===============================================================================
ALE Nix Integration ale-nix-options
===============================================================================
alejandra ale-nix-alejandra
*ale-options.nix_alejandra_executable*
*g:ale_nix_alejandra_executable*
*b:ale_nix_alejandra_executable*nix_alejandra_executable
g:ale_nix_alejandra_executable
Type: |String|
Default: 'alejandra'
This variable sets the executable used for alejandra.
*ale-options.nix_alejandra_options*
*g:ale_nix_alejandra_options*
*b:ale_nix_alejandra_options*nix_alejandra_options
g:ale_nix_alejandra_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the alejandra fixer.
===============================================================================
nixfmt ale-nix-nixfmt
*ale-options.nix_nixfmt_executable*
*g:ale_nix_nixfmt_executable*
*b:ale_nix_nixfmt_executable*nix_nixfmt_executable
g:ale_nix_nixfmt_executable
Type: |String|
Default: 'nixfmt'
This variable sets the executable used for nixfmt.
*ale-options.nix_nixfmt_options*
*g:ale_nix_nixfmt_options*
*b:ale_nix_nixfmt_options*nix_nixfmt_options
g: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
*ale-options.nix_nixpkgsfmt_executable*
*g:ale_nix_nixpkgsfmt_executable*
*b:ale_nix_nixpkgsfmt_executable*nix_nixpkgsfmt_executable
g:ale_nix_nixpkgsfmt_executable
Type: |String|
Default: 'nixpkgs-fmt'
This variable sets executable used for nixpkgs-fmt.
*ale-options.nix_nixpkgsfmt_options*
*g:ale_nix_nixpkgsfmt_options*
*b:ale_nix_nixpkgsfmt_options*nix_nixpkgsfmt_options
g:ale_nix_nixpkgsfmt_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the nixpkgs-fmt
fixer.
===============================================================================
statix ale-nix-statix
*ale-options.nix_statix_check_executable*
*g:ale_nix_statix_check_executable*
*b:ale_nix_statix_check_executable*nix_statix_check_executable
g:ale_nix_statix_check_executable
Type: |String|
Default: 'statix'
This variable sets the executable used for statix when running it as a
linter.
*ale-options.nix_statix_check_options*
*g:ale_nix_statix_check_options*
*b:ale_nix_statix_check_options*nix_statix_check_options
g:ale_nix_statix_check_options
Type: |String|
Default: ''
This variable can be used to pass additional options to statix when running
it as a linter.
*ale-options.nix_statix_fix_executable*
*g:ale_nix_statix_fix_executable*
*b:ale_nix_fix_check_executable*nix_statix_fix_executable
g:ale_nix_statix_fix_executable
Type: |String|
Default: 'statix'
This variable sets the executable used for statix when running it as a
fixer.
*ale-options.nix_statix_fix_options*
*g:ale_nix_statix_fix_options*
*b:ale_nix_statix_fix_options*nix_statix_fix_options
g:ale_nix_statix_fix_options
Type: |String|
Default: ''
This variable can be used to pass additional options to statix when running
it as a fixer.
===============================================================================
deadnix ale-nix-deadnix
*ale-options.nix_deadnix_executable*
*g:ale_nix_deadnix_executable*
*b:ale_nix_deadnix_executable*nix_deadnix_executable
g:ale_nix_deadnix_executable
Type: |String|
Default: 'deadnix'
This variable sets the executable used for deadnix.
*ale-options.nix_deadnix_options*
*g:ale_nix_deadnix_options*
*b:ale_nix_deadnix_options*nix_deadnix_options
g:ale_nix_deadnix_options
Type: |String|
Default: ''
This variable can be used to pass additional options to deadnix.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nroff (`doc/ale-nroff.txt`)
===============================================================================
ALE nroff Integration ale-nroff-options
===============================================================================
write-good ale-nroff-write-good
See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Nunjucks (`doc/ale-nunjucks.txt`)
===============================================================================
ALE Nunjucks Integration ale-nunjucks-options
===============================================================================
djlint ale-nunjucks-djlint
See |ale-html-djlint|
===============================================================================
dprint ale-nunjucks-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/markup_fmt/.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Objc (`doc/ale-objc.txt`)
===============================================================================
ALE Objective-C Integration ale-objc-options
===============================================================================
ccls ale-objc-ccls
*ale-options.objc_ccls_executable*
*g:ale_objc_ccls_executable*
*b:ale_objc_ccls_executable*objc_ccls_executable
g:ale_objc_ccls_executable
Type: |String|
Default: 'ccls'
This variable can be changed to use a different executable for ccls.
*ale-options.objc_ccls_init_options*
*g:ale_objc_ccls_init_options*
*b:ale_objc_ccls_init_options*objc_ccls_init_options
g:ale_objc_ccls_init_options
Type: |Dictionary|
Default: {}
This variable can be changed to customize ccls initialization options.
Example: >
let g:ale_objc_ccls_init_options = {
\ 'cacheDirectory': '/tmp/ccls',
\ 'cacheFormat': 'binary',
\ 'diagnostics': {
\ 'onOpen': 0,
\ 'opChange': 1000,
\ },
}
<
Visit https://github.com/MaskRay/ccls/wiki/Initialization-options for all
available options and explanations.
===============================================================================
clang ale-objc-clang
*ale-options.objc_clang_options*
*g:ale_objc_clang_options*
*b:ale_objc_clang_options*objc_clang_options
g:ale_objc_clang_options
Type: |String|
Default: '-std=c11 -Wall'
This variable can be changed to modify flags given to clang.
===============================================================================
clang-format ale-objc-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for Objective-C.
===============================================================================
clangd ale-objc-clangd
*ale-options.objc_clangd_executable*
*g:ale_objc_clangd_executable*
*b:ale_objc_clangd_executable*objc_clangd_executable
g:ale_objc_clangd_executable
Type: |String|
Default: 'clangd'
This variable can be changed to use a different executable for clangd.
*ale-options.objc_clangd_options*
*g:ale_objc_clangd_options*
*b:ale_objc_clangd_options*objc_clangd_options
g:ale_objc_clangd_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clangd.
===============================================================================
uncrustify ale-objc-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Objcpp (`doc/ale-objcpp.txt`)
===============================================================================
ALE Objective-C++ Integration ale-objcpp-options
===============================================================================
clang ale-objcpp-clang
*ale-options.objcpp_clang_options*
*g:ale_objcpp_clang_options*
*b:ale_objcpp_clang_options*objcpp_clang_options
g:ale_objcpp_clang_options
Type: |String|
Default: '-std=c++14 -Wall'
This variable can be changed to modify flags given to clang.
===============================================================================
clangd ale-objcpp-clangd
*ale-options.objcpp_clangd_executable*
*g:ale_objcpp_clangd_executable*
*b:ale_objcpp_clangd_executable*objcpp_clangd_executable
g:ale_objcpp_clangd_executable
Type: |String|
Default: 'clangd'
This variable can be changed to use a different executable for clangd.
*ale-options.objcpp_clangd_options*
*g:ale_objcpp_clangd_options*
*b:ale_objcpp_clangd_options*objcpp_clangd_options
g:ale_objcpp_clangd_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to clangd.
===============================================================================
uncrustify ale-objcpp-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Ocaml (`doc/ale-ocaml.txt`)
===============================================================================
ALE OCaml Integration ale-ocaml-options
===============================================================================
dune ale-ocaml-dune
Dune is a build system for OCaml projects. The dune format command is
supported for automatically formatting dune and dune-project files.
*ale-options.ocaml_dune_executable*
*g:ale_ocaml_dune_executable*
*b:ale_ocaml_dune_executable*ocaml_dune_executable
g:ale_ocaml_dune_executable
Type: |String|
Default: 'dune'
This variable can be set to pass the path to dune.
*ale-options.ocaml_dune_options*
*g:ale_ocaml_dune_options*
*b:ale_ocaml_dune_options*ocaml_dune_options
g:ale_ocaml_dune_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the dune fixer.
===============================================================================
merlin ale-ocaml-merlin
To use merlin linter for OCaml source code you need to make sure Merlin for
Vim is correctly configured. See the corresponding Merlin wiki page for
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
*ale-options.ocaml_ocamllsp_use_opam*
*g:ale_ocaml_ocamllsp_use_opam*
*b:ale_ocaml_ocamllsp_use_opam*ocaml_ocamllsp_use_opam
g: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
The ocaml-language-server is the engine that powers OCaml and ReasonML
editor support using the Language Server Protocol. See the installation
instructions:
https://github.com/freebroccolo/ocaml-language-server#installation
*ale-options.ocaml_ols_executable*
*g:ale_ocaml_ols_executable*
*b:ale_ocaml_ols_executable*ocaml_ols_executable
g:ale_ocaml_ols_executable
Type: |String|
Default: 'ocaml-language-server'
This variable can be set to change the executable path for ols.
*ale-options.ocaml_ols_use_global*
*g:ale_ocaml_ols_use_global*
*b:ale_ocaml_ols_use_global*ocaml_ols_use_global
g:ale_ocaml_ols_use_global
Type: |String|
Default: get(g:, 'ale_use_global_executables', 0)
This variable can be set to 1 to always use the globally installed
executable. See also |ale-integrations-local-executables|.
===============================================================================
ocamlformat ale-ocaml-ocamlformat
*ale-options.ocaml_ocamlformat_executable*
*g:ale_ocaml_ocamlformat_executable*
*b:ale_ocaml_ocamlformat_executable*ocaml_ocamlformat_executable
g:ale_ocaml_ocamlformat_executable
Type: |String|
Default: 'ocamlformat'
This variable can be set to pass the path of the ocamlformat fixer.
*ale-options.ocaml_ocamlformat_options*
*g:ale_ocaml_ocamlformat_options*
*b:ale_ocaml_ocamlformat_options*ocaml_ocamlformat_options
g:ale_ocaml_ocamlformat_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the ocamlformat fixer.
===============================================================================
ocp-indent ale-ocaml-ocp-indent
*ale-options.ocaml_ocp_indent_executable*
*g:ale_ocaml_ocp_indent_executable*
*b:ale_ocaml_ocp_indent_executable*ocaml_ocp_indent_executable
g:ale_ocaml_ocp_indent_executable
Type: |String|
Default: ocp-indent
This variable can be set to pass the path of the ocp-indent.
*ale-options.ocaml_ocp_indent_options*
*g:ale_ocaml_ocp_indent_options*
*b:ale_ocaml_ocp_indent_options*ocaml_ocp_indent_options
g:ale_ocaml_ocp_indent_options
Type: |String|
Default: ''
This variable can be set to pass additional options to the ocp-indent.
*ale-options.ocaml_ocp_indent_config*
*g:ale_ocaml_ocp_indent_config*
*b:ale_ocaml_ocp_indent_config*ocaml_ocp_indent_config
g:ale_ocaml_ocp_indent_config
Type: |String|
Default: ''
This variable can be set to pass additional config to the ocp-indent.
Expand after "--config=".
"ocp-indent" can also be enabled from ocamlformat config.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Odin (`doc/ale-odin.txt`)
===============================================================================
ALE Odin Integration ale-odin-options
ale-integration-odin
===============================================================================
ols ale-odin-ols
*ale-options.odin_ols_executable*
*g:ale_odin_ols_executable*
*b:ale_odin_ols_executable*odin_ols_executable
g:ale_odin_ols_executable
Type: |String|
Default: 'ols'
This variable can be modified to change the executable path for ols.
*ale-options.odin_ols_config*
*g:ale_odin_ols_config*
*b:ale_odin_ols_config*odin_ols_config
g:ale_odin_ols_config
Type: |Dictionary|
Default: {}
Dictionary with configuration settings for ols.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Openapi (`doc/ale-openapi.txt`)
===============================================================================
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
ale-options.openapi_ibm_validator_executable
g:ale_openapi_ibm_validator_executable
b:ale_openapi_ibm_validator_executable
openapi_ibm_validator_executable
g:ale_openapi_ibm_validator_executable
Type: |String|
Default: 'lint-openapi'
This variable can be set to change the path to lint-openapi.
*ale-options.openapi_ibm_validator_options*
*g:ale_openapi_ibm_validator_options*
*b:ale_openapi_ibm_validator_options*openapi_ibm_validator_options
g: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:
Doc Ale Openscad (`doc/ale-openscad.txt`)
===============================================================================
ALE OpenSCAD Integration ale-openscad-options
===============================================================================
openscad-lsp ale-openscad-openscad_lsp
openscad-lsp is a Language Server Protocol implementation for OpenSCAD.
g:ale_openscad_openscad_lsp_executable g:ale_openscad_openscad_lsp_executable
b:ale_openscad_openscad_lsp_executable
Type: |String|
Default: 'openscad-lsp'
This variable can be changed to use a different executable for openscad-lsp.
g:ale_openscad_openscad_lsp_options g:ale_openscad_openscad_lsp_options
b:ale_openscad_openscad_lsp_options
Type: |String|
Default: ''
This variable can be changed to pass additional flags to openscad-lsp.
===============================================================================
sca2d ale-openscad-sca2d
*ale-options.openscad_sca2d_executable*
*g:ale_openscad_sca2d_executable*
*b:ale_openscad_sca2d_executable*openscad_sca2d_executable
g:ale_openscad_sca2d_executable
Type: |String|
Default: 'sca2d'
See |ale-integrations-local-executables|
*ale-options.openscad_sca2d_options*
*g:ale_openscad_sca2d_options*
*b:ale_openscad_sca2d_options*openscad_sca2d_options
g:ale_openscad_sca2d_options
Type: |String|
Default: ''
This variable can be set to pass options to sca2d.
===============================================================================
scadformat ale-openscad-scadformat
*ale-options.openscad_scadformat_executable*
*g:ale_openscad_scadformat_executable*
*b:ale_openscad_scadformat_executable*openscad_scadformat_executable
g:ale_openscad_scadformat_executable
Type: |String|
Default: 'scadformat'
See |ale-integrations-local-executables|
*ale-options.openscad_scadformat_options*
*g:ale_openscad_scadformat_options*
*b:ale_openscad_scadformat_options*openscad_scadformat_options
g:ale_openscad_scadformat_options
Type: |String|
Default: ''
This variable can be set to pass options to scadformat.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Packer (`doc/ale-packer.txt`)
===============================================================================
ALE Packer Integration ale-packer-options
===============================================================================
packer-fmt-fixer ale-packer-fmt-fixer
*ale-options.packer_fmt_executable*
*g:ale_packer_fmt_executable*
*b:ale_packer_fmt_executable*packer_fmt_executable
g:ale_packer_fmt_executable
Type: |String|
Default: 'packer'
This variable can be changed to use a different executable for packer.
*ale-options.packer_fmt_options*
*g:ale_packer_fmt_options*
*b:ale_packer_fmt_options*packer_fmt_options
g:ale_packer_fmt_options
Type: |String|
Default: ''
This variable can be set to change command lines options for packer fmt
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Pascal (`doc/ale-pascal.txt`)
===============================================================================
ALE Pascal Integration ale-pascal-options
===============================================================================
ptop ale-pascal-ptop
*ale-options.pascal_ptop_executable*
*g:ale_pascal_ptop_executable*
*b:ale_pascal_ptop_executable*pascal_ptop_executable
g:ale_pascal_ptop_executable
Type: |String|
Default: 'ptop'
This variable can be changed to specify the ptop executable.
*ale-options.pascal_ptop_options*
*g:ale_pascal_ptop_options*
*b:ale_pascal_ptop_options*pascal_ptop_options
g: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:
Doc Ale Pawn (`doc/ale-pawn.txt`)
===============================================================================
ALE Pawn Integration ale-pawn-options
===============================================================================
uncrustify ale-pawn-uncrustify
See |ale-c-uncrustify| for information about the available options.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Perl (`doc/ale-perl.txt`)
===============================================================================
ALE Perl Integration ale-perl-options
ALE offers a few ways to check Perl code. Checking code with perl is
disabled by default, as perl code cannot be checked without executing it.
Specifically, we use the -c flag to see if perl code compiles. This does
not execute all of the code in a file, but it does run BEGIN and CHECK
blocks. See perl --help and https://stackoverflow.com/a/12908487/406224
See |g:ale_linters|.
===============================================================================
perl ale-perl-perl
*ale-options.perl_perl_executable*
*g:ale_perl_perl_executable*
*b:ale_perl_perl_executable*perl_perl_executable
g:ale_perl_perl_executable
Type: |String|
Default: 'perl'
This variable can be changed to modify the executable used for linting perl.
*ale-options.perl_perl_options*
*g:ale_perl_perl_options*
*b:ale_perl_perl_options*perl_perl_options
g:ale_perl_perl_options
Type: |String|
Default: '-c -Mwarnings -Ilib'
This variable can be changed to alter the command-line arguments to the perl
invocation.
===============================================================================
perl language server ale-perl-languageserver
perl_perl_executable
g:ale_perl_perl_executable
Type: |String|
Default: 'perl'
The language server will use the same variable as |ale-perl-perl| to launch
the perl executable with the Perl::LanguageServer module.
*ale-options.perl_languageserver_config*
*g:ale_perl_languageserver_config*
*b:ale_perl_languageserver_config*perl_languageserver_config
g:ale_perl_languageserver_config
Type: |Dictionary|
Default: '{}'
This variable can be changed to customize the lsp_config (sent as a
workspace/didChangeConfiguration command).
For example: >
let g:ale_perl_languageserver_config = {
\ 'perl': {
\ 'fileFilter': [''],
\ 'logLevel': 2,
\ 'logFile': '/tmp/plls-log.txt',
\ 'perlInc': ['/usr/share/perl5/', '/usr/local/share/perl5/' ],
\ },
}
<
For all available options and explanations, visit
https://metacpan.org/pod/Perl::LanguageServer#Extension-Settings
===============================================================================
perlcritic ale-perl-perlcritic
*ale-options.perl_perlcritic_executable*
*g:ale_perl_perlcritic_executable*
*b:ale_perl_perlcritic_executable*perl_perlcritic_executable
g:ale_perl_perlcritic_executable
Type: |String|
Default: 'perlcritic'
This variable can be changed to modify the perlcritic executable used for
linting perl.
*ale-options.perl_perlcritic_profile*
*g:ale_perl_perlcritic_profile*
*b:ale_perl_perlcritic_profile*perl_perlcritic_profile
g:ale_perl_perlcritic_profile
Type: |String|
Default: '.perlcriticrc'
This variable can be changed to modify the perlcritic profile used for
linting perl. The current directory is checked for the file, then the
parent directory, etc, until it finds one. If no matching file is found, no
profile is passed to perlcritic.
Set to an empty string to disable passing a specific profile to perlcritic
with the '--profile' option.
To prevent perlcritic from using any profile, set this variable to an empty
string and pass '--no-profile'to perlcritic via the
|g:ale_perl_perlcritic_options| variable.
*ale-options.perl_perlcritic_options*
*g:ale_perl_perlcritic_options*
*b:ale_perl_perlcritic_options*perl_perlcritic_options
g:ale_perl_perlcritic_options
Type: |String|
Default: ''
This variable can be changed to supply additional command-line arguments to
the perlcritic invocation.
*ale-options.perl_perlcritic_showrules*
*g:ale_perl_perlcritic_showrules*perl_perlcritic_showrules
g:ale_perl_perlcritic_showrules
Type: |Number|
Default: 0
Controls whether perlcritic rule names are shown after the error message.
Defaults to off to reduce length of message.
===============================================================================
perlnavigator ale-perl-perlnavigator
*ale-options.perl_perlnavigator_executable*
*g:ale_perl_perlnavigator_executable*
*b:ale_perl_perlnavigator_executable*perl_perlnavigator_executable
g:ale_perl_perlnavigator_executable
Type: |String|
Default: 'perlnavigator'
This variable can be changed to modify the perlnavigator executable used for
linting perl.
*ale-options.perl_perlnavigator_config*
*g:ale_perl_perlnavigator_config*
*b:ale_perl_perlnavigator_config*perl_perlnavigator_config
g:ale_perl_perlnavigator_config
Type: |Dictionary|
Default: '{}'
This variable can be changed to customize the lsp_config (sent as a
workspace/didChangeConfiguration command) for perlnavigator.
For example: >
let g:ale_perl_perlnavigator_config = {
\ 'perlnavigator': {
\ 'enableWarnings': 1,
\ 'includePaths': [ $HOME . '/MyPerlStuff/lib', '/tmp/tmp.7qSgUo34e' ],
\ 'perlEnvAdd': 1,
\ 'perlEnv': {
\ 'PERL_DL_NONLAZY': 1,
\ },
\ 'perlPath': substitute(g:ale_perl_perl_executable, '/perl$', '', ''),
\ 'perlcriticEnabled': 1,
\ 'perlcriticProfile': '$workspaceFolder/.perlcriticrc',
\ 'perltidyProfile': '$workspaceFolder/.perltidyrc',
\ 'perlcriticSeverity': 2,
\ },
\ }
}
<
For all available options and explanations, visit
https://github.com/bscan/PerlNavigator?tab=readme-ov-file
===============================================================================
perltidy ale-perl-perltidy
*ale-options.perl_perltidy_options*
*g:ale_perl_perltidy_options*
*b:ale_perl_perltidy_options*perl_perltidy_options
g:ale_perl_perltidy_options
Type: |String|
Default: ''
This variable can be changed to alter the command-line arguments to
the perltidy invocation.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Perl6 (`doc/ale-perl6.txt`)
===============================================================================
ALE Perl6 Integration ale-perl6-options
Checking code with perl6 is disabled by default, as perl6 code cannot be
checked without executing it. Specifically, we use the -c flag to see ifperl6 code compiles. This does not execute all of the code in a file, but it
does run BEGIN and CHECK blocks. See perl6 --help
Full support requires a perl6 implementation that supports the
PERL6_EXCEPTIONS_HANDLER environment variable and JSON error output,
which was specified in 6.d. Rakudo version 2018.08 is the first rakudo release
that supports this. See perl6 --version and
https://docs.perl6.org/programs/03-environment-variables.
Without this variable, errors and warnings will appear at line 1, and can be
viewed with ALEDetail. This also serves as a fallback for errors and warnings
that do not trigger JSON output.
See |g:ale_linters|.
===============================================================================
perl6 ale-perl6-perl6
*ale-options.perl6_perl6_executable*
*g:ale_perl6_perl6_executable*
*b:ale_perl6_perl6_executable*perl6_perl6_executable
g:ale_perl6_perl6_executable
Type: |String|
Default: 'perl6'
This variable can be changed to modify the executable used for linting
perl6.
*ale-options.perl6_perl6_options*
*g:ale_perl6_perl6_options*
*b:ale_perl6_perl6_options*perl6_perl6_options
g:ale_perl6_perl6_options
Type: |String|
Default: '-c -Ilib'
This variable can be changed to alter the command-line arguments to the
perl6 invocation.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Php (`doc/ale-php.txt`)
===============================================================================
ALE PHP Integration ale-php-options
===============================================================================
cspell ale-php-cspell
See |ale-cspell-options|
===============================================================================
dprint ale-php-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/mago/.
===============================================================================
langserver ale-php-langserver
*ale-options.php_langserver_executable*
*g:ale_php_langserver_executable*
*b:ale_php_langserver_executable*php_langserver_executable
g:ale_php_langserver_executable
Type: |String|
Default: 'php-language-server.php'
The variable can be set to configure the executable that will be used for
running the PHP language server. vendor directory executables will be
preferred instead of this setting if |g:ale_php_langserver_use_global| is 0.
See: |ale-integrations-local-executables|
*ale-options.php_langserver_use_global*
*g:ale_php_langserver_use_global*
*b:ale_php_langserver_use_global*php_langserver_use_global
g:ale_php_langserver_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable can be set to 1 to force the language server to be run with
the executable set for |g:ale_php_langserver_executable|.
See: |ale-integrations-local-executables|
===============================================================================
phan ale-php-phan
WARNING: please use the phan_client linter if you have an configuration file
for your project because the phan will look into your entirely project and
ale will display in the current buffer warnings that may belong to other file.
*ale-options.php_phan_minimum_severity*
*g:ale_php_phan_minimum_severity*
*b:ale_php_phan_minimum_severity*php_phan_minimum_severity
g:ale_php_phan_minimum_severity
Type: |Number|
Default: 0
This variable defines the minimum severity level.
*ale-options.php_phan_executable*
*g:ale_php_phan_executable*
*b:ale_php_phan_executable*php_phan_executable
g:ale_php_phan_executable
Type: |String|
Default: 'phan'
This variable sets executable used for phan or phan_client.
*ale-options.php_phan_use_client*
*g:ale_php_phan_use_client*
*b:ale_php_phan_use_client*php_phan_use_client
g:ale_php_phan_use_client
Type: |Number|
Default: get(g:, 'ale_php_phan_use_client', 0)
This variable can be set to 1 to use the phan_client with phan daemon mode
instead of the phan standalone.
===============================================================================
phpactor ale-php-phpactor
*ale-options.php_phpactor_executable*
*g:ale_php_phpactor_executable*
*b:ale_php_phpactor_executable*php_phpactor_executable
g:ale_php_phpactor_executable
Type: |String|
Default: 'phpactor'
This variable sets executable used for phpactor.
php_phpactor_init_options
g:ale_php_phpactor_init_options
Type: |Dictionary|
Default: '{}'
This variable can be changed to customize the LSP initialization_options.
For example: >
let g:ale_php_phpactor_init_options = {
\ 'language_server_phpstan.enabled': v:false,
\ 'language_server_psalm.enabled': v:false,
\ 'worse_reflection.stub_dir': '%application_root%/.php-stubs'
}
<
For all available options and explanations, visit
https://phpactor.readthedocs.io/en/master/reference/configuration.html
===============================================================================
phpcbf ale-php-phpcbf
*ale-options.php_phpcbf_executable*
*g:ale_php_phpcbf_executable*
*b:ale_php_phpcbf_executable*php_phpcbf_executable
g:ale_php_phpcbf_executable
Type: |String|
Default: 'phpcbf'
See |ale-integrations-local-executables|
*ale-options.php_phpcbf_standard*
*g:ale_php_phpcbf_standard*
*b:ale_php_phpcbf_standard*php_phpcbf_standard
g:ale_php_phpcbf_standard
Type: |String|
Default: ''
This variable can be set to specify the coding standard used by phpcbf. If no
coding standard is specified, phpcbf will default to fixing against the
PEAR coding standard, or the standard you have set as the default.
*ale-options.php_phpcbf_use_global*
*g:ale_php_phpcbf_use_global*
*b:ale_php_phpcbf_use_global*php_phpcbf_use_global
g:ale_php_phpcbf_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.php_phpcbf_options*
*g:ale_php_phpcbf_options*
*b:ale_php_phpcbf_options*php_phpcbf_options
g:ale_php_phpcbf_options
Type: |String|
Default: ''
This variable can be set to pass additional options to php-cbf
===============================================================================
phpcs ale-php-phpcs
*ale-options.php_phpcs_executable*
*g:ale_php_phpcs_executable*
*b:ale_php_phpcs_executable*php_phpcs_executable
g:ale_php_phpcs_executable
Type: |String|
Default: 'phpcs'
See |ale-integrations-local-executables|
*ale-options.php_phpcs_standard*
*g:ale_php_phpcs_standard*
*b:ale_php_phpcs_standard*php_phpcs_standard
g:ale_php_phpcs_standard
Type: |String|
Default: ''
This variable can be set to specify the coding standard used by phpcs. If no
coding standard is specified, phpcs will default to checking against the
PEAR coding standard, or the standard you have set as the default.
*ale-options.php_phpcs_use_global*
*g:ale_php_phpcs_use_global*
*b:ale_php_phpcs_use_global*php_phpcs_use_global
g:ale_php_phpcs_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.php_phpcs_options*
*g:ale_php_phpcs_options*
*b:ale_php_phpcs_options*php_phpcs_options
g:ale_php_phpcs_options
Type: |String|
Default: ''
This variable can be set to pass additional options to php-cs
===============================================================================
phpmd ale-php-phpmd
*ale-options.php_phpmd_executable*
*g:ale_php_phpmd_executable*
*b:ale_php_phpmd_executable*php_phpmd_executable
g:ale_php_phpmd_executable
Type: |String|
Default: 'phpmd'
This variable sets executable used for phpmd.
*ale-options.php_phpmd_ruleset*
*g:ale_php_phpmd_ruleset*
*b:ale_php_phpmd_ruleset*php_phpmd_ruleset
g:ale_php_phpmd_ruleset
Type: |String|
Default: 'cleancode,codesize,controversial,design,naming,unusedcode'
This variable controls the ruleset used by phpmd. Default is to use all of
the available phpmd rulesets
===============================================================================
phpstan ale-php-phpstan
*ale-options.php_phpstan_executable*
*g:ale_php_phpstan_executable*
*b:ale_php_phpstan_executable*php_phpstan_executable
g:ale_php_phpstan_executable
Type: |String|
Default: 'phpstan'
This variable sets executable used for phpstan.
*ale-options.php_phpstan_level*
*g:ale_php_phpstan_level*
*b:ale_php_phpstan_level*php_phpstan_level
g:ale_php_phpstan_level
Type: |String|
Default: ''
This variable controls the rule levels. 0 is the loosest and 7 is the
strictest. If this option isn't set, the rule level will be controlled by
the configuration file. If no configuration file can be detected, '7' will
be used instead.
*ale-options.php_phpstan_configuration*
*g:ale_php_phpstan_configuration*
*b:ale_php_phpstan_configuration*php_phpstan_configuration
g:ale_php_phpstan_configuration
Type: |String|
Default: ''
This variable sets path to phpstan configuration file.
*ale-options.php_phpstan_autoload*
*g:ale_php_phpstan_autoload*
*b:ale_php_phpstan_autoload*php_phpstan_autoload
g:ale_php_phpstan_autoload
Type: |String|
Default: ''
This variable sets path to phpstan autoload file.
*ale-options.php_phpstan_memory_limit*
*g:ale_php_phpstan_memory_limit*
*b:ale_php_phpstan_memory-limit*php_phpstan_memory_limit
g:ale_php_phpstan_memory_limit
Type: |String|
Default: ''
This variable sets the memory limit for phpstan analysis. This is a string
in the same format as php.ini accepts, e.g. 128M, 1G.
===============================================================================
psalm ale-php-psalm
*ale-options.php_psalm_executable*
*g:ale_php_psalm_executable*
*b:ale_php_psalm_executable*php_psalm_executable
g:ale_php_psalm_executable
Type: |String|
Default: 'psalm'
This variable sets the executable used for psalm.
*ale-options.php_psalm_options*
*g:ale_php_psalm_options*
*b:ale_php_psalm_options*php_psalm_options
g:ale_php_psalm_options
Type: |String|
Default: ''
This variable can be set to pass additional options to psalm.
*ale-options.php_psalm_use_global*
*g:ale_php_psalm_use_global*
*b:ale_php_psalm_use_global*php_psalm_use_global
g:ale_php_psalm_use_global
Type: |Boolean|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
php-cs-fixer ale-php-php-cs-fixer
*ale-options.php_cs_fixer_executable*
*g:ale_php_cs_fixer_executable*
*b:ale_php_cs_fixer_executable*php_cs_fixer_executable
g:ale_php_cs_fixer_executable
Type: |String|
Default: 'php-cs-fixer'
This variable sets executable used for php-cs-fixer.
*ale-options.php_cs_fixer_options*
*g:ale_php_cs_fixer_options*
*b:ale_php_cs_fixer_options*php_cs_fixer_options
g:ale_php_cs_fixer_options
Type: |String|
Default: ''
This variable can be set to pass additional options to php-cs-fixer.
*ale-options.php_cs_fixer_use_global*
*g:ale_php_cs_fixer_use_global*
*b:ale_php_cs_fixer_use_global*php_cs_fixer_use_global
g:ale_php_cs_fixer_use_global
Type: |Boolean|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
php ale-php-php
*ale-options.php_php_executable*
*g:ale_php_php_executable*
*b:ale_php_php_executable*php_php_executable
g:ale_php_php_executable
Type: |String|
Default: 'php'
This variable sets the executable used for php.
===============================================================================
pint ale-php-pint
*ale-options.php_pint_executable*
*g:ale_php_pint_executable*
*b:ale_php_pint_executable*php_pint_executable
g:ale_php_pint_executable
Type: |String|
Default: 'pint'
This variable sets the executable used for pint.
*ale-options.php_pint_options*
*g:ale_php_pint_options*
*b:ale_php_pint_options*php_pint_options
g:ale_php_pint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to pint.
*ale-options.php_pint_use_global*
*g:ale_php_pint_use_global*
*b:ale_php_pint_use_global*php_pint_use_global
g:ale_php_pint_use_global
Type: |Boolean|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
tlint ale-php-tlint
*ale-options.php_tlint_executable*
*g:ale_php_tlint_executable*
*b:ale_php_tlint_executable*php_tlint_executable
g:ale_php_tlint_executable
Type: |String|
Default: 'tlint'
See |ale-integrations-local-executables|
*ale-options.php_tlint_use_global*
*g:ale_php_tlint_use_global*
*b:ale_php_tlint_use_global*php_tlint_use_global
g:ale_php_tlint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.php_tlint_options*
*g:ale_php_tlint_options*
*b:ale_php_tlint_options*php_tlint_options
g:ale_php_tlint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to tlint
===============================================================================
intelephense ale-php-intelephense
*ale-options.php_intelephense_executable*
*g:ale_php_intelephense_executable*
*b:ale_php_intelephense_executable*php_intelephense_executable
g:ale_php_intelephense_executable
Type: |String|
Default: 'intelephense'
The variable can be set to configure the executable that will be used for
running the intelephense language server. node_modules directory
executable will be preferred instead of this setting if
|g:ale_php_intelephense_use_global| is 0.
See: |ale-integrations-local-executables|
*ale-options.php_intelephense_use_global*
*g:ale_php_intelephense_use_global*
*b:ale_php_intelephense_use_global*php_intelephense_use_global
g:ale_php_intelephense_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable can be set to 1 to force the language server to be run with
the executable set for |g:ale_php_intelephense_executable|.
See: |ale-integrations-local-executables|
*ale-options.php_intelephense_config*
*g:ale_php_intelephense_config*
*b:ale_php_intelephense_config*php_intelephense_config
g:ale_php_intelephense_config
Type: |Dictionary|
Default: {}
The initialization options config specified by Intelephense. Refer to the
installation docs provided by intelephense (github.com/bmewburn/intelephense
-docs).
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Po (`doc/ale-po.txt`)
===============================================================================
ALE PO Integration ale-po-options
===============================================================================
write-good ale-po-write-good
See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Pod (`doc/ale-pod.txt`)
===============================================================================
ALE Pod Integration ale-pod-options
===============================================================================
write-good ale-pod-write-good
See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Pony (`doc/ale-pony.txt`)
===============================================================================
ALE Pony Integration ale-pony-options
===============================================================================
ponyc ale-pony-ponyc
*ale-options.pony_ponyc_executable*
*g:ale_pony_ponyc_executable*
*b:ale_pony_ponyc_executable*pony_ponyc_executable
g:ale_pony_ponyc_executable
Type: |String|
Default: 'ponyc'
See |ale-integrations-local-executables|
*ale-options.pony_ponyc_options*
*g:ale_pony_ponyc_options*
*b:ale_pony_ponyc_options*pony_ponyc_options
g:ale_pony_ponyc_options
Type: |String|
Default: '--pass paint'
This variable can be set to pass options to ponyc.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Powershell (`doc/ale-powershell.txt`)
===============================================================================
ALE PowerShell Integration ale-powershell-options
===============================================================================
cspell ale-powershell-cspell
See |ale-cspell-options|
===============================================================================
powershell ale-powershell-powershell
*ale-options.powershell_powershell_executable*
*g:ale_powershell_powershell_executable*
*b:ale_powershell_powershell_executable*powershell_powershell_executable
g:ale_powershell_powershell_executable
Type: |String|
Default: 'pwsh'
This variable can be changed to use a different executable for powershell.
" Use powershell.exe rather than the default pwsh
let g:ale_powershell_powershell_executable = 'powershell.exe'
===============================================================================
psscriptanalyzer ale-powershell-psscriptanalyzer
Installation
Install PSScriptAnalyzer by any means, so long as it can be automatically
imported in PowerShell.
Options
ale-options.powershell_psscriptanalyzer_executable
g:ale_powershell_psscriptanalyzer_executable
b:ale_powershell_psscriptanalyzer_executable
powershell_psscriptanalyzer_executable
g:ale_powershell_psscriptanalyzer_executable
Type: |String|
Default: 'pwsh'
This variable sets executable used for powershell.
For example, on Windows you could set powershell to be Windows Powershell:
let g:ale_powershell_psscriptanalyzer_executable = 'powershell.exe'
<
*ale-options.powershell_psscriptanalyzer_module*
*g:ale_powershell_psscriptanalyzer_module*
*b:ale_powershell_psscriptanalyzer_module*powershell_psscriptanalyzer_module
g:ale_powershell_psscriptanalyzer_module
Type: |String|
Default: 'psscriptanalyzer'
This variable sets the name of the psscriptanalyzer module.
for psscriptanalyzer invocation.
*ale-options.powershell_psscriptanalyzer_exclusions*
*g:ale_powershell_psscriptanalyzer_exclusions*
*b:ale_powershell_psscriptanalyzer_exclusions*powershell_psscriptanalyzer_exclusions
g:ale_powershell_psscriptanalyzer_exclusions
Type: |String|
Default: ''
Set this variable to exclude test(s) for psscriptanalyzer
(-ExcludeRule option). To exclude more than one option, separate them with
commas. >
" Suppress Write-Host and Global vars warnings
let g:ale_powershell_psscriptanalyzer_exclusions =
\ 'PSAvoidUsingWriteHost,PSAvoidGlobalVars'
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Prolog (`doc/ale-prolog.txt`)
===============================================================================
ALE Prolog Integration ale-prolog-options
===============================================================================
swipl ale-prolog-swipl
*ale-options.prolog_swipl_executable*
*g:ale_prolog_swipl_executable*
*b:ale_prolog_swipl_executable*prolog_swipl_executable
g:ale_prolog_swipl_executable
Type: |String|
Default: 'swipl'
The executable that will be run for the swipl linter.
*ale-options.prolog_swipl_load*
*g:ale_prolog_swipl_load*
*b:ale_prolog_swipl_load*prolog_swipl_load
g:ale_prolog_swipl_load
Type: |String|
Default: 'current_prolog_flag(argv, [File]), load_files(File, [sandboxed(true)]), halt.'
The prolog goals that will be passed to |g:ale_prolog_swipl_executable| with -g option.
It does:
- Takes the first command argument (current file path)
- Checks (syntactic / semantic) problems and output to stderr
NOTE: sandboxed(true) prohibits executing some directives such as 'initialization main'.
*ale-options.prolog_swipl_timeout*
*g:ale_prolog_swipl_timeout*
*b:ale_prolog_swipl_timeout*prolog_swipl_timeout
g:ale_prolog_swipl_timeout
Type: |Number|
Default: 3
Timeout seconds to detect long-running linter.
It is done by setting SIGALRM.
See |g:ale_prolog_swipl_alarm| and |g:ale_prolog_swipl_alarm_handler|.
*ale-options.prolog_swipl_alarm*
*g:ale_prolog_swipl_alarm*
*b:ale_prolog_swipl_alarm*prolog_swipl_alarm
g:ale_prolog_swipl_alarm
Type: |String|
Default: 'alarm(%t, (%h), _, [])'
The prolog goals to be expected to set SIGALRM.
%t is replaced by |g:ale_prolog_swipl_timeout|.
%h is replaced by |g:ale_prolog_swipl_alarm_handler|.
*ale-options.prolog_swipl_alarm_handler*
*g:ale_prolog_swipl_alarm_handler*
*b:ale_prolog_swipl_alarm_handler*prolog_swipl_alarm_handler
g:ale_prolog_swipl_alarm_handler
Type: |String|
Default: 'writeln(user_error, "ERROR: Exceeded %t seconds, Please change g:prolog_swipl_timeout to modify the limit."), halt(1)'
The prolog goals to be expected that will be run on SIGALRM.
%t is replaced by |g:ale_prolog_swipl_timeout|.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Proto (`doc/ale-proto.txt`)
===============================================================================
ALE Proto Integration ale-proto-options
===============================================================================
Integration Information
To enable .proto file linting, update |g:ale_linters| as appropriate:
" Enable linter for .proto files
let g:ale_linters = {'proto': ['buf-lint', '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': ['buf-format', 'protolint']}
<
===============================================================================
buf-format ale-proto-buf-format
The formatter uses buf, a fully-featured Protobuf compiler that doesn't depend
on protoc. Make sure the buf binary is available in the system path, or
set ale_proto_buf_format_executable.
*ale-options.proto_buf_format_executable*
*g:ale_proto_buf_format_executable*proto_buf_format_executable
g:ale_proto_buf_format_executable
Type: |String|
Default: 'buf'
This variable can be changed to modify the executable used for buf.
===============================================================================
buf-lint ale-proto-buf-lint
The linter uses buf, a fully-featured Protobuf compiler that doesn't depend
on protoc. Make sure the buf binary is available in the system path, or
set ale_proto_buf_lint_executable.
*ale-options.proto_buf_lint_executable*
*g:ale_proto_buf_lint_executable*proto_buf_lint_executable
g:ale_proto_buf_lint_executable
Type: |String|
Default: 'buf'
This variable can be changed to modify the executable used for buf.
*ale-options.proto_buf_lint_config*
*g:ale_proto_buf_lint_config*proto_buf_lint_config
g:ale_proto_buf_lint_config
Type: |String|
Default: ''
A path to a buf 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.
===============================================================================
clang-format ale-proto-clangformat
See |ale-c-clangformat| for information about the available options.
Note that the C options are also used for Proto.
===============================================================================
protoc-gen-lint ale-proto-protoc-gen-lint
The linter is a plugin for the protoc binary. As long as the binary resides
in the system path, protoc will find it.
*ale-options.proto_protoc_gen_lint_options*
*g:ale_proto_protoc_gen_lint_options*proto_protoc_gen_lint_options
g:ale_proto_protoc_gen_lint_options
Type: |String|
Default: ''
This variable can be changed to modify flags given to protoc. Note that the
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.
*ale-options.proto_protolint_executable*
*g:ale_proto_protolint_executable*proto_protolint_executable
g:ale_proto_protolint_executable
Type: |String|
Default: 'protolint'
This variable can be changed to modify the executable used for protolint.
*ale-options.proto_protolint_config*
*g:ale_proto_protolint_config*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:
Doc Ale Pug (`doc/ale-pug.txt`)
===============================================================================
ALE Pug Integration ale-pug-options
===============================================================================
puglint ale-pug-puglint
The puglint linter will detect configuration files based on the path to the
filename automatically. Configuration files will be loaded in this order:
.pug-lintrc.pug-lintrc.js.pug-lintrc.jsonpackage.json
You might need to create a configuration file for your project to get
meaningful results.
*ale-options.pug_puglint_executable*
*g:ale_pug_puglint_executable*
*b:ale_pug_puglint_executable*pug_puglint_executable
g:ale_pug_puglint_executable
Type: |String|
Default: 'pug-lint'
See |ale-integrations-local-executables|
*ale-options.pug_puglint_options*
*g:ale_pug_puglint_options*
*b:ale_pug_puglint_options*pug_puglint_options
g:ale_pug_puglint_options
Type: |String|
Default: ''
This variable can be set to pass additional options to pug-lint.
*ale-options.pug_puglint_use_global*
*g:ale_pug_puglint_use_global*
*b:ale_pug_puglint_use_global*pug_puglint_use_global
g:ale_pug_puglint_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:
Doc Ale Puppet (`doc/ale-puppet.txt`)
===============================================================================
ALE Puppet Integration ale-puppet-options
===============================================================================
puppet ale-puppet-puppet
*ale-options.puppet_puppet_executable*
*g:ale_puppet_puppet_executable*
*b:ale_puppet_puppet_executable*puppet_puppet_executable
g:ale_puppet_puppet_executable
Type: |String|
Default: 'puppet'
This variable can be changed to specify the executable used for puppet.
*ale-options.puppet_puppet_options*
*g:ale_puppet_puppet_options*
*b:ale_puppet_puppet_options*puppet_puppet_options
g:ale_puppet_puppet_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
puppet parser validate invocation.
===============================================================================
puppetlint ale-puppet-puppetlint
*ale-options.puppet_puppetlint_executable*
*g:ale_puppet_puppetlint_executable*
*b:ale_puppet_puppetlint_executable*puppet_puppetlint_executable
g:ale_puppet_puppetlint_executable
Type: |String|
Default: 'puppet-lint'
This variable can be changed to specify the executable used for puppet-lint.
*ale-options.puppet_puppetlint_options*
*g:ale_puppet_puppetlint_options*
*b:ale_puppet_puppetlint_options*puppet_puppetlint_options
g:ale_puppet_puppetlint_options
Type: |String|
Default: '--no-autoloader_layout-check'
This variable can be changed to add command-line arguments to the
puppet-lint invocation.
===============================================================================
puppet-languageserver ale-puppet-languageserver
*ale-options.puppet_languageserver_executable*
*g:ale_puppet_languageserver_executable*
*b:ale_puppet_languageserver_executable*puppet_languageserver_executable
g:ale_puppet_languageserver_executable
type: |String|
Default: 'puppet-languageserver'
This variable can be used to specify the executable used for
puppet-languageserver.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Purescript (`doc/ale-purescript.txt`)
===============================================================================
ALE PureScript Integration ale-purescript-options
===============================================================================
purescript-language-server ale-purescript-language-server
PureScript Language Server
(https://github.com/nwolverson/purescript-language-server)
*ale-options.purescript_ls_executable*
*g:ale_purescript_ls_executable*
*b:ale_purescript_ls_executable*purescript_ls_executable
g:ale_purescript_ls_executable
Type: |String|
Default: 'purescript-language-server'
PureScript language server executable.
*ale-options.purescript_ls_config*
*g:ale_purescript_ls_config*
*b:ale_purescript_ls_config*purescript_ls_config
g:ale_purescript_ls_config
Type: |Dictionary|
Default: {}
Dictionary containing configuration settings that will be passed to the
language server. For example, with a spago project: >
let g:ale_purescript_ls_config = {
\ 'purescript': {
\ 'addSpagoSources': v:true,
\ 'addNpmPath': v:true,
\ 'buildCommand': 'spago --quiet build --purs-args --json-errors',
\ },
}
<
===============================================================================
purs-tidy ale-purescript-tidy
*ale-options.purescript_tidy_executable*
*g:ale_purescript_tidy_executable*
*b:ale_purescript_tidy_executable*purescript_tidy_executable
g:ale_purescript_tidy_executable
Type: |String|
Default: 'purs-tidy'
This variable can be changed to use a different executable for purs-tidy.
*ale-options.purescript_tidy_use_global*
*g:ale_purescript_tidy_use_global*
*b:ale_purescript_tidy_use_global*purescript_tidy_use_global
g:ale_purescript_tidy_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.purescript_tidy_options*
*g:ale_purescript_tidy_options*
*b:ale_purescript_tidy_options*purescript_tidy_options
g:ale_purescript_tidy_options
Type: |String|
Default: ''
This variable can be set to pass in additional option to the 'purs-tidy'
executable.
let g:ale_purescript_options = '--indent 3'
<
===============================================================================
purty ale-purescript-purty
*ale-options.purescript_purty_executable*
*g:ale_purescript_purty_executable*
*b:ale_purescript_purty_executable*purescript_purty_executable
g:ale_purescript_purty_executable
Type: |String|
Default: 'purty'
This variable can be changed to use a different executable for purty.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Pyrex (`doc/ale-pyrex.txt`)
===============================================================================
ALE Pyrex (Cython) Integration ale-pyrex-options
===============================================================================
cython ale-pyrex-cython
*ale-options.pyrex_cython_executable*
*g:ale_pyrex_cython_executable*
*b:ale_pyrex_cython_executable*pyrex_cython_executable
g:ale_pyrex_cython_executable
Type: |String|
Default: 'cython'
This variable can be changed to use a different executable for cython.
*ale-options.pyrex_cython_options*
*g:ale_pyrex_cython_options*
*b:ale_pyrex_cython_options*pyrex_cython_options
g:ale_pyrex_cython_options
Type: |String|
Default: '--warning-extra --warning-errors'
This variable can be changed to modify flags given to cython.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
Doc Ale Python (`doc/ale-python.txt`)
===============================================================================
ALE Python Integration ale-python-options
*ale-options.python_auto_pipenv*
*g:ale_python_auto_pipenv*
*b:ale_python_auto_pipenv*python_auto_pipenv
g:ale_python_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.
*ale-options.python_auto_poetry*
*g:ale_python_auto_poetry*
*b:ale_python_auto_poetry*python_auto_poetry
g:ale_python_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_auto_uv*
*g:ale_python_auto_uv*
*b:ale_python_auto_uv*python_auto_uv
g:ale_python_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
*ale-options.python_auto_virtualenv*
*g:ale_python_auto_virtualenv*
*b:ale_python_auto_virtualenv*python_auto_virtualenv
g:ale_python_auto_virtualenv
Type: |Number|
Default: 0
If set to 1, ALE will automatically set environment variables for commands
such as PATH to attempt to make the experience of running Python linters
via virtualenv easier, without the need for another plugin or some
specialised setup.
===============================================================================
ALE Python Project Root Behavior ale-python-root
For some linters, ALE will search for a Python project root by looking at the
files in directories on or above where a file being checked is. ALE applies
the following methods, in order:
- Find the first directory containing a common Python configuration file.
- If no configuration file can be found, use the first directory which does
not contain a readable file named__init__.py.
ALE will look for configuration files with the following filenames. >
MANIFEST.in
setup.cfg
tox.ini
.pyre_configuration.local
mypy.ini
.mypy.ini
pycodestyle.cfg
.flake8
.flake8rc
pylama.ini
pylintrc
.pylintrc
pyrightconfig.json
pyrightconfig.toml
Pipfile
Pipfile.lock
poetry.lock
pyproject.toml
ty.toml
.tool-versions
uv.lock
<
The first directory containing any of the files named above will be used.
===============================================================================
autoflake ale-python-autoflake
*ale-options.python_autoflake_executable*
*g:ale_python_autoflake_executable*
*b:ale_python_autoflake_executable*python_autoflake_executable
g:ale_python_autoflake_executable
Type: |String|
Default: 'autoflake'
See |ale-integrations-local-executables|
*ale-options.python_autoflake_options*
*g:ale_python_autoflake_options*
*b:ale_python_autoflake_options*python_autoflake_options
g:ale_python_autoflake_options
Type: |String|
Default: ''
This variable can be set to pass extra options to autoflake.
*ale-options.python_autoflake_use_global*
*g:ale_python_autoflake_use_global*
*b:ale_python_autoflake_use_global*python_autoflake_use_global
g:ale_python_autoflake_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_autoflake_auto_pipenv*
*g:ale_python_autoflake_auto_pipenv*
*b:ale_python_autoflake_auto_pipenv*python_autoflake_auto_pipenv
g:ale_python_autoflake_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.
*ale-options.python_autoflake_auto_poetry*
*g:ale_python_autoflake_auto_poetry*
*b:ale_python_autoflake_auto_poetry*python_autoflake_auto_poetry
g:ale_python_autoflake_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_autoflake_auto_uv*
*g:ale_python_autoflake_auto_uv*
*b:ale_python_autoflake_auto_uv*python_autoflake_auto_uv
g:ale_python_autoflake_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
autoimport ale-python-autoimport
*ale-options.python_autoimport_executable*
*g:ale_python_autoimport_executable*
*b:ale_python_autoimport_executable*python_autoimport_executable
g:ale_python_autoimport_executable
Type: |String|
Default: 'autoimport'
See |ale-integrations-local-executables|
*ale-options.python_autoimport_options*
*g:ale_python_autoimport_options*
*b:ale_python_autoimport_options*python_autoimport_options
g:ale_python_autoimport_options
Type: |String|
Default: ''
This variable can be set to pass extra options to autoimport.
*ale-options.python_autoimport_use_global*
*g:ale_python_autoimport_use_global*
*b:ale_python_autoimport_use_global*python_autoimport_use_global
g:ale_python_autoimport_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_autoimport_auto_pipenv*
*g:ale_python_autoimport_auto_pipenv*
*b:ale_python_autoimport_auto_pipenv*python_autoimport_auto_pipenv
g:ale_python_autoimport_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.
*ale-options.python_autoimport_auto_poetry*
*g:ale_python_autoimport_auto_poetry*
*b:ale_python_autoimport_auto_poetry*python_autoimport_auto_poetry
g:ale_python_autoimport_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_autoimport_auto_uv*
*g:ale_python_autoimport_auto_uv*
*b:ale_python_autoimport_auto_uv*python_autoimport_auto_uv
g:ale_python_autoimport_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
autopep8 ale-python-autopep8
*ale-options.python_autopep8_executable*
*g:ale_python_autopep8_executable*
*b:ale_python_autopep8_executable*python_autopep8_executable
g:ale_python_autopep8_executable
Type: |String|
Default: 'autopep8'
See |ale-integrations-local-executables|
*ale-options.python_autopep8_options*
*g:ale_python_autopep8_options*
*b:ale_python_autopep8_options*python_autopep8_options
g:ale_python_autopep8_options
Type: |String|
Default: ''
This variable can be set to pass extra options to autopep8.
*ale-options.python_autopep8_use_global*
*g:ale_python_autopep8_use_global*
*b:ale_python_autopep8_use_global*python_autopep8_use_global
g:ale_python_autopep8_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_autopep8_auto_pipenv*
*g:ale_python_autopep8_auto_pipenv*
*b:ale_python_autopep8_auto_pipenv*python_autopep8_auto_pipenv
g:ale_python_autopep8_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.
*ale-options.python_autopep8_auto_poetry*
*g:ale_python_autopep8_auto_poetry*
*b:ale_python_autopep8_auto_poetry*python_autopep8_auto_poetry
g:ale_python_autopep8_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_autopep8_auto_uv*
*g:ale_python_autopep8_auto_uv*
*b:ale_python_autopep8_auto_uv*python_autopep8_auto_uv
g:ale_python_autopep8_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
bandit ale-python-bandit
*ale-options.python_bandit_executable*
*g:ale_python_bandit_executable*
*b:ale_python_bandit_executable*python_bandit_executable
g:ale_python_bandit_executable
Type: |String|
Default: 'bandit'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run bandit'.
Set this to 'poetry' to invoke 'poetry run bandit'.
*ale-options.python_bandit_options*
*g:ale_python_bandit_options*
*b:ale_python_bandit_options*python_bandit_options
g:ale_python_bandit_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
bandit invocation.
*ale-options.python_bandit_use_config*
*g:ale_python_bandit_use_config*
*b:ale_python_bandit_use_config*python_bandit_use_config
g:ale_python_bandit_use_config
Type: |Number|
Default: 1
If this variable is true and a .bandit file exists in the directory of the
file being checked or a parent directory, an --ini option is added to the
bandit command for the nearest .bandit file. Set this variable false to
disable adding the --ini option automatically.
*ale-options.python_bandit_use_global*
*g:ale_python_bandit_use_global*
*b:ale_python_bandit_use_global*python_bandit_use_global
g:ale_python_bandit_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_bandit_auto_pipenv*
*g:ale_python_bandit_auto_pipenv*
*b:ale_python_bandit_auto_pipenv*python_bandit_auto_pipenv
g:ale_python_bandit_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.
*ale-options.python_bandit_auto_poetry*
*g:ale_python_bandit_auto_poetry*
*b:ale_python_bandit_auto_poetry*python_bandit_auto_poetry
g:ale_python_bandit_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_bandit_auto_uv*
*g:ale_python_bandit_auto_uv*
*b:ale_python_bandit_auto_uv*python_bandit_auto_uv
g:ale_python_bandit_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
black ale-python-black
*ale-options.python_black_executable*
*g:ale_python_black_executable*
*b:ale_python_black_executable*python_black_executable
g:ale_python_black_executable
Type: |String|
Default: 'black'
See |ale-integrations-local-executables|
*ale-options.python_black_options*
*g:ale_python_black_options*
*b:ale_python_black_options*python_black_options
g:ale_python_black_options
Type: |String|
Default: ''
This variable can be set to pass extra options to black.
*ale-options.python_black_use_global*
*g:ale_python_black_use_global*
*b:ale_python_black_use_global*python_black_use_global
g:ale_python_black_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_black_auto_pipenv*
*g:ale_python_black_auto_pipenv*
*b:ale_python_black_auto_pipenv*python_black_auto_pipenv
g:ale_python_black_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.
*ale-options.python_black_auto_poetry*
*g:ale_python_black_auto_poetry*
*b:ale_python_black_auto_poetry*python_black_auto_poetry
g:ale_python_black_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_black_auto_uv*
*g:ale_python_black_auto_uv*
*b:ale_python_black_auto_uv*python_black_auto_uv
g:ale_python_black_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
*ale-options.python_black_change_directory*
*g:ale_python_black_change_directory*
*b:ale_python_black_change_directory*python_black_change_directory
g:ale_python_black_change_directory
Type: |Number|
Default: 1
If set to 1, ALE will switch to the directory the Python file being
checked with black is in before checking it. This helps black find
configuration files more easily. This option can be turned off if you want
to control the directory Python is executed from yourself.
===============================================================================
cspell ale-python-cspell
See |ale-cspell-options|
===============================================================================
dprint ale-python-dprint
See |ale-dprint-options| and https://dprint.dev/plugins/ruff/.
===============================================================================
flake8 ale-python-flake8
*ale-options.python_flake8_change_directory*
*g:ale_python_flake8_change_directory*
*b:ale_python_flake8_change_directory*python_flake8_change_directory
g:ale_python_flake8_change_directory
Type: |String|
Default: 'project'
If set to project, ALE will switch to the project root before checking file.
If set to file, ALE will first switch to the directory containing the
Python file being checked with flake8 before checking it.
You can turn it off with off option if you want to control the directory
Python is executed from yourself.
*ale-options.python_flake8_executable*
*g:ale_python_flake8_executable*
*b:ale_python_flake8_executable*python_flake8_executable
g:ale_python_flake8_executable
Type: |String|
Default: 'flake8'
This variable can be changed to modify the executable used for flake8. Set
this to 'pipenv' to invoke 'pipenv run flake8'. Set this to
'poetry' to invoke 'poetry run flake8'.
*ale-options.python_flake8_options*
*g:ale_python_flake8_options*
*b:ale_python_flake8_options*python_flake8_options
g:ale_python_flake8_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the flake8
invocation.
For example, to dynamically switch between programs targeting Python 2 and
Python 3, you may want to set >
let g:ale_python_flake8_executable = 'python3' " or 'python' for Python 2
let g:ale_python_flake8_options = '-m flake8'
<
after making sure it's installed for the appropriate Python versions (e.g.
python3 -m pip install --user flake8).
*ale-options.python_flake8_use_global*
*g:ale_python_flake8_use_global*
*b:ale_python_flake8_use_global*python_flake8_use_global
g:ale_python_flake8_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable controls whether or not ALE will search for flake8 in a
virtualenv directory first. If this variable is set to 1, then ALE will
always use |g:ale_python_flake8_executable| for the executable path.
Both variables can be set with b: buffer variables instead.
*ale-options.python_flake8_auto_pipenv*
*g:ale_python_flake8_auto_pipenv*
*b:ale_python_flake8_auto_pipenv*python_flake8_auto_pipenv
g:ale_python_flake8_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.
*ale-options.python_flake8_auto_poetry*
*g:ale_python_flake8_auto_poetry*
*b:ale_python_flake8_auto_poetry*python_flake8_auto_poetry
g:ale_python_flake8_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_flake8_auto_uv*
*g:ale_python_flake8_auto_uv*
*b:ale_python_flake8_auto_uv*python_flake8_auto_uv
g:ale_python_flake8_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
flakehell ale-python-flakehell
*ale-options.python_flakehell_change_directory*
*g:ale_python_flakehell_change_directory*
*b:ale_python_flakehell_change_directory*python_flakehell_change_directory
g:ale_python_flakehell_change_directory
Type: |String|
Default: project
If set to project, ALE will switch to the project root before checking file.
If set to file, ALE will switch to directory the Python file being
checked with flakehell is in before checking it.
You can turn it off with off option if you want to control the directory
Python is executed from yourself.
*ale-options.python_flakehell_executable*
*g:ale_python_flakehell_executable*
*b:ale_python_flakehell_executable*python_flakehell_executable
g:ale_python_flakehell_executable
Type: |String|
Default: 'flakehell'
This variable can be changed to modify the executable used for flakehell. Set
this to 'pipenv' to invoke 'pipenv run flakehell'. Set this to
'poetry' to invoke 'poetry run flakehell'. Set this to 'python' to
invoke 'python -m flakehell'.
*ale-options.python_flakehell_options*
*g:ale_python_flakehell_options*
*b:ale_python_flakehell_options*python_flakehell_options
g:ale_python_flakehell_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the flakehell
lint invocation.
*ale-options.python_flakehell_use_global*
*g:ale_python_flakehell_use_global*
*b:ale_python_flakehell_use_global*python_flakehell_use_global
g:ale_python_flakehell_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable controls whether or not ALE will search for flakehell in a
virtualenv directory first. If this variable is set to 1, then ALE will
always use |g:ale_python_flakehell_executable| for the executable path.
Both variables can be set with b: buffer variables instead.
*ale-options.python_flakehell_auto_pipenv*
*g:ale_python_flakehell_auto_pipenv*
*b:ale_python_flakehell_auto_pipenv*python_flakehell_auto_pipenv
g:ale_python_flakehell_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.
*ale-options.python_flakehell_auto_poetry*
*g:ale_python_flakehell_auto_poetry*
*b:ale_python_flakehell_auto_poetry*python_flakehell_auto_poetry
g:ale_python_flakehell_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_flakehell_auto_uv*
*g:ale_python_flakehell_auto_uv*
*b:ale_python_flakehell_auto_uv*python_flakehell_auto_uv
g:ale_python_flakehell_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
isort ale-python-isort
*ale-options.python_isort_executable*
*g:ale_python_isort_executable*
*b:ale_python_isort_executable*python_isort_executable
g:ale_python_isort_executable
Type: |String|
Default: 'isort'
See |ale-integrations-local-executables|
*ale-options.python_isort_options*
*g:ale_python_isort_options*
*b:ale_python_isort_options*python_isort_options
g:ale_python_isort_options
Type: |String|
Default: ''
This variable can be set to pass extra options to isort.
*ale-options.python_isort_use_global*
*g:ale_python_isort_use_global*
*b:ale_python_isort_use_global*python_isort_use_global
g:ale_python_isort_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_isort_auto_pipenv*
*g:ale_python_isort_auto_pipenv*
*b:ale_python_isort_auto_pipenv*python_isort_auto_pipenv
g: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.
*ale-options.python_isort_auto_poetry*
*g:ale_python_isort_auto_poetry*
*b:ale_python_isort_auto_poetry*python_isort_auto_poetry
g:ale_python_isort_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_isort_auto_uv*
*g:ale_python_isort_auto_uv*
*b:ale_python_isort_auto_uv*python_isort_auto_uv
g:ale_python_isort_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
mypy ale-python-mypy
The minimum supported version of mypy that ALE supports is v0.4.4. This is
the first version containing the --shadow-file option ALE needs to be able
to check for errors while you type.
mypy will be run from a detected project root, per |ale-python-root|.
*ale-options.python_mypy_auto_pipenv*
*g:ale_python_mypy_auto_pipenv*
*b:ale_python_mypy_auto_pipenv*python_mypy_auto_pipenv
g:ale_python_mypy_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.
*ale-options.python_mypy_auto_poetry*
*g:ale_python_mypy_auto_poetry*
*b:ale_python_mypy_auto_poetry*python_mypy_auto_poetry
g:ale_python_mypy_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_mypy_auto_uv*
*g:ale_python_mypy_auto_uv*
*b:ale_python_mypy_auto_uv*python_mypy_auto_uv
g:ale_python_mypy_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
*ale-options.python_mypy_executable*
*g:ale_python_mypy_executable*
*b:ale_python_mypy_executable*python_mypy_executable
g:ale_python_mypy_executable
Type: |String|
Default: 'mypy'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run mypy'.
Set this to 'poetry' to invoke 'poetry run mypy'.
*ale-options.python_mypy_ignore_invalid_syntax*
*g:ale_python_mypy_ignore_invalid_syntax*
*b:ale_python_mypy_ignore_invalid_syntax*python_mypy_ignore_invalid_syntax
g:ale_python_mypy_ignore_invalid_syntax
Type: |Number|
Default: 0
When set to 1, syntax error messages for mypy will be ignored. This option
can be used when running other Python linters which check for syntax errors,
as mypy can take a while to finish executing.
*ale-options.python_mypy_options*
*g:ale_python_mypy_options*
*b:ale_python_mypy_options*python_mypy_options
g:ale_python_mypy_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the mypy
invocation.
*ale-options.python_mypy_show_notes*
*g:ale_python_mypy_show_notes*
*b:ale_python_mypy_show_notes*python_mypy_show_notes
g:ale_python_mypy_show_notes
Type: |Number|
Default: 1
If enabled, notes on lines will be displayed as 'I' (info) messages.
*ale-options.python_mypy_use_global*
*g:ale_python_mypy_use_global*
*b:ale_python_mypy_use_global*python_mypy_use_global
g:ale_python_mypy_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
===============================================================================
prospector ale-python-prospector
*ale-options.python_prospector_executable*
*g:ale_python_prospector_executable*
*b:ale_python_prospector_executable*python_prospector_executable
g:ale_python_prospector_executable
Type: |String|
Default: 'prospector'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run prospector'.
Set this to 'poetry' to invoke 'poetry run prospector'.
*ale-options.python_prospector_options*
*g:ale_python_prospector_options*
*b:ale_python_prospector_options*python_prospector_options
g:ale_python_prospector_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the prospector
invocation.
For example, to dynamically switch between programs targeting Python 2 and
Python 3, you may want to set >
let g:ale_python_prospector_executable = 'python3'
" or 'python' for Python 2
let g:ale_python_prospector_options = '--rcfile /path/to/.prospector.yaml'
" The virtualenv detection needs to be disabled.
let g:ale_python_prospector_use_global = 0
after making sure it's installed for the appropriate Python versions (e.g.
python3 -m pip install --user prospector).
<
ale-options.python_prospector_use_global
g:ale_python_prospector_use_global
b:ale_python_prospector_use_global
python_prospector_use_global
g:ale_python_prospector_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_prospector_auto_pipenv*
*g:ale_python_prospector_auto_pipenv*
*b:ale_python_prospector_auto_pipenv*python_prospector_auto_pipenv
g:ale_python_prospector_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.
*ale-options.python_prospector_auto_poetry*
*g:ale_python_prospector_auto_poetry*
*b:ale_python_prospector_auto_poetry*python_prospector_auto_poetry
g:ale_python_prospector_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_prospector_auto_uv*
*g:ale_python_prospector_auto_uv*
*b:ale_python_prospector_auto_uv*python_prospector_auto_uv
g:ale_python_prospector_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pycln ale-python-pycln
*ale-options.python_pycln_change_directory*
*g:ale_python_pycln_change_directory*
*b:ale_python_pycln_change_directory*python_pycln_change_directory
g:ale_python_pycln_change_directory
Type: |Number|
Default: 1
If set to 1, pycln will be run from a detected project root, per
|ale-python-root|. if set to 0 or no project root detected,
pycln will be run from the buffer's directory.
*ale-options.python_pycln_executable*
*g:ale_python_pycln_executable*
*b:ale_python_pycln_executable*python_pycln_executable
g:ale_python_pycln_executable
Type: |String|
Default: 'pycln'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pycln'.
Set this to 'poetry' to invoke 'poetry run pycln'.
*ale-options.python_pycln_options*
*g:ale_python_pycln_options*
*b:ale_python_pycln_options*python_pycln_options
g:ale_python_pycln_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the pycln
invocation.
For example, to select/enable and/or disable some error codes,
you may want to set the following: >
let g:ale_python_pycln_options = '--expand-stars'
<
ale-options.python_pycln_config_file
g:ale_python_pycln_config_file
b:ale_python_pycln_config_file
python_pycln_config_file
g:ale_python_pycln_config_file
Type: |String|
Default: ''
Use this variable to set the configuration file.
If '--config' is found in the |g:ale_python_pycln_options|, then that
option value will override the value in this variable.
*ale-options.python_pycln_use_global*
*g:ale_python_pycln_use_global*
*b:ale_python_pycln_use_global*python_pycln_use_global
g:ale_python_pycln_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pycln_auto_pipenv*
*g:ale_python_pycln_auto_pipenv*
*b:ale_python_pycln_auto_pipenv*python_pycln_auto_pipenv
g:ale_python_pycln_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.
*ale-options.python_pycln_auto_poetry*
*g:ale_python_pycln_auto_poetry*
*b:ale_python_pycln_auto_poetry*python_pycln_auto_poetry
g:ale_python_pycln_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pycln_auto_uv*
*g:ale_python_pycln_auto_uv*
*b:ale_python_pycln_auto_uv*python_pycln_auto_uv
g:ale_python_pycln_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pycodestyle ale-python-pycodestyle
*ale-options.python_pycodestyle_executable*
*g:ale_python_pycodestyle_executable*
*b:ale_python_pycodestyle_executable*python_pycodestyle_executable
g:ale_python_pycodestyle_executable
Type: |String|
Default: 'pycodestyle'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pycodestyle'.
Set this to 'poetry' to invoke 'poetry run pycodestyle'.
*ale-options.python_pycodestyle_options*
*g:ale_python_pycodestyle_options*
*b:ale_python_pycodestyle_options*python_pycodestyle_options
g:ale_python_pycodestyle_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
pycodestyle invocation.
*ale-options.python_pycodestyle_use_global*
*g:ale_python_pycodestyle_use_global*
*b:ale_python_pycodestyle_use_global*python_pycodestyle_use_global
g:ale_python_pycodestyle_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pycodestyle_auto_pipenv*
*g:ale_python_pycodestyle_auto_pipenv*
*b:ale_python_pycodestyle_auto_pipenv*python_pycodestyle_auto_pipenv
g:ale_python_pycodestyle_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.
*ale-options.python_pycodestyle_auto_poetry*
*g:ale_python_pycodestyle_auto_poetry*
*b:ale_python_pycodestyle_auto_poetry*python_pycodestyle_auto_poetry
g:ale_python_pycodestyle_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pycodestyle_auto_uv*
*g:ale_python_pycodestyle_auto_uv*
*b:ale_python_pycodestyle_auto_uv*python_pycodestyle_auto_uv
g:ale_python_pycodestyle_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pydocstyle ale-python-pydocstyle
*ale-options.python_pydocstyle_executable*
*g:ale_python_pydocstyle_executable*
*b:ale_python_pydocstyle_executable*python_pydocstyle_executable
g:ale_python_pydocstyle_executable
Type: |String|
Default: 'pydocstyle'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pydocstyle'.
Set this to 'poetry' to invoke 'poetry run pydocstyle'.
*ale-options.python_pydocstyle_options*
*g:ale_python_pydocstyle_options*
*b:ale_python_pydocstyle_options*python_pydocstyle_options
g:ale_python_pydocstyle_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the
pydocstyle invocation.
*ale-options.python_pydocstyle_use_global*
*g:ale_python_pydocstyle_use_global*
*b:ale_python_pydocstyle_use_global*python_pydocstyle_use_global
g:ale_python_pydocstyle_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pydocstyle_auto_pipenv*
*g:ale_python_pydocstyle_auto_pipenv*
*b:ale_python_pydocstyle_auto_pipenv*python_pydocstyle_auto_pipenv
g:ale_python_pydocstyle_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.
*ale-options.python_pydocstyle_auto_poetry*
*g:ale_python_pydocstyle_auto_poetry*
*b:ale_python_pydocstyle_auto_poetry*python_pydocstyle_auto_poetry
g:ale_python_pydocstyle_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pydocstyle_auto_uv*
*g:ale_python_pydocstyle_auto_uv*
*b:ale_python_pydocstyle_auto_uv*python_pydocstyle_auto_uv
g:ale_python_pydocstyle_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pyflakes ale-python-pyflakes
*ale-options.python_pyflakes_executable*
*g:ale_python_pyflakes_executable*
*b:ale_python_pyflakes_executable*python_pyflakes_executable
g:ale_python_pyflakes_executable
Type: |String|
Default: 'pyflakes'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pyflakes'.
Set this to 'poetry' to invoke 'poetry run pyflakes'.
*ale-options.python_pyflakes_auto_pipenv*
*g:ale_python_pyflakes_auto_pipenv*
*b:ale_python_pyflakes_auto_pipenv*python_pyflakes_auto_pipenv
g:ale_python_pyflakes_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.
*ale-options.python_pyflakes_auto_poetry*
*g:ale_python_pyflakes_auto_poetry*
*b:ale_python_pyflakes_auto_poetry*python_pyflakes_auto_poetry
g:ale_python_pyflakes_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pyflakes_auto_uv*
*g:ale_python_pyflakes_auto_uv*
*b:ale_python_pyflakes_auto_uv*python_pyflakes_auto_uv
g:ale_python_pyflakes_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pyflyby ale-python-pyflyby
*ale-options.python_pyflyby_executable*
*g:ale_python_pyflyby_executable*
*b:ale_python_pyflyby_executable*python_pyflyby_executable
g:ale_python_pyflyby_executable
Type: |String|
Default: 'tidy-imports'
See |ale-integrations-local-executables|
*ale-options.python_pyflyby_options*
*g:ale_python_pyflyby_options*
*b:ale_python_pyflyby_options*python_pyflyby_options
g:ale_python_pyflyby_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the pyflyby
tidy-imports invocation.
*ale-options.python_pyflyby_use_global*
*g:ale_python_pyflyby_use_global*
*b:ale_python_pyflyby_use_global*python_pyflyby_use_global
g:ale_python_pyflyby_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pyflyby_auto_pipenv*
*g:ale_python_pyflyby_auto_pipenv*
*b:ale_python_pyflyby_auto_pipenv*python_pyflyby_auto_pipenv
g:ale_python_pyflyby_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.
*ale-options.python_pyflyby_auto_poetry*
*g:ale_python_pyflyby_auto_poetry*
*b:ale_python_pyflyby_auto_poetry*python_pyflyby_auto_poetry
g:ale_python_pyflyby_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pyflyby_auto_uv*
*g:ale_python_pyflyby_auto_uv*
*b:ale_python_pyflyby_auto_uv*python_pyflyby_auto_uv
g:ale_python_pyflyby_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pylama ale-python-pylama
*ale-options.python_pylama_change_directory*
*g:ale_python_pylama_change_directory*
*b:ale_python_pylama_change_directory*python_pylama_change_directory
g:ale_python_pylama_change_directory
Type: |Number|
Default: 1
If set to 1, pylama will be run from a detected project root, per
|ale-python-root|. This is useful because pylama only searches for
configuration files in its current directory and applies file masks using
paths relative to its current directory. This option can be turned off if
you want to control the directory in which pylama is executed.
*ale-options.python_pylama_executable*
*g:ale_python_pylama_executable*
*b:ale_python_pylama_executable*python_pylama_executable
g:ale_python_pylama_executable
Type: |String|
Default: 'pylama'
This variable can be changed to modify the executable used for pylama. Set
this to 'pipenv' to invoke 'pipenv run pylama'. Set this to
'poetry' to invoke 'poetry run pylama'.
*ale-options.python_pylama_options*
*g:ale_python_pylama_options*
*b:ale_python_pylama_options*python_pylama_options
g:ale_python_pylama_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the pylama
invocation.
*ale-options.python_pylama_use_global*
*g:ale_python_pylama_use_global*
*b:ale_python_pylama_use_global*python_pylama_use_global
g:ale_python_pylama_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
This variable controls whether or not ALE will search for pylama in a
virtualenv directory first. If this variable is set to 1, then ALE will
always use |g:ale_python_pylama_executable| for the executable path.
Both variables can be set with b: buffer variables instead.
*ale-options.python_pylama_auto_pipenv*
*g:ale_python_pylama_auto_pipenv*
*b:ale_python_pylama_auto_pipenv*python_pylama_auto_pipenv
g:ale_python_pylama_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.
*ale-options.python_pylama_auto_poetry*
*g:ale_python_pylama_auto_poetry*
*b:ale_python_pylama_auto_poetry*python_pylama_auto_poetry
g:ale_python_pylama_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pylama_auto_uv*
*g:ale_python_pylama_auto_uv*
*b:ale_python_pylama_auto_uv*python_pylama_auto_uv
g:ale_python_pylama_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
===============================================================================
pylint ale-python-pylint
*ale-options.python_pylint_change_directory*
*g:ale_python_pylint_change_directory*
*b:ale_python_pylint_change_directory*python_pylint_change_directory
g:ale_python_pylint_change_directory
Type: |Number|
Default: 1
If set to 1, pylint will be run from a detected project root, per
|ale-python-root|. Since pylint only checks for pylintrc in the packages
above its current directory before falling back to user and global pylintrc
files, this is necessary for pylint to use a project pylintrc file, if
present. This option can be turned off if you want to control the directory
Python is executed from yourself.
*ale-options.python_pylint_executable*
*g:ale_python_pylint_executable*
*b:ale_python_pylint_executable*python_pylint_executable
g:ale_python_pylint_executable
Type: |String|
Default: 'pylint'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pylint'.
Set this to 'poetry' to invoke 'poetry run pylint'.
*ale-options.python_pylint_options*
*g:ale_python_pylint_options*
*b:ale_python_pylint_options*python_pylint_options
g:ale_python_pylint_options
Type: |String|
Default: ''
This variable can be changed to add command-line arguments to the pylint
invocation.
For example, to dynamically switch between programs targeting Python 2 and
Python 3, you may want to set >
let g:ale_python_pylint_executable = 'python3' " or 'python' for Python 2
let g:ale_python_pylint_options = '--rcfile /path/to/pylint.rc'
" The virtualenv detection needs to be disabled.
let g:ale_python_pylint_use_global = 0
after making sure it's installed for the appropriate Python versions (e.g.
python3 -m pip install --user pylint).
<
ale-options.python_pylint_use_global
g:ale_python_pylint_use_global
b:ale_python_pylint_use_global
python_pylint_use_global
g:ale_python_pylint_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pylint_auto_pipenv*
*g:ale_python_pylint_auto_pipenv*
*b:ale_python_pylint_auto_pipenv*python_pylint_auto_pipenv
g:ale_python_pylint_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.
*ale-options.python_pylint_auto_poetry*
*g:ale_python_pylint_auto_poetry*
*b:ale_python_pylint_auto_poetry*python_pylint_auto_poetry
g:ale_python_pylint_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pylint_auto_uv*
*g:ale_python_pylint_auto_uv*
*b:ale_python_pylint_auto_uv*python_pylint_auto_uv
g:ale_python_pylint_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
*ale-options.python_pylint_use_msg_id*
*g:ale_python_pylint_use_msg_id*
*b:ale_python_pylint_use_msg_id*python_pylint_use_msg_id
g:ale_python_pylint_use_msg_id
Type: |Number|
Default: 0
Use message for output (e.g. I0011) instead of symbolic name of the message
(e.g. locally-disabled).
===============================================================================
pylsp ale-python-pylsp
pylsp will be run from a detected project root, per |ale-python-root|.
*ale-options.python_pylsp_executable*
*g:ale_python_pylsp_executable*
*b:ale_python_pylsp_executable*python_pylsp_executable
g:ale_python_pylsp_executable
Type: |String|
Default: 'pylsp'
See |ale-integrations-local-executables|
Set this to 'pipenv' to invoke 'pipenv run pylsp'.
Set this to 'poetry' to invoke 'poetry run pylsp'.
*ale-options.python_pylsp_use_global*
*g:ale_python_pylsp_use_global*
*b:ale_python_pylsp_use_global*python_pylsp_use_global
g:ale_python_pylsp_use_global
Type: |Number|
Default: get(g:, 'ale_use_global_executables', 0)
See |ale-integrations-local-executables|
*ale-options.python_pylsp_auto_pipenv*
*g:ale_python_pylsp_auto_pipenv*
*b:ale_python_pylsp_auto_pipenv*python_pylsp_auto_pipenv
g:ale_python_pylsp_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.
*ale-options.python_pylsp_auto_poetry*
*g:ale_python_pylsp_auto_poetry*
*b:ale_python_pylsp_auto_poetry*python_pylsp_auto_poetry
g:ale_python_pylsp_auto_poetry
Type: |Number|
Default: 0
Detect whether the file is inside a poetry, and set the executable to poetry
if true. This is overridden by a manually-set executable.
*ale-options.python_pylsp_auto_uv*
*g:ale_python_pylsp_auto_uv*
*b:ale_python_pylsp_auto_uv*python_pylsp_auto_uv
g:ale_python_pylsp_auto_uv
Type: |Number|
Default: 0
Set the executable to uv if true. This is overridden by a manually-set
executable.
*ale-options.python_pylsp_config*
*g:ale_python_pylsp_config*
*b:ale_python_pylsp_config*python_pylsp_config
g:ale_python_pylsp_config
Type: |Dictionary|
Default: {}
Dictionary with configuration settings for pylsp. For example, to disable
the pycodestyle linter: >
let g:ale_python_pylsp_config = {
\ 'pylsp': {
\ 'plugins': {
\ 'pycodestyle': {
\