diff --git a/home/packages/helix/default.nix b/home/packages/helix/default.nix index cff82e7..6fe6d74 100644 --- a/home/packages/helix/default.nix +++ b/home/packages/helix/default.nix @@ -18,28 +18,32 @@ in keys.insert.j.k = "normal_mode"; }; languages = { - language-server.tinymist = { - config.exportPdf = "onSave"; - config.outputPath = "$root/$dir/out/$name"; - }; - language-server.scls = { - command = "simple-completion-language-server"; - config.feature_words = false; - config.feature_snippets = true; - config.snippets_first = true; - config.snippets_inline_by_word_tail = false; - config.feature_unicode_input = true; - config.feature_paths = false; - config.feature_citations = false; - environment.RUST_LOG = "info,simple-completion-language-server=info"; - environment.LOG_FILE = "/tmp/completion.log"; - }; - language-server.ocamllsp = { - command = "ocamllsp"; - args = [ "--fallback-read-dot-merlin" ]; - }; - language-server.menhir-lsp = { - command = "menhir-lsp"; + language-server = { + tinymist = { + config.exportPdf = "onSave"; + config.outputPath = "$root/$dir/out/$name"; + }; + scls = { + command = "simple-completion-language-server"; + config.feature_words = false; + config.feature_snippets = true; + config.snippets_first = true; + config.snippets_inline_by_word_tail = false; + config.feature_unicode_input = true; + config.feature_paths = false; + config.feature_citations = false; + environment.RUST_LOG = "info,simple-completion-language-server=info"; + environment.LOG_FILE = "/tmp/completion.log"; + }; + ocamllsp = { + command = "ocamllsp"; + args = [ "--fallback-read-dot-merlin" ]; + }; + menhir-lsp.command = "menhir-lsp"; + dafny-lsp = { + command = "dafny"; + args = [ "server" ]; + }; }; language = [ { @@ -58,6 +62,28 @@ in ]; scope = "source.menhir"; } + { + name = "ocaml"; + language-servers = [ + "scls" + "ocamllsp" + ]; + } + { + name = "dafny"; + file-types = [ "dfy" ]; + language-servers = [ "dafny-lsp" ]; + scope = "source.dafny"; + } + { + name = "zelus"; + file-types = [ + "zli" + "zls" + ]; + language-servers = [ "scls" ]; + scope = "source.ocaml"; + } ]; grammar = [ {