73 lines
1.7 KiB
Nix
73 lines
1.7 KiB
Nix
{pkgs, ...}: let
|
|
inherit (builtins) readFile;
|
|
in {
|
|
programs = {
|
|
neovim = {
|
|
enable = true;
|
|
|
|
viAlias = true;
|
|
vimAlias = true;
|
|
defaultEditor = true;
|
|
|
|
configure = {
|
|
customRC = ''
|
|
" -- init --
|
|
${readFile ./config/init.vim}
|
|
" -- mappings --
|
|
${readFile ./config/maps.vim}
|
|
" -- plugin configs --
|
|
${readFile ./config/plugins.vim}
|
|
'';
|
|
|
|
packages.myVimPackage = with pkgs.vimPlugins; {
|
|
start = [
|
|
# general utils
|
|
direnv-vim # direnv for vim
|
|
dressing-nvim # better UI components
|
|
|
|
leap-nvim # navigation
|
|
lualine-nvim # statusline
|
|
tabular # align text according to regexp
|
|
undotree # undo history
|
|
vim-css-color # highlight CSS colors
|
|
vim-signature # marks on signcolumn
|
|
which-key-nvim # mapping manager and cheatsheet
|
|
vim-sneak
|
|
|
|
# completion
|
|
nvim-cmp
|
|
cmp-buffer
|
|
cmp-cmdline
|
|
cmp-nvim-lsp
|
|
cmp-path
|
|
cmp_luasnip
|
|
|
|
comment-nvim
|
|
todo-comments-nvim
|
|
|
|
luasnip
|
|
friendly-snippets
|
|
|
|
nvim-lspconfig
|
|
nvim-lint
|
|
fidget-nvim
|
|
aerial-nvim
|
|
|
|
telescope-nvim # list of files interface
|
|
telescope-file-browser-nvim
|
|
telescope-fzy-native-nvim
|
|
|
|
vim-fugitive # git in vim
|
|
gitsigns-nvim
|
|
|
|
targets-vim # text objects
|
|
vim-surround
|
|
vim-expand-region
|
|
|
|
nvim-treesitter.withAllGrammars # better highlighting
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|