*ale-supported-languages-and-tools.txt*  For Vim version 8.0.
*ale-supported-list*

ALE Supported Languages and Tools

===============================================================================

The following languages and tools are supported by ALE.

Notes:

`^` No linters for text or Vim help filetypes are enabled by default.
`!!` These linters check only files on disk. See |ale-lint-file-linters|

* Ada
  * `ada_language_server`
  * `cspell`
  * `gcc`
  * `gnatpp`
* Ansible
  * `ansible-language-server`
  * `ansible-lint`!!
* API Blueprint
  * `drafter`
* APKBUILD
  * `apkbuild-lint`
  * `secfixes-check`
* AsciiDoc
  * `alex`
  * `cspell`
  * `languagetool`!!
  * `proselint`
  * `redpen`
  * `textlint`
  * `vale`
  * `write-good`
* ASM
  * `gcc`
  * `llvm-mc`
* AVRA
  * `avra`
* Awk
  * `gawk`
* Bash
  * `bashate`
  * `cspell`
  * `language-server`
  * `shell` (-n flag)
  * `shellcheck`
  * `shfmt`
* Bats
  * `shellcheck`
* Bazel
  * `buildifier`
* BibTeX
  * `bibclean`
* Bicep
  * `bicep`
* BitBake
  * `oelint-adv`
* Bourne Shell
  * `shell` (-n flag)
  * `shellcheck`
  * `shfmt`
* C
  * `astyle`
  * `ccls`
  * `clang` (`cc`)
  * `clang-format`
  * `clangcheck`!!
  * `clangd`
  * `clangtidy`!!
  * `cppcheck`
  * `cpplint`!!
  * `cquery`
  * `cspell`
  * `flawfinder`
  * `gcc` (`cc`)
  * `uncrustify`
* C#
  * `clang-format`
  * `csc`!!
  * `cspell`
  * `dotnet-format`
  * `mcs`
  * `mcsc`!!
  * `uncrustify`
* C++ (filetype cpp)
  * `astyle`
  * `ccls`
  * `clang` (`cc`)
  * `clang-format`
  * `clangcheck`!!
  * `clangd`
  * `clangtidy`!!
  * `clazy`!!
  * `cppcheck`
  * `cpplint`!!
  * `cquery`
  * `cspell`
  * `flawfinder`
  * `gcc` (`cc`)
  * `uncrustify`
* Cairo
  * `scarb`!!
  * `starknet`
* Chef
  * `cookstyle`
  * `foodcritic`!!
* Clojure
  * `clj-kondo`
  * `joker`
* CloudFormation
  * `cfn-python-lint`
* CMake
  * `cmake-format`
  * `cmake-lint`
  * `cmakelint`
* CoffeeScript
  * `coffee`
  * `coffeelint`
* Crystal
  * `ameba`!!
  * `crystal`!!
* CSS
  * `VSCode CSS language server`
  * `cspell`
  * `css-beautify`
  * `csslint`
  * `fecs`
  * `prettier`
  * `stylelint`
* Cucumber
  * `cucumber`
* CUDA
  * `clang-format`
  * `clangd`
  * `nvcc`!!
* Cypher
  * `cypher-lint`
* Cython (pyrex filetype)
  * `cython`
* D
  * `dfmt`
  * `dls`
  * `dmd`
  * `uncrustify`
* Dafny
  * `dafny`!!
* Dart
  * `analysis_server`
  * `dart-analyze`!!
  * `dart-format`!!
  * `dartfmt`!!
  * `language_server`
* desktop
  * `desktop-file-validate`
* Dhall
  * `dhall-format`
  * `dhall-freeze`
  * `dhall-lint`
* Dockerfile
  * `dockerfile_lint`
  * `dockerlinter`
  * `dprint`
  * `hadolint`
* Elixir
  * `credo`
  * `cspell`
  * `dialyxir`
  * `dogma`!!
  * `elixir-ls`
  * `lexical`
  * `mix`!!
