nixdots/home/programs/terminal/editors/neovim/default.nix

61 lines
1.1 KiB
Nix
Raw Normal View History

2024-04-04 18:44:12 +00:00
{pkgs, ...}: {
programs.neovim = {
enable = true;
viAlias = true;
vimAlias = true;
# Packages required for:
2024-09-10 13:32:35 +00:00
#
2024-04-04 18:44:12 +00:00
# - Mason to build various language servers / linters / formatters from source
# - Runtime dependencies of plugins / lang servers / ...
withNodeJs = true;
withPython3 = true;
extraPackages = with pkgs; [
2024-09-10 13:32:35 +00:00
# Tools for building Mason packages
2024-04-04 18:44:12 +00:00
go
python3
rustc
cargo
gcc
2024-09-10 13:32:35 +00:00
cmake
gnumake
# lang servers
lua-language-server
rust-analyzer
taplo
gopls
marksman
yaml-language-server
ruff
neocmakelsp
bash-language-server
nixd
emmet-language-server
vscode-langservers-extracted
2024-09-10 13:32:35 +00:00
# Linters / formatters
stylua
shfmt
gofumpt
gotools
sqlfluff
hadolint
markdownlint-cli2
nodePackages.prettier
nodePackages.eslint
2024-09-10 13:32:35 +00:00
shellcheck
shfmt
alejandra
2024-07-08 21:49:24 +00:00
deadnix
statix
2024-09-10 13:32:35 +00:00
# Other tools / utilities
ripgrep
fd
jq
lazygit
2024-04-04 18:44:12 +00:00
];
};
}