61 lines
1.3 KiB
Nix
61 lines
1.3 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}: let
|
|
inherit (config.modules.other.system) username;
|
|
in {
|
|
home-manager.users.${username}.programs.neovim-flake.settings.vim = {
|
|
languages = {
|
|
enableLSP = true;
|
|
enableFormat = true;
|
|
enableTreesitter = true;
|
|
enableExtraDiagnostics = true;
|
|
|
|
markdown.enable = true;
|
|
nix.enable = true;
|
|
html.enable = true;
|
|
css.enable = true;
|
|
tailwind.enable = true;
|
|
ts.enable = true;
|
|
go.enable = true;
|
|
python.enable = true;
|
|
bash.enable = true;
|
|
typst.enable = true;
|
|
zig.enable = true;
|
|
dart.enable = false;
|
|
elixir.enable = false;
|
|
svelte.enable = false;
|
|
sql.enable = false;
|
|
java = let
|
|
jdtlsCache = "${config.xdg.cacheHome}/jdtls";
|
|
in {
|
|
enable = true;
|
|
lsp.package = [
|
|
"${lib.getExe pkgs.jdt-language-server}"
|
|
"-configuration ${jdtlsCache}/config"
|
|
"-data ${jdtlsCache}/workspace"
|
|
];
|
|
};
|
|
|
|
lua = {
|
|
enable = true;
|
|
lsp.neodev.enable = true;
|
|
};
|
|
|
|
rust = {
|
|
enable = true;
|
|
crates.enable = true;
|
|
};
|
|
|
|
clang = {
|
|
enable = true;
|
|
lsp = {
|
|
enable = true;
|
|
server = "clangd";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|