* Elm
  * `elm-format`
  * `elm-ls`
  * `elm-make`
* Erb
  * `erb`
  * `erb-formatter`
  * `erblint`
  * `erubi`
  * `erubis`
  * `ruumba`
* Erlang
  * `SyntaxErl`
  * `dialyzer`!!
  * `elvis`!!
  * `erlang_ls`
  * `erlc`
  * `erlfmt`
* Fish
  * `fish` (-n flag)
  * `fish_indent`
* Fortran
  * `gcc`
  * `language_server`
* Fountain
  * `proselint`
* FusionScript
  * `fusion-lint`
* Git Commit Messages
  * `gitlint`
* GLSL
  * `glslang`
  * `glslls`
* Go
  * `bingo`
  * `cspell`
  * `go build`!!
  * `go mod`!!
  * `go vet`!!
  * `gofmt`
  * `gofumpt`
  * `goimports`
  * `golangci-lint`!!
  * `golangserver`
  * `golines`
  * `gopls`
  * `gosimple`!!
  * `gotype`!!
  * `revive`!!
  * `staticcheck`!!
* GraphQL
  * `eslint`
  * `gqlint`
  * `prettier`
* Groovy
  * `npm-groovy-lint`
* Hack
  * `hack`
  * `hackfmt`
  * `hhast`
* Haml
  * `haml-lint`
* Handlebars
  * `ember-template-lint`
* Haskell
  * `brittany`
  * `cabal-ghc`
  * `cspell`
  * `floskell`
  * `fourmolu`
  * `ghc`
  * `ghc-mod`
  * `hdevtools`
  * `hfmt`
  * `hie`
  * `hindent`
  * `hlint`
  * `hls`
  * `ormolu`
  * `stack-build`!!
  * `stack-ghc`
  * `stylish-haskell`
* HCL
  * `packer-fmt`
  * `terraform-fmt`
* HTML
  * `VSCode HTML language server`
  * `alex`
  * `angular`
  * `cspell`
  * `eslint`
  * `fecs`
  * `html-beautify`
  * `htmlhint`
  * `prettier`
  * `proselint`
  * `rustywind`
  * `tidy`
  * `write-good`
* Idris
  * `idris`
* Ink
  * `ink-language-server`
* Inko
  * `inko` !!
* ISPC
  * `ispc`!!
* Java
  * `PMD`
  * `checkstyle`!!
  * `clang-format`
  * `cspell`
  * `eclipselsp`
  * `google-java-format`
  * `javac`
  * `javalsp`
  * `uncrustify`
* JavaScript
  * `clang-format`
  * `cspell`
  * `deno`
  * `dprint`
  * `eslint`
  * `fecs`
  * `flow`
  * `jscs`
  * `jshint`
  * `prettier`
  * `prettier-eslint`
  * `prettier-standard`
  * `standard`
  * `tsserver`
  * `xo`
* JSON
  * `VSCode JSON language server`
  * `clang-format`
  * `cspell`
  * `dprint`
  * `eslint`
  * `fixjson`
  * `jq`
  * `jsonlint`
  * `prettier`
  * `spectral`
* JSON5
  * `eslint`
* JSONC
  * `eslint`
* Jsonnet
  * `jsonnet-lint`
  * `jsonnetfmt`
* Julia
  * `languageserver`
* Kotlin
  * `kotlinc`!!
  * `ktlint`
  * `languageserver`
* LaTeX (tex)
  * `alex`
  * `chktex`
  * `cspell`
  * `lacheck`
  * `proselint`
  * `redpen`
  * `texlab`
  * `textlint`
  * `vale`
  * `write-good`
* Less
  * `lessc`
  * `prettier`
  * `stylelint`
* LLVM
  * `llc`
