local opts = { noremap = true, silent = true } --Local term_opts = { silent = true } local keymap = vim.keymap.set -- Bind a leader key keymap("", "", "", opts) -- release previously binded key vim.g.mapleader = " " vim.g.maplocalleader = " " -- Modes -- Normal Mode = 'n', -- Insert Mode = 'i', -- Visual Mode = 'v', -- Visual Block Mode = 'x', -- Terminal Mode = 't', -- Command Mode = 'c', -- Resize with arrow-keys keymap("n", "", ":resize -2", opts) keymap("n", "", ":resize +2", opts) keymap("n", "", ":vertical resize -2", opts) keymap("n", "", ":vertical resize +2", opts) -- Telescope fuzzy finder local telescope_status_ok, telescope = pcall(require, "telescope.builtin") if telescope_status_ok then keymap("n", "ff", telescope.find_files, {}) keymap("n", "ll", telescope.live_grep, {}) keymap("n", "bb", telescope.buffers, {}) keymap("n", "tt", telescope.treesitter, {}) end -- Lsp controls keymap("n", "ls", ":LspStart", opts) keymap("n", "lS", ":LspStop", opts) keymap("n", "lr", ":LspRestart", opts) keymap("n", "li", ":LspInfo", opts) -- Buffer controls keymap("n", "BB", ":bdelete", opts) keymap("n", "jj", ":bprevious", opts) keymap("n", "kk", ":bnext", opts) keymap("n", "P", '"+p', opts) keymap("v", "Y", '"+y', opts) -- Toggleterm controls function _G.set_terminal_keymaps() local topts = { buffer = 0 } keymap("t", "", [[]], topts) keymap("t", "", [[wincmd h]], topts) keymap("t", "", [[wincmd j]], topts) keymap("t", "", [[wincmd k]], topts) keymap("t", "", [[wincmd l]], topts) keymap("t", "", [[]], topts) end vim.cmd("autocmd! TermOpen term://*toggleterm#* lua set_terminal_keymaps()")