install more nvim plugins

This commit is contained in:
wi11-holdsworth 2025-08-20 22:56:24 +10:00
parent 6181e8bd55
commit fd9e122fca

View file

@ -12,44 +12,83 @@ in
environment.variables.EDITOR = "nvim"; environment.variables.EDITOR = "nvim";
programs.nixvim = { programs.nixvim = {
enable = true; enable = true;
opts = { clipboard = {
shiftwidth = 2; providers.wl-copy.enable = true;
number = true; register = "unnamedplus";
relativenumber = true;
autoindent = true;
tabstop = 2;
expandtab = true;
}; };
colorschemes.catppuccin = { colorschemes.catppuccin = {
enable = true; enable = true;
settings.background.dark = "mocha"; settings.background.dark = "mocha";
}; };
dependencies = {
tree-sitter.enable = true;
nodejs.enable = true;
gcc.enable = true;
};
diagnostic.settings.virtual_lines = true;
opts = {
autoindent = true;
expandtab = true;
number = true;
relativenumber = true;
shiftwidth = 2;
tabstop = 2;
};
plugins = { plugins = {
# autoclose brackets
autoclose.enable = true;
# completion window
cmp = { cmp = {
enable = true; enable = true;
autoEnableSources = true; autoEnableSources = true;
settings = {
mapping = {
"<C-Space>" = "cmp.mapping.complete()";
"<C-d>" = "cmp.mapping.scroll_docs(-4)";
"<C-e>" = "cmp.mapping.close()";
"<C-f>" = "cmp.mapping.scroll_docs(4)";
"<CR>" = "cmp.mapping.confirm({ select = true })";
"<S-Tab>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
}; };
cmp-nvim-lsp.enable = true; sources = [
cmp_luasnip.enable = true; { name = "nvim_lsp"; }
cmp-treesitter.enable = true; { name = "path"; }
cmp-async-path.enable = true; { name = "buffer"; }
cmp-npm.enable = true; ];
cmp-emoji.enable = true; };
cmp-dictionary.enable = true; };
cmp-calc.enable = true;
# git changes in margin
gitsigns.enable = true;
# opens last edit position
lastplace.enable = true;
# lsp servers
lsp = { lsp = {
enable = true; enable = true;
inlayHints = true;
servers = { servers = {
nixd.enable = true; nixd.enable = true;
rust_analyzer.enable = true; rust_analyzer = {
enable = true;
installCargo = true;
installRustc = true;
};
}; };
}; };
lsp-format.enable = true; lsp-format.enable = true;
autoclose.enable = true; lsp-lines.enable = true;
lsp-signature.enable = true;
lspkind.enable = true;
# status bar
lualine.enable = true; lualine.enable = true;
luasnip.enable = true;
# syntax highlighting
treesitter.enable = true; treesitter.enable = true;
lastplace.enable = true;
}; };
}; };
}; };