2023-08-12 14:35:08 +02:00
|
|
|
{ pkgs, lib, ... }: {
|
2023-09-09 20:24:19 +02:00
|
|
|
programs.neovim = {
|
|
|
|
enable = true;
|
|
|
|
viAlias = true;
|
|
|
|
extraPackages = with pkgs; [
|
2023-09-10 11:30:47 +02:00
|
|
|
# nix
|
|
|
|
rnix-lsp
|
2023-09-09 20:24:19 +02:00
|
|
|
alejandra
|
2023-09-10 11:30:47 +02:00
|
|
|
# go
|
2023-09-09 20:24:19 +02:00
|
|
|
go
|
|
|
|
gopls
|
2023-09-10 11:30:47 +02:00
|
|
|
# c/c++
|
2023-09-09 20:24:19 +02:00
|
|
|
libclang
|
2023-09-10 11:30:47 +02:00
|
|
|
# lua
|
2023-09-09 20:24:19 +02:00
|
|
|
lua
|
|
|
|
lua-language-server
|
2023-09-10 11:30:47 +02:00
|
|
|
stylua
|
|
|
|
# js/ts
|
2023-09-09 20:24:19 +02:00
|
|
|
nodePackages_latest.prettier
|
|
|
|
nodePackages_latest.typescript
|
|
|
|
nodePackages_latest.typescript-language-server
|
|
|
|
nodePackages_latest."@tailwindcss/language-server"
|
|
|
|
nodePackages_latest."@prisma/language-server"
|
2023-09-10 11:30:47 +02:00
|
|
|
# bash
|
|
|
|
nodePackages_latest.bash-language-server
|
|
|
|
shfmt
|
2023-09-10 12:09:00 +02:00
|
|
|
shellcheck
|
2023-09-10 11:30:47 +02:00
|
|
|
# python
|
2023-09-09 20:24:19 +02:00
|
|
|
python311Packages.python-lsp-black
|
|
|
|
python311Packages.python-lsp-server
|
2023-09-10 11:30:47 +02:00
|
|
|
black
|
|
|
|
# haskell
|
2023-09-09 20:24:19 +02:00
|
|
|
ghc
|
2023-09-10 11:30:47 +02:00
|
|
|
haskell-language-server
|
|
|
|
# neovim
|
|
|
|
ripgrep
|
2023-09-20 02:43:29 +02:00
|
|
|
# html
|
|
|
|
nodePackages_latest.vscode-html-languageserver-bin
|
2023-09-09 20:24:19 +02:00
|
|
|
];
|
|
|
|
plugins = with pkgs.vimPlugins; [
|
|
|
|
nvim-surround
|
|
|
|
nvim-ts-autotag
|
|
|
|
vim-prisma
|
|
|
|
autoclose-nvim
|
|
|
|
barbar-nvim
|
|
|
|
cmp-nvim-lsp
|
|
|
|
comment-nvim
|
|
|
|
gitsigns-nvim
|
|
|
|
luasnip
|
|
|
|
nightfox-nvim
|
|
|
|
nvim-cmp
|
|
|
|
nvim-lspconfig
|
|
|
|
nvim-treesitter.withAllGrammars
|
|
|
|
nvim-web-devicons
|
|
|
|
plenary-nvim
|
|
|
|
telescope-nvim
|
|
|
|
telescope-nvim
|
|
|
|
toggleterm-nvim
|
|
|
|
vim-vinegar
|
|
|
|
];
|
|
|
|
extraLuaConfig = lib.fileContents ./nvim/init.lua;
|
|
|
|
};
|
2023-08-09 22:10:48 +02:00
|
|
|
}
|