2023-01-31 09:38:11 +01:00
|
|
|
{
|
2023-02-10 07:46:37 +01:00
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
flakePath,
|
|
|
|
...
|
|
|
|
}: {
|
2023-01-31 09:38:11 +01:00
|
|
|
programs.neovim = {
|
|
|
|
enable = true;
|
2023-02-09 22:33:37 +01:00
|
|
|
defaultEditor = true;
|
2023-01-31 09:38:11 +01:00
|
|
|
|
|
|
|
viAlias = true;
|
|
|
|
vimAlias = true;
|
|
|
|
vimdiffAlias = true;
|
|
|
|
|
|
|
|
withNodeJs = true;
|
|
|
|
|
2023-03-06 11:27:11 +01:00
|
|
|
extraPackages = with pkgs.unstable; [
|
2023-01-31 09:38:11 +01:00
|
|
|
# external deps
|
|
|
|
fd
|
|
|
|
ripgrep
|
|
|
|
|
|
|
|
# python
|
|
|
|
black
|
|
|
|
isort
|
|
|
|
nodePackages.pyright
|
|
|
|
|
|
|
|
# lua
|
|
|
|
stylua
|
2023-03-06 11:27:11 +01:00
|
|
|
lua-language-server
|
2023-03-11 22:52:33 +01:00
|
|
|
luaPackages.tl
|
|
|
|
luaPackages.teal-language-server
|
2023-01-31 09:38:11 +01:00
|
|
|
|
|
|
|
# data
|
|
|
|
taplo
|
|
|
|
|
|
|
|
# go
|
2023-03-12 00:09:24 +01:00
|
|
|
go
|
2023-01-31 09:38:11 +01:00
|
|
|
delve
|
|
|
|
ginkgo
|
|
|
|
gofumpt
|
|
|
|
gopls
|
|
|
|
impl
|
|
|
|
mockgen
|
|
|
|
|
|
|
|
# webdev
|
|
|
|
nodePackages."@astrojs/language-server"
|
|
|
|
nodePackages."@tailwindcss/language-server"
|
|
|
|
nodePackages.bash-language-server
|
|
|
|
nodePackages.dockerfile-language-server-nodejs
|
|
|
|
nodePackages.alex
|
|
|
|
nodePackages.typescript
|
|
|
|
nodePackages.typescript-language-server
|
2023-03-06 11:27:11 +01:00
|
|
|
nodePackages.vscode-langservers-extracted
|
2023-01-31 09:38:11 +01:00
|
|
|
nodePackages.yaml-language-server
|
2023-03-06 11:27:11 +01:00
|
|
|
nodePackages.intelephense
|
2023-03-12 00:09:24 +01:00
|
|
|
yarn
|
2023-01-31 09:38:11 +01:00
|
|
|
|
2023-02-28 04:57:34 +01:00
|
|
|
# rust
|
2023-03-12 00:09:24 +01:00
|
|
|
cargo
|
2023-03-06 11:27:11 +01:00
|
|
|
rust-analyzer
|
|
|
|
rustc
|
|
|
|
rustfmt
|
2023-02-28 04:57:34 +01:00
|
|
|
|
2023-01-31 09:38:11 +01:00
|
|
|
# etc
|
2023-03-06 11:27:11 +01:00
|
|
|
deno
|
2023-01-31 09:38:11 +01:00
|
|
|
ltex-ls
|
|
|
|
nodePackages.prettier
|
|
|
|
rnix-lsp
|
|
|
|
proselint
|
2023-02-22 03:24:38 +01:00
|
|
|
shellcheck
|
2023-01-31 09:38:11 +01:00
|
|
|
shfmt
|
|
|
|
tree-sitter
|
2023-02-11 02:36:46 +01:00
|
|
|
alejandra
|
2023-02-10 07:45:25 +01:00
|
|
|
deadnix
|
2023-03-06 11:27:11 +01:00
|
|
|
pkgs.nur.repos.nekowinston.jq-lsp
|
|
|
|
pkgs.nur.repos.nekowinston.helm-ls
|
|
|
|
pkgs.nur.repos.bandithedoge.nodePackages.emmet-ls
|
2023-01-31 09:38:11 +01:00
|
|
|
|
|
|
|
# needed for some plugin build steps
|
|
|
|
gcc
|
|
|
|
gnumake
|
2023-03-12 00:09:24 +01:00
|
|
|
unzip
|
2023-01-31 09:38:11 +01:00
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
xdg.configFile."nvim" = {
|
2023-02-19 00:18:25 +01:00
|
|
|
source = config.lib.file.mkOutOfStoreSymlink "${flakePath}/home/apps/neovim";
|
2023-01-31 09:38:11 +01:00
|
|
|
recursive = true;
|
|
|
|
};
|
|
|
|
}
|