diff options
Diffstat (limited to '.config/nvim/lua/simenandre/remap.lua')
| -rw-r--r-- | .config/nvim/lua/simenandre/remap.lua | 82 |
1 files changed, 81 insertions, 1 deletions
diff --git a/.config/nvim/lua/simenandre/remap.lua b/.config/nvim/lua/simenandre/remap.lua index d7968f0..36d44b3 100644 --- a/.config/nvim/lua/simenandre/remap.lua +++ b/.config/nvim/lua/simenandre/remap.lua @@ -1,4 +1,4 @@ -vim.g.mapleader = " " +-- See `:help vim.keymap.set()` vim.keymap.set("i", "<C-c>", "<Esc>") vim.keymap.set("n", "<leader>f", vim.lsp.buf.format) @@ -10,3 +10,83 @@ vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv") vim.keymap.set("n", "<C-d>", "<C-d>zz") vim.keymap.set("n", "<C-u>", "<C-u>zz") + +-- Set highlight on search, but clear on pressing <Esc> in normal mode +vim.opt.hlsearch = true +vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>") + +-- Diagnostic keymaps +vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, { desc = "Go to previous [D]iagnostic message" }) +vim.keymap.set("n", "]d", vim.diagnostic.goto_next, { desc = "Go to next [D]iagnostic message" }) +vim.keymap.set("n", "<leader>e", vim.diagnostic.open_float, { desc = "Show diagnostic [E]rror messages" }) +vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" }) + +-- Exit terminal mode in the builtin terminal with a shortcut that is a bit easier +-- for people to discover. Otherwise, you normally need to press <C-\><C-n>, which +-- is not what someone will guess without a bit more experience. +-- +-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping +-- or just use <C-\><C-n> to exit terminal mode +vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>", { desc = "Exit terminal mode" }) + +--- I can't stop! +vim.keymap.set("n", "<left>", '<cmd>echo "Use h to move!!"<CR>') +vim.keymap.set("n", "<right>", '<cmd>echo "Use l to move!!"<CR>') +vim.keymap.set("n", "<up>", '<cmd>echo "Use k to move!!"<CR>') +vim.keymap.set("n", "<down>", '<cmd>echo "Use j to move!!"<CR>') + +-- Keybinds to make split navigation easier. +-- Use CTRL+<hjkl> to switch between windows +-- +-- See `:help wincmd` for a list of all window commands +vim.keymap.set("n", "<C-h>", "<C-w><C-h>", { desc = "Move focus to the left window" }) +vim.keymap.set("n", "<C-l>", "<C-w><C-l>", { desc = "Move focus to the right window" }) +vim.keymap.set("n", "<C-j>", "<C-w><C-j>", { desc = "Move focus to the lower window" }) + +-- See `:help vim.keymap.set()` + +vim.keymap.set("i", "<C-c>", "<Esc>") +vim.keymap.set("n", "<leader>f", vim.lsp.buf.format) + +vim.keymap.set("n", "<leader>pv", vim.cmd.Ex) + +vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv") +vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv") + +vim.keymap.set("n", "<C-d>", "<C-d>zz") +vim.keymap.set("n", "<C-u>", "<C-u>zz") + +-- Set highlight on search, but clear on pressing <Esc> in normal mode +vim.opt.hlsearch = true +vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>") + +-- Diagnostic keymaps +vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, { desc = "Go to previous [D]iagnostic message" }) +vim.keymap.set("n", "]d", vim.diagnostic.goto_next, { desc = "Go to next [D]iagnostic message" }) +vim.keymap.set("n", "<leader>e", vim.diagnostic.open_float, { desc = "Show diagnostic [E]rror messages" }) +vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" }) + +-- Exit terminal mode in the builtin terminal with a shortcut that is a bit easier +-- for people to discover. Otherwise, you normally need to press <C-\><C-n>, which +-- is not what someone will guess without a bit more experience. +-- +-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping +-- or just use <C-\><C-n> to exit terminal mode +vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>", { desc = "Exit terminal mode" }) + +--- I can't stop! +vim.keymap.set("n", "<left>", '<cmd>echo "Use h to move!!"<CR>') +vim.keymap.set("n", "<right>", '<cmd>echo "Use l to move!!"<CR>') +vim.keymap.set("n", "<up>", '<cmd>echo "Use k to move!!"<CR>') +vim.keymap.set("n", "<down>", '<cmd>echo "Use j to move!!"<CR>') + +-- Keybinds to make split navigation easier. +-- Use CTRL+<hjkl> to switch between windows +-- +-- See `:help wincmd` for a list of all window commands +vim.keymap.set("n", "<C-h>", "<C-w><C-h>", { desc = "Move focus to the left window" }) +vim.keymap.set("n", "<C-l>", "<C-w><C-l>", { desc = "Move focus to the right window" }) +vim.keymap.set("n", "<C-j>", "<C-w><C-j>", { desc = "Move focus to the lower window" }) +vim.keymap.set("n", "<C-k>", "<C-w><C-k>", { desc = "Move focus to the upper window" }) + +vim.keymap.set("n", "<C-k>", "<C-w><C-k>", { desc = "Move focus to the upper window" }) |
