aboutsummaryrefslogtreecommitdiffstats
path: root/nvim/default.nix
blob: 73dc35967c98fc62f743c03270f3aec8df99a813 (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
{ pkgs, config, ... }:

{
	programs.neovim.enable = true;
	programs.neovim.viAlias = true;
	programs.neovim.vimAlias = true;
	programs.neovim.vimdiffAlias = true;
	programs.neovim.defaultEditor = true;

	programs.neovim.extraPackages = with pkgs; [
		gcc # Required for treesitter
	];

	programs.neovim.extraLuaConfig =
''
${builtins.readFile ./options.lua}
${builtins.readFile ./keybindings.lua}

-- Plugins configuration
${builtins.readFile ./plugins/comment.lua}
${builtins.readFile ./plugins/lualine.lua}
${import ./plugins/treesitter.nix config}
${builtins.readFile ./plugins/base16.lua}
${builtins.readFile ./plugins/nvim-tree.lua}
'';

	programs.neovim.plugins = with pkgs.vimPlugins; [
		comment-nvim
		lualine-nvim
		nvim-treesitter
		nvim-web-devicons
		nvim-tree-lua
		(base16-vim.overrideAttrs (old: {
			patchPhase = "ln -s ${config.scheme base16-vim} colors/base16-scheme.vim";
		}))
	];
}