* Lua
  * `cspell`
  * `lua-format`
  * `lua-language-server`
  * `luac`
  * `luacheck`
  * `luafmt`
  * `selene`
  * `stylua`
* Mail
  * `alex`
  * `languagetool`!!
  * `proselint`
  * `vale`
* Make
  * `checkmake`
* Markdown
  * `alex`
  * `cspell`
  * `languagetool`!!
  * `markdownlint`!!
  * `marksman`
  * `mdl`
  * `pandoc`
  * `prettier`
  * `proselint`
  * `redpen`
  * `remark-lint`
  * `textlint`
  * `vale`
  * `write-good`
* MATLAB
  * `mlint`
* Mercury
  * `mmc`!!
* NASM
  * `nasm`!!
* Nickel
  * `nickel_format`
* Nim
  * `nim check`!!
  * `nimlsp`
  * `nimpretty`
* nix
  * `alejandra`
  * `deadnix`
  * `nix-instantiate`
  * `nixfmt`
  * `nixpkgs-fmt`
  * `rnix-lsp`
  * `statix`
* nroff
  * `alex`
  * `proselint`
  * `write-good`
* Objective-C
  * `ccls`
  * `clang`
  * `clang-format`
  * `clangd`
  * `uncrustify`
* Objective-C++
  * `clang`
  * `clangd`
  * `uncrustify`
* OCaml
  * `dune`
  * `merlin` (see |ale-ocaml-merlin|)
  * `ocamlformat`
  * `ocamllsp`
  * `ocp-indent`
  * `ols`
* OpenApi
  * `ibm_validator`
  * `prettier`
  * `yamllint`
* OpenSCAD
  * `SCA2D`
* Packer
  * `packer-fmt-fixer`
* Pascal
  * `ptop`
* Pawn
  * `uncrustify`
* Perl
  * `perl -c`
  * `perl-critic`
  * `perltidy`
* Perl6
  * `perl6 -c`
* PHP
  * `cspell`
  * `intelephense`
  * `langserver`
  * `phan`
  * `php -l`
  * `php-cs-fixer`
  * `phpactor`
  * `phpcbf`
  * `phpcs`
  * `phpmd`
  * `phpstan`
  * `pint`
  * `psalm`!!
  * `tlint`
* PO
  * `alex`
  * `msgfmt`
  * `proselint`
  * `write-good`
* Pod
  * `alex`
  * `proselint`
  * `write-good`
* Pony
  * `ponyc`
* PowerShell
  * `cspell`
  * `powershell`
  * `psscriptanalyzer`
* Prolog
  * `swipl`
* proto
  * `buf-format`!!
  * `buf-lint`!!
  * `clang-format`
  * `protoc-gen-lint`!!
  * `protolint`!!
* Pug
  * `pug-lint`
* Puppet
  * `languageserver`
  * `puppet`
  * `puppet-lint`
* PureScript
  * `purescript-language-server`
  * `purs-tidy`
  * `purty`
* Python
  * `autoflake`!!
  * `autoimport`
  * `autopep8`
  * `bandit`
  * `black`
  * `cspell`
  * `flake8`
  * `flakehell`
  * `isort`
  * `mypy`
  * `prospector`!!
  * `pycln`
  * `pycodestyle`
  * `pydocstyle`
  * `pyflakes`
  * `pyflyby`
  * `pylama`!!
  * `pylint`!!
  * `pylsp`
  * `pyre`
  * `pyright`
  * `refurb`
  * `reorder-python-imports`
  * ruff
  * ruff-format
  * `unimport`
  * `vulture`!!
  * `yapf`
* QML
  * `qmlfmt`
  * `qmllint`
* R
  * `languageserver`
  * `lintr`
  * `styler`
* Racket
  * `racket-langserver`
  * `raco`
  * `raco_fmt`
* Re:VIEW
  * `redpen`
* ReasonML
  * `merlin`
  * `ols`
  * `reason-language-server`
  * `refmt`
