Files
nix/home/modules/nvim/config/languages.nix
T
2026-11-04 23:34:47 +01:00

134 lines
2.1 KiB
Nix

{
pkgs,
categories ? { },
}:
with pkgs;
{
c = {
enable = false;
packages = [
clang
clang-tools
];
};
css = {
enable = false;
packages = [
stylelint
vscode-langservers-extracted
];
};
docker = {
enable = false;
packages = [
dockerfile-language-server
hadolint
];
};
gdscript = {
enable = false;
packages = [ gdtoolkit_4 ];
};
go = {
enable = false;
packages = [
go
gopls
];
};
haskell = {
enable = false;
packages = [
haskell-language-server
hlint
ormolu
];
};
helm = {
enable = false;
packages = [ helm-ls ];
plugins = [ vimPlugins.helm-ls-nvim ];
};
html = {
enable = false;
packages = [
emmet-language-server
vscode-langservers-extracted
];
};
json = {
enable = false;
packages = [ vscode-langservers-extracted ];
};
lua = {
enable = true;
packages = [
lua-language-server
stylua
];
};
nix = {
enable = true;
packages = [
nixd
nixfmt
];
};
openscad = {
enable = false;
packages = [ openscad-lsp ];
plugins = [ vimPlugins.vim-openscad ];
};
python = {
enable = false;
packages = [
black
isort
pyright
];
};
rust = {
enable = false;
packages = [
rust-analyzer
rustfmt
];
plugins = [ vimPlugins.rustaceanvim ];
};
shell = {
enable = true;
packages = [
bash-language-server
shellcheck-minimal
];
};
svelte = {
enable = false;
packages = [
eslint_d
svelte-language-server
];
};
tailwind = {
enable = false;
packages = [ tailwindcss-language-server ];
plugins = [ neovimPlugins.tailwind-fold-nvim ];
};
typescript = {
enable = false;
packages = [
eslint_d
(if (categories.typescriptServer or "ts_ls") == "vtsls" then vtsls else typescript-language-server)
vscode-langservers-extracted
];
};
yaml = {
enable = false;
packages = [
yaml-language-server
yamllint
];
};
}