add helix js/ts lsp

This commit is contained in:
Emile Clark-Boman 2026-01-31 10:57:59 +10:00
parent de526f42a0
commit f1224c8cf8

View file

@ -4,50 +4,48 @@
...
}: let
lsps = {
bash-language-server =
{
pkg = pkgs.bash-language-server;
cmd = "bash-language-server";
};
bash-language-server = {
pkg = pkgs.bash-language-server;
cmd = "bash-language-server";
};
clangd =
{
pkg = pkgs.clang-tools;
cmd = "clangd";
};
clangd = {
pkg = pkgs.clang-tools;
cmd = "clangd";
};
haskell-language-server =
{
pkg = pkgs.haskell-language-server;
cmd = "haskell-language-server-wrapper";
};
haskell-language-server = {
pkg = pkgs.haskell-language-server;
cmd = "haskell-language-server-wrapper";
};
# TODO: once upgraded past Nix-24.07 this line won't be necessary (I think)
# helix will support nixd by default
# SOURCE: https://github.com/nix-community/nixd/blob/main/nixd/docs/editor-setup.md#Helix
nixd =
{
pkg = pkgs.nixd;
cmd = "nixd";
};
nixd = {
pkg = pkgs.nixd;
cmd = "nixd";
};
OmniSharp =
{
pkg = pkgs.omnisharp-roslyn;
cmd = "OmniSharp";
};
OmniSharp = {
pkg = pkgs.omnisharp-roslyn;
cmd = "OmniSharp";
};
rust-analyzer =
{
pkg = pkgs.rust-analyzer;
cmd = "rust-analyzer";
};
rust-analyzer = {
pkg = pkgs.rust-analyzer;
cmd = "rust-analyzer";
};
ty =
{
pkg = pkgs-unstable.ty;
cmd = "ty";
};
ty = {
pkg = pkgs-unstable.ty;
cmd = "ty";
};
typescript-language-server = {
pkg = pkgs.typescript-language-server;
cmd = "typescript-language-server";
};
};
in {
home.packages =
@ -224,11 +222,25 @@ in {
# formatter.command = "${pkgs.omnisharp-roslyn}/bin/OmniSharp";
# language-servers = ["OmniSharp"];
}
{
name = "javascript";
file-types = ["js"];
indent = {
tab-width = 2;
unit = " ";
};
block-comment-tokens = {
start = "/*";
end = "*/";
};
auto-format = true;
language-servers = ["typescript-language-server"];
}
];
language-server =
lsps
|> builtins.mapAttrs (_: lsp: { command = "${lsp.pkg}/bin/${lsp.cmd}"; });
|> builtins.mapAttrs (_: lsp: {command = "${lsp.pkg}/bin/${lsp.cmd}";});
};
};
}