{ pkgs, config, ... }: { imports = [ ./keymaps.nix ]; programs.nixvim = { enable = true; plugins = { # UI nvim-tree.enable = true; notify.enable = true; which-key.enable = true; headlines.enable = true; neoscroll.enable = true; statuscol.enable = true; web-devicons.enable =true; telescope.enable = true; telescope.extensions = { undo.enable = true; file-browser = { enable = true; settings = { use_fd = true; hidden = true; }; }; }; lualine = { enable = true; settings.options.theme="molokai"; }; barbar = { enable = true; settings = { preset = "slanted"; }; }; # Code visibility rainbow-delimiters.enable = true; indent-blankline.enable = true; # Languages nix.enable = true; rustaceanvim.enable = true; # Git neogit.enable = true; diffview.enable = true; gitsigns = { enable = true; settings = { current_line_blame = true; }; }; # Uncategorized luasnip.enable = true; cmp.enable = true; cmp_luasnip.enable = true; cmp-path.enable = true; cmp-git.enable = true; friendly-snippets.enable = true; nvim-ufo.enable = true; lazy.enable = true; comment.enable = true; treesitter.enable = true; colorizer.enable = true; }; plugins.noice= { enable = true; settings.presets = { command_palette = true; }; }; }; programs.nixvim.extraPlugins = [ pkgs.vimPlugins.legendary-nvim pkgs.vimPlugins.guess-indent-nvim pkgs.vimPlugins.vim-monokai-tasty (pkgs.vimUtils.buildVimPlugin { name = "cmp-async-path"; src = pkgs.fetchgit { url = "https://codeberg.org/FelipeLema/cmp-async-path"; rev = "7df7f3721c45aac26b6e0474087538f4681c9c7a"; hash = "sha256-LSWWsn8aKogjWevcbjITXu30a2k3wY3+f2+l7WDAZpY="; }; }) ]; programs.nixvim.colorscheme = "vim-monokai-tasty"; programs.nixvim.clipboard.providers.wl-copy.enable = true; programs.nixvim.opts = { mousemoveevent = true; relativenumber = true; number = true; scroll = 2; foldlevel = 99; foldlevelstart = 99; foldenable = true; }; programs.nixvim.globals = { mapleader = ";"; }; }