Language Support

The following languages and Language Servers are supported. In order to use Language Server features, you must first install the appropriate Language Server.

Check the language support in your installed helix version with hx --health.

Also see the Language Configuration docs and the Adding Languages guide for more language configuration information.

LanguageSyntax HighlightingTreesitter TextobjectsAuto IndentDefault LSP
bashbash-language-server
cclangd
c-sharpOmniSharp
cairo
cmakecmake-language-server
comment
cpon
cppclangd
cssvscode-css-language-server
dartdart
devicetree
dockerfiledocker-langserver
eex
ejs
elixirelixir-ls
elmelm-language-server
erb
erlangerlang_ls
fish
gdscript
git-attributes
git-commit
git-config
git-diff
git-ignore
git-rebase
gleam
glsl
gogopls
gomodgopls
goworkgopls
graphql
hare
haskellhaskell-language-server-wrapper
hclterraform-ls
heex
htmlvscode-html-language-server
iex
java
javascripttypescript-language-server
jsonvscode-json-language-server
jsxtypescript-language-server
juliajulia
kotlinkotlin-language-server
latextexlab
leanlean
ledger
llvm
llvm-mir
llvm-mir-yaml
lua
make
markdown
mintmint
nickelnls
nixrnix-lsp
nu
ocamlocamllsp
ocaml-interfaceocamllsp
org
perl
phpintelephense
prologswipl
protobuf
pythonpylsp
rR
racketracket
regex
rescriptrescript-language-server
rmarkdownR
ron
rubysolargraph
rustrust-analyzer
scalametals
soliditysolc
sql
sveltesvelteserver
swiftsourcekit-lsp
tablegen
tfvarsterraform-ls
tomltaplo
tsq
tsxtypescript-language-server
twig
typescripttypescript-language-server
valavala-language-server
vuevls
wgsl
yamlyaml-language-server
zigzls