nixos-configuration/modules/editors/nixvim/plugins/lsp.nix
2025-03-21 02:00:29 +01:00

79 lines
1.8 KiB
Nix
Executable file

{...}: {
programs.nixvim.plugins.zig.enable = true;
programs.nixvim.plugins.lsp = {
enable = true;
servers = {
lua_ls.enable = true;
nil_ls = {
enable = true;
settings = {
formatting.command = ["nixpkgs-fmt"];
};
};
clangd = {
enable = true;
# package = null; # Install your own clang fucker # actually dont, its aids
cmd = ["clangd" "--background-index" "--suggest-missing-includes"];
};
# As much as i hate python, it is useful for CTF and quick scripts
pylsp = {
enable = true;
};
zls = {
enable = true;
};
ts_ls = {
enable = true;
};
cssls.enable = true;
html.enable = true;
rust_analyzer = {
enable = true;
package = null; # Install your own rust
cargoPackage = null; # Install your own rust
installCargo = false; # Install your own rust
rustcPackage = null; # Install your own rust
installRustc = false; # Install your own rust
};
# TODO: Create a flake.nix for texlabs so its not installed globally.
texlab = {
enable = true;
};
fsautocomplete = {
enable = false;
cmd = ["fsautocomplete" "--adaptive-lsp-server-enabled" "--verbose"];
filetypes = ["fsharp" "fs"];
package = null; # Fuck you too
# settings = {
# AutomaticWorkspaceInit = true;
#
# callback = {
# __raw = ''
# function()
# print("fsharp lsp")
# end
# '';
# };
# };
};
omnisharp.enable = true;
csharp_ls = {
enable = false;
# package = null; # Fuck c#, install it yourself if you need it
};
};
};
}