user/settings/neovim.nix (view raw)
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 | {
config,
...
}:
{
home.sessionVariables = {
MANPAGER = "nvim +Man!";
};
programs.nixvim = {
enable = true;
defaultEditor = true;
nixpkgs.config = config.nixpkgs.config;
viAlias = true;
vimAlias = true;
vimdiffAlias = true;
enableMan = false;
clipboard.register = "unnamed";
opts = {
autoindent = true;
number = true;
relativenumber = true;
shiftwidth = 2;
};
globals.mapleader = ",";
performance = {
byteCompileLua = {
enable = true;
nvimRuntime = true;
plugins = true;
};
};
plugins = {
cmp = {
enable = true;
};
blink-cmp = {
enable = true;
settings = {
keymap.preset = "super-tab";
};
};
transparent.enable = true;
mini = {
enable = true;
mockDevIcons = true;
modules.icons = {
style = "glyph";
};
modules.basics = { };
};
mini-ai = {
enable = true;
};
friendly-snippets.enable = true;
nvim-snippets = {
enable = true;
settings.friendly_snippets = true;
luaConfig.post = ''
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
vim.lsp.config('cssls', {
capabilities = capabilities,
})
'';
};
nvim-surround.enable = true;
};
};
}
|