diff options
| author | jdhao <jdhao@hotmail.com> | 2022-09-08 13:19:34 +0800 |
|---|---|---|
| committer | jdhao <jdhao@hotmail.com> | 2022-09-08 13:19:34 +0800 |
| commit | 309c8ad6368ff549278300343d68fed54b74d5a4 (patch) | |
| tree | eede215db9e613a67250e523f8753eabe6081669 /core/mappings.lua | |
| parent | 954a4a1cad62c2c3e3a25c8c78723ff5b0d5a60a (diff) | |
update mapping
Diffstat (limited to 'core/mappings.lua')
| -rw-r--r-- | core/mappings.lua | 120 |
1 files changed, 27 insertions, 93 deletions
diff --git a/core/mappings.lua b/core/mappings.lua index 3bcc6fa..82a3a2b 100644 --- a/core/mappings.lua +++ b/core/mappings.lua @@ -5,75 +5,36 @@ local api = vim.api keymap.set({ "n", "x" }, ";", ":") -- Turn the word under cursor to upper case --- inoremap <c-u> <Esc>viwUea keymap.set("i", "<c-u>", "<Esc>viwUea") -- Turn the current word into title case --- inoremap <c-t> <Esc>b~lea keymap.set("i", "<c-u>", "<Esc>b~lea") -- Paste non-linewise text above or below current line, see https://stackoverflow.com/a/1346777/6064933 -keymap.set("n", "<leader>p", "m`o<ESC>p``", { - desc = "paste below current line", -}) -keymap.set("n", "<leader>P", "m`O<ESC>p``", { - desc = "paste above current line", -}) +keymap.set("n", "<leader>p", "m`o<ESC>p``", { desc = "paste below current line", }) +keymap.set("n", "<leader>P", "m`O<ESC>p``", { desc = "paste above current line", }) -- Shortcut for faster save and quit -keymap.set("n", "<leader>w", "<cmd>update<cr>", { - silent = true, - desc = "save buffer", -}) +keymap.set("n", "<leader>w", "<cmd>update<cr>", { silent = true, desc = "save buffer", }) -- Saves the file if modified and quit -keymap.set("n", "<leader>q", "<cmd>x<cr>", { - silent = true, - desc = "quit current window", -}) +keymap.set("n", "<leader>q", "<cmd>x<cr>", { silent = true, desc = "quit current window" }) -- Quit all opened buffers -keymap.set("n", "<leader>Q", "<cmd>qa!<cr>", { - silent = true, - desc = "quit nvim", -}) +keymap.set("n", "<leader>Q", "<cmd>qa!<cr>", { silent = true, desc = "quit nvim", }) -- Navigation in the location and quickfix list -keymap.set("n", "[l", "<cmd>lprevious<cr>zv", { - silent = true, - desc = "previous location item", -}) -keymap.set("n", "]l", "<cmd>lnext<cr>zv", { - silent = true, - desc = "next location item", -}) +keymap.set("n", "[l", "<cmd>lprevious<cr>zv", { silent = true, desc = "previous location item", }) +keymap.set("n", "]l", "<cmd>lnext<cr>zv", { silent = true, desc = "next location item", }) -keymap.set("n", "[L", "<cmd>lfirst<cr>zv", { - silent = true, - desc = "first location item", -}) -keymap.set("n", "]L", "<cmd>llast<cr>zv", { - silent = true, - desc = "last location item", -}) +keymap.set("n", "[L", "<cmd>lfirst<cr>zv", { silent = true, desc = "first location item", }) +keymap.set("n", "]L", "<cmd>llast<cr>zv", { silent = true, desc = "last location item", }) -keymap.set("n", "[q", "<cmd>cprevious<cr>zv", { - silent = true, - desc = "previous qf item", -}) -keymap.set("n", "]q", "<cmd>cnext<cr>zv", { - silent = true, - desc = "next qf item", -}) +keymap.set("n", "[q", "<cmd>cprevious<cr>zv", { silent = true, desc = "previous qf item", }) +keymap.set("n", "]q", "<cmd>cnext<cr>zv", { silent = true, desc = "next qf item", }) -keymap.set("n", "[Q", "<cmd>cfirst<cr>zv", { - silent = true, - desc = "first qf item", -}) -keymap.set("n", "]Q", "<cmd>clast<cr>zv", { - silent = true, - desc = "last qf item", -}) +keymap.set("n", "[Q", "<cmd>cfirst<cr>zv", { silent = true, desc = "first qf item", }) +keymap.set("n", "]Q", "<cmd>clast<cr>zv", { silent = true, desc = "last qf item", }) -- Close location list or quickfix list if they are present, see https://superuser.com/q/355325/736190 keymap.set("n", [[\x]], "<cmd>windo lclose <bar> cclose <cr>", { @@ -137,7 +98,6 @@ keymap.set("n", "<leader>sv", "", { }) -- Reselect the text that has just been pasted, see also https://stackoverflow.com/a/4317090/6064933. --- nnoremap <expr> <leader>v keymap.set("n", "<leader>v", "printf('`[%s`]', getregtype()[0])", { expr = true, desc = "reselect last pasted area", @@ -151,20 +111,14 @@ keymap.set("n", "/", [[/\v]]) -- Change current working directory locally and print cwd after that, -- see https://vim.fandom.com/wiki/Set_working_directory_to_the_current_file -keymap.set("n", "<leader>cd", "<cmd>lcd %:p:h<cr><cmd>pwd<cr>", { - desc = "change cwd", -}) +keymap.set("n", "<leader>cd", "<cmd>lcd %:p:h<cr><cmd>pwd<cr>", { desc = "change cwd", }) -- Use Esc to quit builtin terminal keymap.set("t", "<Esc>", [[<c-\><c-n>]]) -- Toggle spell checking -keymap.set("n", "<F11>", "<cmd>set spell!<cr>", { - desc = "toggle spell", -}) -keymap.set("i", "<F11>", "<c-o><cmd>set spell!<cr>", { - desc = "toggle spell", -}) +keymap.set("n", "<F11>", "<cmd>set spell!<cr>", { desc = "toggle spell", }) +keymap.set("i", "<F11>", "<c-o><cmd>set spell!<cr>", { desc = "toggle spell", }) -- Change text without putting it into the vim register, -- see https://stackoverflow.com/q/54255/6064933 @@ -174,41 +128,25 @@ keymap.set("n", "cc", '"_cc') keymap.set("x", "c", '"_c') -- Remove trailing whitespace characters -keymap.set("n", "<leader><space>", "<cmd>StripTrailingWhitespace<cr>", { - desc = "remove trailing space", -}) +keymap.set("n", "<leader><space>", "<cmd>StripTrailingWhitespace<cr>", { desc = "remove trailing space", }) -- check the syntax group of current cursor position -keymap.set("n", "<leader>st", "<cmd>call utils#SynGroup()<cr>", { - desc = "check syntax group", -}) +keymap.set("n", "<leader>st", "<cmd>call utils#SynGroup()<cr>", { desc = "check syntax group", }) -- Copy entire buffer. -keymap.set("n", "<leader>y", "<cmd>%yank<cr>", { - desc = "yank entire buffer", -}) +keymap.set("n", "<leader>y", "<cmd>%yank<cr>", { desc = "yank entire buffer", }) -- Toggle cursor column -keymap.set("n", "<leader>cl", "<cmd>call utils#ToggleCursorCol()<cr>", { - desc = "toggle cursor column", -}) +keymap.set("n", "<leader>cl", "<cmd>call utils#ToggleCursorCol()<cr>", { desc = "toggle cursor column", }) -- Move current line up and down -keymap.set("n", "<A-k>", '<cmd>call utils#SwitchLine(line("."), "up")<cr>', { - desc = "move line up", -}) -keymap.set("n", "<A-j>", '<cmd>call utils#SwitchLine(line("."), "down")<cr>', { - desc = "move line down", -}) +keymap.set("n", "<A-k>", '<cmd>call utils#SwitchLine(line("."), "up")<cr>', { desc = "move line up", }) +keymap.set("n", "<A-j>", '<cmd>call utils#SwitchLine(line("."), "down")<cr>', { desc = "move line down", }) -- Move current visual-line selection up and down -keymap.set("x", "<A-k>", '<cmd>call utils#MoveSelection("up")<cr>', { - desc = "move selection up", -}) +keymap.set("x", "<A-k>", '<cmd>call utils#MoveSelection("up")<cr>', { desc = "move selection up", }) -keymap.set("x", "<A-j>", '<cmd>call utils#MoveSelection("down")<cr>', { - desc = "move selection down", -}) +keymap.set("x", "<A-j>", '<cmd>call utils#MoveSelection("down")<cr>', { desc = "move selection down", }) -- Replace visual selection with text in register, but not contaminate the register, -- see also https://stackoverflow.com/q/10723700/6064933. @@ -229,14 +167,10 @@ keymap.set("n", "<Up>", "<C-W>k") keymap.set("n", "<Down>", "<C-W>j") -- Text objects for URL -keymap.set({ "x", "o" }, "iu", "<cmd>call text_obj#URL()<cr>", { - desc = "URL text object", -}) +keymap.set({ "x", "o" }, "iu", "<cmd>call text_obj#URL()<cr>", { desc = "URL text object", }) -- Text objects for entire buffer -keymap.set({ "x", "o" }, "iB", "<cmd>call text_obj#Buffer()<cr>", { - desc = "buffer text object", -}) +keymap.set({ "x", "o" }, "iB", "<cmd>call text_obj#Buffer()<cr>", { desc = "buffer text object", }) -- Do not move my cursor when joining lines. keymap.set("n", "J", "", { @@ -261,7 +195,7 @@ keymap.set("n", "gJ", "mzgJ`z", { }) -- Break inserted text into smaller undo units when we insert some punctuation chars. -local undo_ch = {',', '.', '!', '?', ';', ':'} +local undo_ch = { ',', '.', '!', '?', ';', ':' } for _, ch in ipairs(undo_ch) do keymap.set('i', ch, ch .. '<c-g>u') end |
