vim.g.mapleader = "\\" vim.keymap.set("n", "\\", ":nohlsearch") vim.keymap.set("n", "vv", function() vim.cmd("vsplit") end) vim.keymap.set("n", "vt", function() vim.cmd("tabnew") end) vim.keymap.set("n", "vw", function() vim.cmd("tabclose") end) vim.keymap.set("n", "vW", function() vim.cmd("tabonly") end) vim.keymap.set("n", "vf", function() require('telescope-tabs').list_tabs() end) vim.keymap.set("n", "", function() vim.cmd("tabnext") end) vim.keymap.set("n", "", function() vim.cmd("tabNext") end) vim.keymap.set("n", "v1", function() vim.cmd("tabnext 1") end) vim.keymap.set("n", "v2", function() vim.cmd("tabnext 2") end) vim.keymap.set("n", "v3", function() vim.cmd("tabnext 3") end) vim.keymap.set("n", "v4", function() vim.cmd("tabnext 4") end) vim.keymap.set("n", "v5", function() vim.cmd("tabnext 5") end) vim.keymap.set("n", "v6", function() vim.cmd("tabnext 6") end) vim.keymap.set("n", "v7", function() vim.cmd("tabnext 7") end) vim.keymap.set("n", "v8", function() vim.cmd("tabnext 8") end) vim.keymap.set("n", "v9", function() vim.cmd("tabnext 9") end) -- easier to move windows vim.keymap.set("n", "`h", "h") vim.keymap.set("n", "`j", "j") vim.keymap.set("n", "`k", "k") vim.keymap.set("n", "`l", "l") vim.keymap.set("n", "qr", vim.lsp.buf.rename) vim.keymap.set("n", "qf", vim.lsp.buf.format) vim.keymap.set("n", "dd", vim.diagnostic.open_float) vim.keymap.set("n", "yf", function() local view = vim.fn.winsaveview() vim.cmd("%y") vim.fn.winrestview(view) end, { desc = "Yank entire file" }) -------- PLUGINS ------- -- Telescope local ts_builtins = require('telescope.builtin') vim.keymap.set('n', 'ff', ts_builtins.find_files, { desc = 'Telescope find files' }) vim.keymap.set('n', 'fg', ts_builtins.git_files, { desc = 'Telescope find git files' }) vim.keymap.set('n', 'fb', ts_builtins.buffers, { desc = 'Telescope buffers' }) vim.keymap.set('n', 'fh', ts_builtins.help_tags, { desc = 'Telescope help tags' }) vim.keymap.set('n', 'fs', ts_builtins.lsp_workspace_symbols, { desc = 'Telescope find symbols' }) vim.keymap.set('n', 'fts', ts_builtins.treesitter, { desc = 'Telescope find treesitter' }) vim.keymap.set('n', 'fd', ts_builtins.lsp_definitions, { desc = 'Telescope find definition' }) vim.keymap.set('n', 'ftd', ts_builtins.lsp_type_definitions, { desc = 'Telescope find type definition' }) vim.keymap.set('n', 'fr', ts_builtins.lsp_references, { desc = 'Telescope find references' }) -- Undo Tree vim.keymap.set('n', 'u', vim.cmd.UndotreeToggle) -- Better Term local betterTerm = require('betterTerm') -- toggle firts term vim.keymap.set({ "n", "t" }, "tt", betterTerm.open, { desc = "Open terminal" }) -- Select term focus -- vim.keymap.set({"n"}, "tf", betterTerm.select, { desc = "Select terminal"}) -- Create new term local current = 2 vim.keymap.set( { "n" }, "tn", function() betterTerm.open(current) current = current + 1 end, { desc = "New terminal" } ) -- Neotree local ntc = require('neo-tree.command') vim.keymap.set('n', '', function() local reveal_file = vim.fn.expand('%:p') if (reveal_file == '') then reveal_file = vim.fn.getcwd() else local f = io.open(reveal_file, "r") if (f) then f.close(f) else reveal_file = vim.fn.getcwd() end end ntc.execute({ action = "focus", -- OPTIONAL, this is the default value source = "filesystem", -- OPTIONAL, this is the default value position = "right", -- OPTIONAL, this is the default value reveal_file = reveal_file, -- path to file or folder to reveal reveal_force_cwd = true, -- change cwd without asking if needed toggle = true, }) end, { desc = "Show Sidebar" } )