nix/programs/neovim.nix (view raw)
1{ config
2, pkgs
3, self
4, lib
5, ...
6}:
7
8{
9 programs.neovim = {
10 enable = true;
11 withNodeJs = false;
12 vimAlias = true;
13 withPython3 = true;
14 extraPackages = with pkgs; [
15 nixpkgs-fmt
16 gotools
17 gopls
18 go
19 sumneko-lua-language-server
20
21 tree-sitter-grammars.tree-sitter-bash
22 tree-sitter-grammars.tree-sitter-yaml
23 tree-sitter-grammars.tree-sitter-go
24 tree-sitter-grammars.tree-sitter-make
25 tree-sitter-grammars.tree-sitter-markdown
26 tree-sitter-grammars.tree-sitter-lua
27 tree-sitter-grammars.tree-sitter-html
28 tree-sitter-grammars.tree-sitter-vim
29 tree-sitter-grammars.tree-sitter-nix
30
31 zf
32 delve
33 ];
34 extraConfig = ''
35 runtime _init.lua
36 '';
37 plugins = with pkgs.vimPlugins; [
38 packer-nvim
39
40 nvim-cmp
41 cmp-buffer
42 cmp_luasnip
43 cmp-nvim-lsp
44 cmp-treesitter
45 cmp-path
46
47 nvim-lspconfig
48 luasnip
49 playground
50 vim-surround
51 targets-vim
52 vim-gitgutter
53 vim-rsi
54 nvim-treesitter-textobjects
55 conflict-marker-vim
56 vim-jsonnet
57 vim-pencil
58
59 nvim-dap
60 nvim-dap-ui
61 nvim-dap-go
62 vim-textobj-user
63 ];
64 };
65}