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", "lua require'telescope.builtin'.find_files({ find_command = {'rg', '--files', '--hidden', '--no-ignore', '-g', '!.git' }})", {} ) 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", "nn", ":Neotree toggle", opts) -- System clipboard yank and paste keymap("n", "P", '"+p', opts) keymap("v", "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()") -- Toggle ZenMode keymap("n", "zz", ':ZenMode', opts)