summaryrefslogtreecommitdiff
path: root/users/seth/programs/neovim/default.nix
blob: 7bf209533b42c2bba24f88a822d700a5f3bd5dc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{pkgs, ...}: {
	programs.neovim = {
		enable = true;
		extraPackages = with pkgs; [
			alejandra
			clang
			codespell
			deadnix
			nodePackages.alex
			nodePackages.bash-language-server
			nodePackages.prettier
			nodePackages.pyright
			pylint
			rust-analyzer
			rustfmt
			statix
			stylua
			sumneko-lua-language-server
			yapf
		];
		plugins = with pkgs.vimPlugins; [
			lualine-nvim
			catppuccin-nvim
			barbar-nvim
			lightspeed-nvim
			nvim-tree-lua
			nvim-lspconfig
			null-ls-nvim
			plenary-nvim
			(nvim-treesitter.withPlugins (plugins: pkgs.tree-sitter.allGrammars))
			nvim-cmp
			cmp-nvim-lsp
			cmp-buffer
			cmp-path
			cmp-vsnip
			vim-vsnip
			luasnip
			cmp_luasnip
			trouble-nvim
			nvim-web-devicons
			telescope-nvim
			gitsigns-nvim
			editorconfig-nvim
		];
	};

	xdg.configFile.nvim = {
		source = ./config;
		recursive = true;
	};
}