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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
{ config, lib, pkgs, ... }:
{
config = {
environment.variables.EDITOR = "nvim";
home-manager.users.${config.user} = {
programs.neovim = {
enable = true;
viAlias = true;
vimAlias = true;
extraLuaConfig = let
cfg = lib.fileContents ../../../files/config/nvim/init.lua;
colorscheme = ''
local colorscheme = require('base16-colorscheme')
colorscheme.setup({
base00 = '#${config.theme.colors.base00}',
base01 = '#${config.theme.colors.base01}',
base02 = '#${config.theme.colors.base02}',
base03 = '#${config.theme.colors.base03}',
base04 = '#${config.theme.colors.base04}',
base05 = '#${config.theme.colors.base05}',
base06 = '#${config.theme.colors.base06}',
base07 = '#${config.theme.colors.base07}',
base08 = '#${config.theme.colors.base08}',
base09 = '#${config.theme.colors.base09}',
base0A = '#${config.theme.colors.base0A}',
base0B = '#${config.theme.colors.base0B}',
base0C = '#${config.theme.colors.base0C}',
base0D = '#${config.theme.colors.base0D}',
base0E = '#${config.theme.colors.base0E}',
base0F = '#${config.theme.colors.base0F}',
})'';
in
colorscheme + cfg;
plugins = with pkgs.vimPlugins; [
# Deoendencies
vim-devicons
nvim-web-devicons
# Lua functions
plenary-nvim
# Lines
lualine-nvim # mode line
bufferline-nvim # buffer line
# Menus
nvim-tree-lua # file browser
undotree # undo menu
trouble-nvim # error menu
telescope-nvim # grep/find menus
# Snippets
vim-vsnip
vim-vsnip-integ
friendly-snippets
# Completion
nvim-cmp
cmp-buffer
cmp-nvim-lsp
cmp-vsnip
nvim-surround # delimiter
# Lsp
base16-nvim # colorscheme
nerdcommenter # comment functions
nvim-treesitter.withAllGrammars # hilighting
vim-illuminate # hilighting
todo-comments-nvim # todo comments
nvim-lspconfig # lsp server
fidget-nvim # notifications
indent-o-matic # auto indentation
hologram-nvim # images
virt-column-nvim # 80 col line
];
};
};
};
}
|