return { n = { -- Buffers ["H"] = { function() require("astronvim.utils.buffer").nav( -(vim.v.count > 0 and vim.v.count or 1)) end, desc = "Previous buffer", }, ["L"] = { function() require("astronvim.utils.buffer").nav(vim.v.count > 0 and vim.v.count or 1) end, desc = "Next buffer", }, [""] = { "ToggleTerm", desc = "Toggle terminal" }, ["fn"] = false, ["fo"] = false, ["fh"] = false, ["fb"] = false, [""] = false, [""] = false, [""] = false, [""] = { function() require("dap").terminate() end, desc = "Debugger: Stop", }, -- S-F1 [""] = { function() require("dap").restart_frame() end, desc = "Debugger: Restart", }, [""] = { function() require("dap").step_out() end, desc = "Debugger: Step Out", }, [""] = { function() require("dap").step_into() end, desc = "Debugger: Step Into", }, [""] = { function() require("dap").step_over() end, desc = "Debugger: Step Over", }, [""] = { function() require("dap").continue() end, desc = "Debugger: Start", }, [""] = { function() require("dap").toggle_breakpoint() end, desc = "Debugger: Toggle Breakpoint", }, ["DB"] = { function() require("dap").toggle_breakpoint(vim.fn.input("Breakpoint condition: ")) end, desc = "Debugger: Toggle Breakpoint with contidion", }, ["DD"] = { function() require("dap").clear_breakpoints() end, desc = "Debugger: clear breakpoint", }, ["fp"] = { function() require("telescope").extensions.projects.projects() end, desc = "Search project", }, ["lj"] = { function() vim.diagnostic.goto_next() end, desc = "Go to next diagnostic", }, ["lk"] = { function() vim.diagnostic.goto_prev() end, desc = "Go to prev diagnostic", }, ["Ch"] = { function() require("nvim-comment-frame").add_comment() end, desc = "Add a comment frame", }, ["CH"] = { function() require("nvim-comment-frame").add_multiline_comment() end, desc = "Add a multiline comment frame", }, ["Cd"] = { function() require("neogen").generate() end, desc = "Generate comment docstring", }, ["ft"] = { "TodoTrouble", desc = "Search TODOS", }, ["r"] = { ":s/", desc = "Search and replace", }, ["R"] = { ":%s/", desc = "Search and replace in whole file", }, }, v = { ["r"] = { ":s/", desc = "Search and replace", }, ["p"] = { "pgvy", desc = "Paste and re yank text", }, }, t = { [""] = { "ToggleTerm", desc = "Toggle terminal" }, }, }