{ programs.nixvim.keymaps = [ # e - explore/edit { mode = "n"; key = "ed"; action = ":lua require('mini.files').open()"; options.desc = "Directory"; } { mode = "n"; key = "ef"; action = ":lua require('mini.files').open(vim.api.nvim_buf_get_name(0))"; options.desc = "File directory"; } # f - find { mode = "n"; key = "f/"; action = ":Pick history scope='/'"; options.desc = "'/' history"; } { mode = "n"; key = "f:"; action = ":Pick history scope=':'"; options.desc = "':' history"; } { mode = "n"; key = "fa"; action = ":Pick git_hunks scope='staged'"; options.desc = "Added hunks (all)"; } { mode = "n"; key = "fA"; action = ":Pick git_hunks path='%' scope='staged'"; options.desc = "Added hunks (buffer)"; } { mode = "n"; key = "fb"; action = ":Pick buffers"; options.desc = "Buffers"; } { mode = "n"; key = "fd"; action = ":Pick diagnostic scope='all'"; options.desc = "Diagnostic (workspace)"; } { mode = "n"; key = "fD"; action = ":Pick diagnostic scope='current'"; options.desc = "Diagnostic (buffer)"; } { mode = "n"; key = "ff"; action = ":Pick files"; options.desc = "Search files"; } { mode = "n"; key = "fr"; action = ":Pick lsp scope='references'"; options.desc = "References (LSP)"; } { mode = "n"; key = "fs"; action = ":Pick lsp scope='workspace_symbol'"; options.desc = "Symbols (LSP, workspace)"; } { mode = "n"; key = "fS"; action = ":Pick lsp scope='document_symbol'"; options.desc = "Symbols (LSP, buffer)"; } # g - git { mode = "n"; key = "gg"; action = ":LazyGit"; options.desc = "Lazygit"; } # l - lsp/formatter { mode = "n"; key = "lf"; action = ":lua require('conform').format({ lsp_fallback = true })"; options.desc = "Format"; } # next { mode = "n"; key = "/"; action = ":Pick grep_live"; options.desc = "Grep"; } { mode = "n"; key = "sj"; action = ":lua require('mini.jump2d').start(require('mini.jump2d').builtin_opts.query)"; options.desc = "Jump to character"; } ]; }