ALE Supported Languages and Tools
April 15, 2026 ยท View on GitHub
This plugin supports the following languages and tools. All available tools will be run in combination, so they can be complementary.
Legend
| Key | Definition |
|---|---|
| :speech_balloon: | Language Server Protocol (LSP) |
| :floppy_disk: | May only run on files on disk (see: help ale-lint-file-linters |
| :warning: | Disabled by default |
- Ada
- ada_language_server :speech_balloon:
- cspell
- gcc
- gnatpp :floppy_disk:
- Ansible
- ansible-language-server
- ansible-lint :floppy_disk:
- API Blueprint
- APKBUILD
- apkbuild-fixer :speech_balloon:
- apkbuild-lint :speech_balloon:
- secfixes-check :speech_balloon:
- AsciiDoc
- alex
- cspell
- languagetool :floppy_disk: :speech_balloon:
- proselint
- redpen
- textlint
- vale
- write-good
- ASM
- Astro
- AVRA
- Awk
- Bash
- Bats
- Bazel
- buildifier :speech_balloon:
- BibTeX
- Bicep
- bicep :floppy_disk: :speech_balloon:
- Bindzone
- BitBake
- Bourne Shell
- shell -n flag
- shellcheck
- shfmt
- C
- astyle
- ccls :speech_balloon:
- clang
- clang-format
- clangcheck :floppy_disk:
- clangd :speech_balloon:
- clangtidy :floppy_disk:
- cppcheck
- cpplint
- cquery :speech_balloon:
- cspell
- flawfinder
- gcc
- uncrustify
- C#
- clang-format
- csc :floppy_disk: see:
help ale-cs-cscfor details and configuration - cspell
- dotnet-format
- mcs see:
help ale-cs-mcsfor details - mcsc :floppy_disk: see:
help ale-cs-mcscfor details and configuration - uncrustify
- C++ (filetype cpp)
- astyle
- ccls :speech_balloon:
- clang
- clang-format
- clangcheck :floppy_disk:
- clangd :speech_balloon:
- clangtidy :floppy_disk:
- clazy :floppy_disk:
- cppcheck
- cpplint :floppy_disk:
- cquery :speech_balloon:
- cspell
- flawfinder
- gcc
- uncrustify
- C3
- c3lsp :speech_balloon:
- Cairo
- Chef
- cookstyle
- foodcritic :floppy_disk:
- Clojure
- CloudFormation
- CMake
- CoffeeScript
- Crystal
- CSS
- Cucumber
- CUDA
- clang-format
- clangd :speech_balloon:
- nvcc :floppy_disk:
- Cypher
- Cython (pyrex filetype)
- D
- Dafny
- dafny :floppy_disk:
- Dart
- analysis_server
- dart-analyze :floppy_disk:
- dart-format
- dartfmt
- language_server
- desktop
- Dhall
- Dockerfile
- Elixir
- Elm
- Erb
- Erlang
- Fish
- fish -n flag
- fish_indent
- Fortran
- fortitude
- gcc
- language_server :speech_balloon:
- Fountain
- FusionScript
- Git Commit Messages
- Gleam
- gleam_format :speech_balloon:
- gleamlsp :speech_balloon:
- GLSL
- Go
- bingo :warning:
- cspell :warning:
- go build :warning: :floppy_disk:
- go mod :warning: :floppy_disk:
- go vet :floppy_disk:
- gofmt
- gofumpt
- goimports :warning: :speech_balloon:
- golangci-lint :warning: :floppy_disk:
- golangserver :warning:
- golines
- gopls :speech_balloon:
- gosimple :warning: :floppy_disk: :speech_balloon:
- gotype :warning: :floppy_disk: :speech_balloon:
- revive :warning: :floppy_disk:
- staticcheck :warning: :floppy_disk: :speech_balloon:
- Go HTML Templates
- GraphQL
- Groovy
- Hack
- Haml
- Handlebars
- Haskell
- HCL
- HTML
- HTML Angular
- HTML Django
- HTTP
- Hurl
- Idris
- Ink
- Inko
- inko :floppy_disk:
- ISPC
- ispc :floppy_disk:
- Java
- PMD
- checkstyle :floppy_disk:
- clang-format
- cspell
- eclipselsp :speech_balloon:
- google-java-format
- javac
- javalsp :speech_balloon:
- uncrustify
- JavaScript
- Jinja
- JSON
- JSON5
- eslint :warning:
- JSONC
- Jsonnet
- jsonnet-lint :speech_balloon:
- jsonnetfmt :speech_balloon:
- Julia
- Kotlin
- kotlinc :floppy_disk:
- ktlint
- languageserver see
:help ale-integration-kotlinfor configuration instructions
- LaTeX
- Lean 4
- Less
- LilyPond
- LLVM
- Lua
- cspell
- lua-format
- lua-language-server :speech_balloon:
- luac
- luacheck
- luafmt
- selene
- stylua
- Mail
- alex
- languagetool :floppy_disk: :speech_balloon:
- proselint
- vale
- Make
- Markdown
- alex
- cspell
- harper :speech_balloon:
- languagetool :floppy_disk: :speech_balloon:
- markdownlint :floppy_disk:
- marksman :speech_balloon:
- mdl
- pandoc
- prettier
- proselint
- pymarkdown :floppy_disk:
- redpen
- remark-lint
- rumdl :speech_balloon:
- textlint
- vale
- write-good
- MATLAB
- mlint :speech_balloon:
- Mercury
- mmc :floppy_disk:
- NASM
- nasm :floppy_disk:
- Nickel
- Nim
- nix
- alejandra
- deadnix
- nix-instantiate
- nixfmt
- nixpkgs-fmt
- rnix-lsp :speech_balloon:
- statix
- nroff
- Nunjucks
- Objective-C
- ccls :speech_balloon:
- clang
- clang-format
- clangd :speech_balloon:
- uncrustify
- Objective-C++
- clang
- clangd :speech_balloon:
- uncrustify
- OCaml
- dune
- merlin see
:help ale-ocaml-merlinfor configuration instructions - ocamlformat
- ocamllsp :speech_balloon:
- ocp-indent
- ols :speech_balloon:
- Odin
- ols :speech_balloon:
- OpenApi
- OpenSCAD
- SCA2D :floppy_disk:
- scadformat
- Packer (HCL)
- Pascal
- ptop :speech_balloon:
- Pawn
- Perl
- languageserver :speech_balloon:
- perl -c :warning:
- perl-critic
- perlnavigator :speech_balloon:
- perltidy
- Perl6
- perl6 -c :warning:
- PHP
- cspell
- intelephense :speech_balloon:
- langserver :speech_balloon:
- phan see
:help ale-php-phanto instructions :speech_balloon: - php -l
- php-cs-fixer
- phpactor :speech_balloon:
- phpcbf
- phpcs
- phpmd
- phpstan
- pint :beer:
- psalm :floppy_disk:
- tlint
- PO
- Pod
- Pony
- PowerShell
- Prolog
- proto
- buf-format :floppy_disk:
- buf-lint :floppy_disk:
- clang-format
- protoc-gen-lint :floppy_disk:
- protolint :floppy_disk:
- Pug
- Puppet
- PureScript
- purescript-language-server :speech_balloon:
- purs-tidy
- purty
- Python
- autoflake :floppy_disk:
- autoimport
- autopep8
- bandit :warning:
- black
- cspell
- flake8
- flakehell
- isort
- mypy
- prospector :warning: :floppy_disk:
- pycln
- pycodestyle :warning:
- pydocstyle :warning:
- pyflakes
- pyflyby :warning:
- pylama :floppy_disk:
- pylint :floppy_disk:
- pylsp :warning: :speech_balloon:
- pyre :warning:
- pyrefly :warning: :speech_balloon:
- pyright :speech_balloon:
- refurb :floppy_disk:
- reorder-python-imports
- ruff
- ruff-format
- unimport
- vulture :warning: :floppy_disk:
- yapf
- QML
- R
- Racket
- racket-langserver :speech_balloon:
- raco
- raco_fmt
- Re:VIEW
- ReasonML
- merlin see
:help ale-reasonml-olsfor configuration instructions - ols :speech_balloon:
- reason-language-server :speech_balloon:
- refmt
- merlin see
- Rego
- ReScript
- rescript-language-server :speech_balloon:
- rescript_format
- REST
- reStructuredText
- Robot
- Roc
- RPM spec
- rpmlint :warning: (see
:help ale-integration-spec) :speech_balloon:
- rpmlint :warning: (see
- Ruby
- brakeman :floppy_disk:
- cspell
- debride
- packwerk :floppy_disk:
- prettier
- rails_best_practices :floppy_disk:
- reek
- rubocop
- ruby
- rubyfmt
- rufo
- solargraph :speech_balloon:
- sorbet :speech_balloon:
- standardrb
- steep
- syntax_tree
- Rust
- Salt
- Sass
- Scala
- SCSS
- Slim
- SML
- Solidity
- SQL
- Stylus
- SugarSS
- Svelte
- prettier
- svelteserver :speech_balloon:
- Swift
- Apple swift-format
- cspell
- sourcekit-lsp :speech_balloon:
- swiftformat
- swiftlint
- systemd
- systemd-analyze :floppy_disk:
- Tcl
- nagelfar :floppy_disk:
- Terraform
- checkov
- terraform
- terraform-fmt-fixer
- terraform-ls :speech_balloon:
- terraform-lsp :speech_balloon:
- tflint
- tfsec
- Texinfo
- Text
- alex :warning:
- cspell
- languagetool :floppy_disk: :speech_balloon:
- proselint :warning:
- redpen :warning:
- textlint :warning:
- vale :warning:
- write-good :warning:
- Thrift
- TOML
- TypeScript
- Typst
- V
- VALA
- uncrustify
- vala_lint :floppy_disk:
- Verilog
- VHDL
- Vim
- Vim help
- alex :warning:
- proselint :warning:
- write-good :warning:
- Vue
- WGSL
- XHTML
- XML
- YAML
- actionlint
- circleci :floppy_disk: :warning:
- gitlablint
- prettier
- spectral
- swaglint :warning: :speech_balloon:
- yaml-language-server :speech_balloon:
- yamlfix
- yamlfmt
- yamllint
- yq
- YANG
- yang-lsp :speech_balloon:
- Yara
- Zeek
- zeek :floppy_disk:
- Zig