74 lines
1.7 KiB
Nix
74 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
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|