-- Keymap function. local mapkey = Utils.mapkey -- Map the leader key. vim.g.mapleader = ' ' -- Pickers mapkey("n", "f", "Open file picker", ":lua Snacks.picker.files()") mapkey("n", "l", "Open recent file picker", ":lua Snacks.picker.recent()") mapkey("n", "b", "Open buffer picker", ":lua Snacks.picker.buffers()") mapkey("n", "B", "Open buffer live grep picker", ":lua Snacks.picker.grep_buffers()") mapkey("n", "y", "Open clipboard history picker", ":lua Snacks.picker.cliphist()") mapkey("n", "/", "Open live grep picker", ":lua Snacks.picker.grep()") mapkey("n", "\\", "Open command palette", ":lua Snacks.picker.commands()") mapkey("n", "?", "Open help picker", ":lua Snacks.picker.help()") mapkey("n", "p", "Open picker picker", ":lua Snacks.picker.pickers()") mapkey("n", "'", "Open last picker", ":lua Snacks.picker.resume()") mapkey("n", "", "Open smart picker", ":lua Snacks.picker.smart()") -- Commenting. mapkey("n", "", "Comment line", ":norm gcc") mapkey("v", "", "Comment line", ":norm gc") -- Tabs mapkey("n", "t", "Manage tabs", "") mapkey("n", "tt", "Open new tab", ":tabnew") mapkey("n", "tq", "Close tab", ":tabclose") mapkey("n", "tn", "Go to next tab", ":tabnext") mapkey("n", "tp", "Go to previous tab", ":tabprev") -- Sessions mapkey("n", "s", "Manage sessions", "") mapkey("n", "sw", "Save current session", ":SessionSave") mapkey("n", "ss", "Switch and save session", ":SessionSave :SessionSelect") mapkey("n", "sp", "Open session picker", ":SessionSelect") mapkey("n", "sd", "Delete current session", ":SessionDelete") mapkey("n", "sl", "Open last session", ":SessionLoadLast") -- Terminals mapkey("n", "c", "Manage terminals", "") -- Git mapkey("n", "g", "Open lazygit", ":lua Snacks.lazygit()") -- Other leader keys mapkey("n", "e", "Open file manager", ":lua MiniFiles.open()") -- QOL Keys mapkey("t", "", "Exit terminal insert mode", "") vim.keymap.set("c", "", function() if vim.fn.pumvisible() == 1 then return '' end return '' end, { expr = true }) -- Make enter complete command. mapkey("n", "", "Clear highlights", ":noh") -- Make esc clear highlights mapkey("n", "q", "Close buffer", ":bd") -- Visual Movement Keys. -- mapkey({"n", "v"}, "j", "Go down visually", "gj") -- mapkey({"n", "v"}, "k", "Go up visually", "gk") -- Learn hjkl. -- mapkey({"n", "v"}, "", "Correct the keypress", function() print("Try pressing h instead.") end) -- mapkey({"n", "v"}, "", "Correct the keypress", function() print("Try pressing j instead.") end) -- mapkey({"n", "v"}, "", "Correct the keypress", function() print("Try pressing k instead.") end) -- mapkey({"n", "v"}, "", "Correct the keypress", function() print("Try pressing l instead.") end)