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
clojureclojure-lsp
cmakecmake-language-server
comment
cpon
cppclangd
cssvscode-css-language-server
dartdart
devicetree
dockerfiledocker-langserver
edoc
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
javajdtls
javascripttypescript-language-server
jsdoc
jsonvscode-json-language-server
jsxtypescript-language-server
juliajulia
kotlinkotlin-language-server
latextexlab
leanlean
ledger
llvm
llvm-mir
llvm-mir-yaml
lualua-language-server
make
markdown
meson
mintmint
nickelnls
nixrnix-lsp
nu
ocamlocamllsp
ocaml-interfaceocamllsp
odin
openscadopenscad-language-server
org
perl
phpintelephense
prismaprisma-language-server
prologswipl
protobuf
pythonpylsp
rR
racketracket
regex
rescriptrescript-language-server
rmarkdownR
ron
rubysolargraph
rustrust-analyzer
scalametals
scheme
soliditysolc
sql
sshclientconfig
starlark
sveltesvelteserver
swiftsourcekit-lsp
tablegen
tfvarsterraform-ls
tomltaplo
tsq
tsxtypescript-language-server
twig
typescripttypescript-language-server
vvls
valavala-language-server
verilogsvlangserver
vuevls
wgslwgsl_analyzer
yamlyaml-language-server
zigzls