1local opts = { noremap = true, silent = true}
2
3local term_opts = { silent = true}
4
5-- Open netrw in side tree viewer
6vim.keymap.set("n", "<leader>e", ":Lex 30<cr>", opts)
7
8-- stay in indent mode when shifting text
9vim.keymap.set("v", "<", "<gv", opts)
10vim.keymap.set("v", ">", ">gv", opts)
11
12-- vim tabs
13vim.keymap.set("n", "<Tab>", ":tabnext<cr>", opts)
14vim.keymap.set("n", "<S-Tab>", ":tabprevious<cr>", opts)
15vim.keymap.set("n", "<S-T>", ":tabnew<cr>", opts)
16
17
18keymaps = {
19 ------------------------- Search / pickers -------------------------
20 { "<Leader>sf", function() Snacks.picker.files() end, desc = "Find File" },
21 { "<Leader>st", function() Snacks.picker.grep() end, desc = "Live Grep" },
22 { "<Leader>sg", function() Snacks.picker.git_grep({ cwd = Snacks.git.get_root(vim.uv.cwd()), untracked = true }) end, desc = "Grep Git" },
23 { "<Leader>sM", function() Snacks.picker.man() end, desc = "Man Pages" },
24 { "<Leader>sh", function() Snacks.picker.help() end, desc = "Help Pages" },
25}
26
27for _, map in ipairs(keymaps) do
28 local lhs, rhs, opts = map[1], map[2], { desc = map.desc, silent = true }
29 if map.remap then opts.remap = map.remap end
30 vim.keymap.set(map.mode or "n", lhs, rhs, opts)
31end