{ pkgs, ... }: { programs.nixvim.plugins = { web-devicons.enable = true; telescope.enable = true; bufferline.enable = true; scrollview.enable = true; cursorline.enable = true; cursorline.settings.cursorword.enable = true; fidget.enable = true; indent-blankline.enable = true; gitsigns.enable = true; navbuddy.enable = true; smartcolumn.enable = true; fastaction.enable = true; colorizer = { enable = true; settings.user_default_options = { mode = "virtualtext"; css = true; css_fn = true; names = false; virtualtext = "■"; virtualtext_inline = true; virtualtext_mode = "foreground"; }; }; which-key = { enable = true; settings.spec = [ { __unkeyed = "f"; name = "Telescope"; } { __unkeyed = "l"; name = "LSP"; } { __unkeyed = "m"; name = "Minimap"; } { __unkeyed = "c"; name = "CodeCompanion"; } { __unkeyed = "h"; name = "Hop"; } ]; }; render-markdown = { enable = true; settings.file_types = [ "markdown" "codecompanion" ]; }; }; programs.nixvim.keymaps = [ { mode = "n"; key = "ff"; action = ":Telescope fd"; } { mode = "n"; key = "fd"; action = ":Telescope diagnostics"; } { mode = "n"; key = "fb"; action = ":Telescope buffers"; } { mode = "n"; key = "fr"; action = ":Telescope registers"; } ]; programs.nixvim.extraPlugins = with pkgs.vimPlugins; [ codewindow-nvim ]; programs.nixvim.extraConfigLua = # lua '' local codewindow = require("codewindow") codewindow.setup() codewindow.apply_default_keybinds() ''; }