138 lines
2.9 KiB
Nix
138 lines
2.9 KiB
Nix
{
|
|
nixvim,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
nixvim.nixosModules.nixvim
|
|
./plugins
|
|
./keymaps.nix
|
|
./lsp.nix
|
|
];
|
|
|
|
programs.nixvim = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
|
|
clipboard.register = "unnamedplus";
|
|
|
|
opts = {
|
|
number = true;
|
|
relativenumber = true;
|
|
expandtab = true;
|
|
shiftwidth = 2;
|
|
smartindent = true;
|
|
tabstop = 2;
|
|
softtabstop = 2;
|
|
|
|
showmode = false;
|
|
|
|
fillchars.eob = " ";
|
|
ignorecase = true;
|
|
smartcase = true;
|
|
mouse = "a";
|
|
};
|
|
|
|
extraPlugins = with pkgs.vimPlugins; [
|
|
boole-nvim
|
|
tokyodark-nvim
|
|
];
|
|
extraConfigLua = ''
|
|
require('boole').setup({
|
|
mappings = {
|
|
-- increment = '<C-a>',
|
|
decrement = '<C-x>'
|
|
},
|
|
allow_caps_additions = {
|
|
{'enable', 'disable'},
|
|
{'true', 'false'}
|
|
}
|
|
})
|
|
|
|
require('tokyodark').setup({
|
|
gamma = 0.9,
|
|
transparent_background = true,
|
|
terminal_colors = false,
|
|
custom_highlights = function(_, palette)
|
|
return {
|
|
["@variable"] = {
|
|
fg = "#A0A8CD",
|
|
},
|
|
}
|
|
end,
|
|
})
|
|
|
|
vim.cmd.colorscheme("tokyodark")
|
|
'';
|
|
|
|
plugins = {
|
|
lualine.enable = true;
|
|
bufferline = {
|
|
enable = true;
|
|
settings = {
|
|
options = {
|
|
show_buffer_close_icons = false;
|
|
show_close_icon = false;
|
|
themable = true;
|
|
separator_style = "thin";
|
|
indicator.style = "none";
|
|
always_show_bufferline = false;
|
|
color_icons = true;
|
|
show_buffer_icons = true;
|
|
};
|
|
# highlights = {
|
|
# fill.bg = "NONE";
|
|
# separator.fg = "NONE";
|
|
# separator_selected.fg = "NONE";
|
|
# separator_visible.fg = "NONE";
|
|
# };
|
|
};
|
|
};
|
|
yazi.enable = true;
|
|
cord = {
|
|
enable = true;
|
|
settings.display.theme = "atom";
|
|
};
|
|
neoscroll.enable = true;
|
|
telescope = {
|
|
enable = true;
|
|
enabledExtensions = [ "persisted" ];
|
|
};
|
|
which-key.enable = true;
|
|
flash.enable = true;
|
|
lsp.enable = true;
|
|
fugitive.enable = true;
|
|
treesitter = {
|
|
enable = true;
|
|
highlight.enable = true;
|
|
indent.enable = true;
|
|
settings.ensure_installed = "all";
|
|
};
|
|
gitsigns.enable = true;
|
|
nvim-autopairs = {
|
|
enable = true;
|
|
};
|
|
cmp = {
|
|
autoEnableSources = true;
|
|
settings.sources = [
|
|
{ name = "nvim_lsp"; }
|
|
{ name = "path"; }
|
|
{ name = "buffer"; }
|
|
];
|
|
};
|
|
persisted.enable = true;
|
|
render-markdown.enable = true;
|
|
oil = {
|
|
enable = true;
|
|
settings = {
|
|
view_options = {
|
|
show_hidden = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
}
|