dotfiles-nix/modules/programs/neovim/default.nix

60 lines
1.5 KiB
Nix

{ config, lib, pkgs, ... }:
{
config = {
environment.variables.EDITOR = "nvim";
home-manager.users.${config.user} = {
programs.neovim = {
enable = true;
viAlias = true;
vimAlias = true;
extraLuaConfig = lib.fileContents ../../../files/config/nvim/init.lua;
plugins = with pkgs.vimPlugins; [
# Deoendencies
vim-devicons
nvim-web-devicons
# Lua functions
plenary-nvim
# Lines
lualine-nvim # mode line
bufferline-nvim # buffer line
# Menus
nvim-tree-lua # file browser
undotree # undo menu
trouble-nvim # error menu
telescope-nvim # grep/find menus
# Integrations
vim-fugitive # git
# Snippets
vim-vsnip
vim-vsnip-integ
friendly-snippets
# Completion
nvim-cmp
cmp-buffer
cmp-nvim-lsp
cmp-vsnip
nvim-surround # delimiter
# Lsp
nerdcommenter # comment functions
nvim-treesitter.withAllGrammars # hilighting
vim-illuminate # hilighting
todo-comments-nvim # todo comments
catppuccin-nvim # theme
nvim-lspconfig # lsp server
fidget-nvim # notifications
indent-o-matic # auto indentation
hologram-nvim # images
virt-column-nvim # 80 col line
];
};
};
};
}