aboutsummaryrefslogtreecommitdiffstats
path: root/modules/tools/nixvim/plugins/cmp.nix
blob: b02c17e0d1f30c6634ba8b834d56801146d09a3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{ config, lib, ... }:

{
	config.programs.nixvim.plugins.cmp = lib.mkIf config.tools.nixvim.enable {
		enable = true;
		autoEnableSources = true;
		settings = {
			snippet.expand = "function(args) require('luasnip').lsp_expand(args.body) end";
			mapping = {
				"<C-Space>" = "cmp.mapping.complete()";
				"<CR>" = "cmp.mapping.confirm({ select = true })";
				"<Tab>" = "cmp.mapping.select_next_item()";
				"<S-Tab>" = "cmp.mapping.select_prev_item()";
			};
			sources = [
				{ name = "nvim_lsp"; }
				{ name = "path"; }
				{ name = "buffer"; }
			];
		};
	};
}