-- Remap space as leader key vim.api.nvim_set_keymap('', '', '', { noremap = true, silent=true}) vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' -- Remap for dealing with word wrap vim.api.nvim_set_keymap('n', 'k', "v:count == 0 ? 'gk' : 'k'", { noremap=true, expr = true, silent = true }) vim.api.nvim_set_keymap('n', 'j', "v:count == 0 ? 'gj' : 'j'", { noremap= true, expr = true, silent = true }) -- Editing -- Wrap current paragraph vim.api.nvim_set_keymap('n', '', [[gwip]], { noremap = false }) -- Windows vim.api.nvim_set_keymap('n', 'w', [[]], { noremap = true }) -- Define leader mappings (using which-key) local whichkey = require("which-key") whichkey.setup{} local mappings = { [""] = { "", "Reopen Last Buffer" }, -- Buffer b = { name = "Buffer", b = { "lua require('telescope.builtin').buffers()", "Find Buffer" }, d = { "bd", "Delete Buffer" }, m = { "%bd|e#", "Delete Other Buffers" }, y = { "ggyG", "Copy Buffer" }, }, -- Debug d = { name = "Debug", b = {"lua require('dap').toggle_breakpoint()", "Breakpoint"}, B = {"lua require('dap').set_breakpoint(vim.fn.input('Breakpoint condition: '))", "Conditional Breakpoint"}, l = {"require('dap').set_breakpoint(nil, nil, vim.fn.input('Log point message: '))", "Logpoint"}, r = {"lua require('dap').repl.open()", "Open REPL"}, c = {"lua require('dap').continue()", "Continue"}, q = {"lua require('dap').close()", "Close"}, }, -- File f = { name = "File", f = { "lua require('telescope.builtin').file_browser()", "Find File" }, s = { "write", "Store File" }, S = { "wa", "Store All Files" }, }, -- Search s = { name = "Search", p = { "lua require('telescope.builtin').live_grep()", "Search Project" }, b = { "lua require('telescope.builtin').treesitter()", "Search Buffer Symbols" }, }, -- Project p = { f = { "lua require('telescope.builtin').find_files()", "Search Project" }, b = { "lua require('yabs'):run_default_task()", "Build Project" }, t = { "lua require('telescope').extensions.yabs.tasks()", "Search Project" }, }, -- Window q = { name = "Quit", q = { "qa", "Quit"}, }, w = "Window", } whichkey.register(mappings, { prefix = "" })