* Rego
  * `cspell`
  * `opacheck`
  * `opafmt`
* reStructuredText
  * `alex`
  * `cspell`
  * `proselint`
  * `redpen`
  * `rstcheck`
  * `textlint`
  * `vale`
  * `write-good`
* Robot
  * `rflint`
* RPM spec
  * `rpmlint`
* Ruby
  * `brakeman`!!
  * `cspell`
  * `debride`
  * `packwerk`!!
  * `prettier`
  * `rails_best_practices`!!
  * `reek`
  * `rubocop`
  * `ruby`
  * `rufo`
  * `solargraph`
  * `sorbet`
  * `standardrb`
  * `syntax_tree`
* Rust
  * `cargo`!!
  * `cspell`
  * `rls`
  * `rust-analyzer`
  * `rustc` (see |ale-integration-rust|)
  * `rustfmt`
* Salt
  * `salt-lint`
* Sass
  * `sass-lint`
  * `stylelint`
* Scala
  * `cspell`
  * `fsc`
  * `metals`
  * `sbtserver`
  * `scalac`
  * `scalafmt`
  * `scalastyle`
* SCSS
  * `prettier`
  * `sass-lint`
  * `scss-lint`
  * `stylelint`
* Slim
  * `slim-lint`
* SML
  * `smlnj`
* Solidity
  * `forge`
  * `solc`
  * `solhint`
  * `solium`
* SQL
  * `dprint`
  * `pgformatter`
  * `sql-lint`
  * `sqlfluff`
  * `sqlfmt`
  * `sqlformat`
  * `sqlint`
* Stylus
  * `stylelint`
* SugarSS
  * `stylelint`
* Svelte
  * `prettier`
  * `svelteserver`
* Swift
  * Apple `swift-format`
  * `cspell`
  * `sourcekit-lsp`
  * `swiftformat`
  * `swiftlint`
* systemd
  * `systemd-analyze`!!
* Tcl
  * `nagelfar`!!
* Terraform
  * `checkov`
  * `terraform`
  * `terraform-fmt-fixer`
  * `terraform-ls`
  * `terraform-lsp`
  * `tflint`
  * `tfsec`
* Texinfo
  * `alex`
  * `cspell`
  * `proselint`
  * `write-good`
* Text^
  * `alex`
  * `cspell`
  * `languagetool`!!
  * `proselint`
  * `redpen`
  * `textlint`
  * `vale`
  * `write-good`
* Thrift
  * `thrift`
  * `thriftcheck`
* TOML
  * `dprint`
* TypeScript
  * `cspell`
  * `deno`
  * `dprint`
  * `eslint`
  * `fecs`
  * `prettier`
  * `standard`
  * `tslint`
  * `tsserver`
  * `typecheck`
* V
  * `v`!!
  * `vfmt`
* VALA
  * `uncrustify`
  * `vala_lint`!!
* Verilog
  * `hdl-checker`
  * `iverilog`
  * `verilator`
  * `vlog`
  * `xvlog`
  * `yosys`!!
* VHDL
  * `ghdl`
  * `vcom`
  * `xvhdl`
* Vim
  * `vimls`
  * `vint`
* Vim help^
  * `alex`
  * `proselint`
  * `write-good`
* Vue
  * `cspell`
  * `prettier`
  * `vls`
  * `volar`
* WGSL
  * `naga`
* XHTML
  * `alex`
  * `cspell`
  * `proselint`
  * `write-good`
* XML
  * `xmllint`
* YAML
  * `actionlint`
  * `circleci`!!
  * `gitlablint`
  * `prettier`
  * `spectral`
  * `swaglint`
  * `yaml-language-server`
  * `yamlfix`
  * `yamlfmt`
  * `yamllint`
* YANG
  * `yang-lsp`
* Zeek
  * `zeek`!!
* Zig
  * `zigfmt`
  * `zls`

===============================================================================
  vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: