improve remap docu

This commit is contained in:
2026-07-31 20:19:35 +02:00
parent 85dfb90e83
commit e61dd9685b
+42 -30
View File
@@ -1,9 +1,10 @@
-- vim.g.mapleader = " "
-- This has to be configured inside lazy.lua due to telescope loading before this takes effect
vim.cmd("command! W w")
-- Navigation
----------------
-- Navigation --
----------------
vim.cmd("command! W w") -- I'm missing w for W too much
vim.keymap.set("n", "Q", "<nop>", { desc = "Do not quit" }) -- Do not quit :D
vim.keymap.set("i", "<C-c>", "<Esc>") -- Exit insert mode with C-c
vim.keymap.set("n", "<C-f>", "<cmd>silent !tmux display-popup -E \"tmuxss -i\"<CR>") -- open tmuxss switcher
@@ -12,32 +13,24 @@ vim.keymap.set("n", "<C-q>", "<cmd>copen<CR>");
vim.keymap.set("t", "<Esc>", "<C-\\><C-n>") -- use Esc to escape terminal
vim.keymap.set("n", "<C-u>", "<C-u>zz") -- Move up a page while keeping the cursor centered
vim.keymap.set("n", "<C-d>", "<C-d>zz") -- Move down a page while keeping the cursor centered
-- Buffer
vim.keymap.set("n", "<C-u>", "<C-u>zz") -- Move up a page while keeping the cursor centered
vim.keymap.set("n", "<C-d>", "<C-d>zz") -- Move down a page while keeping the cursor centered
vim.keymap.set("n", "n", "nzzzv") -- Jump to next occurance and center cursor
vim.keymap.set("n", "N", "Nzzzv") -- Jump to previous occurance and center cursor
vim.keymap.set("n", "n", "nzzzv") -- Jump to next occurance and center cursor
vim.keymap.set("n", "N", "Nzzzv") -- Jump to previous occurance and center cursor
vim.keymap.set("n", "<C-A-k>", "<cmd>cprev<CR>zz") -- Previous Quickfixlist entry
vim.keymap.set("n", "<C-A-j>", "<cmd>cnext<CR>zz") -- Next Quickfixlist entry
-- Quickfixlist
vim.keymap.set("n", "<C-A-k>", "<cmd>cprev<CR>zz") -- Previous Quickfixlist entry
vim.keymap.set("n", "<C-A-j>", "<cmd>cnext<CR>zz") -- Next Quickfixlist entry
vim.keymap.set("n", "<C-M>", "<cmd>tabnext +<CR>") -- Next tab
vim.keymap.set("n", "<C-N>", "<cmd>tabnext -<CR>") -- Previous Tab
vim.keymap.set("n", "<C-t>", "<cmd>tabnew<CR>") -- Create new Tab
vim.keymap.set("n", "<C-w><C-t>", "<cmd>tabclose<CR>") -- Close the current Tab
-- Text editing
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv") -- Move selected text up one line
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv") -- Move selected text down one line
vim.keymap.set("n", "J", "mzJ`z") -- Remove newline characte on current line
vim.keymap.set("n", "<leader>c", ":w<CR>:!cargo<Space>run<CR>") -- Quick Cargo run
vim.keymap.set("n", "<leader>f", function()
vim.lsp.buf.format()
end)
-- Tabs
vim.keymap.set("n", "<C-M>", "<cmd>tabnext +<CR>") -- Next tab
vim.keymap.set("n", "<C-N>", "<cmd>tabnext -<CR>") -- Previous Tab
vim.keymap.set("n", "<C-t>", "<cmd>tabnew<CR>") -- Create new Tab
vim.keymap.set("n", "<C-w><C-t>", "<cmd>tabclose<CR>") -- Close the current Tab
-- Disable mouse
-- fuck this thing
for _, mode in ipairs({ "n", "v", "i" }) do
vim.keymap.set(mode, "<RightMouse>", function() end)
@@ -46,6 +39,18 @@ for _, mode in ipairs({ "n", "v", "i" }) do
vim.keymap.set(mode, "<4-RightMouse>", function() end)
end
------------------
-- Text editing --
------------------
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv") -- Move selected text up one line
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv") -- Move selected text down one line
vim.keymap.set("n", "J", "mzJ`z") -- Remove newline characte on current line
vim.keymap.set("n", "<leader>f", function() -- Format buffer
vim.lsp.buf.format()
end)
-- Goated: Edit the word under the cursor using a substitute
vim.keymap.set("n", "<leader>s", ":%s/\\<<C-r><C-w>\\>/<C-r><C-w>/gI<Left><Left><Left>")
@@ -57,12 +62,14 @@ vim.keymap.set("n", "<leader>Y", "\"+Y")
-- Delete to void register (no clipboard)
vim.keymap.set("v", "<leader>d", "\"_d")
vim.keymap.set("v", "<leader>dd", "\"_d")
-- currently conflict with searches
-- vim.keymap.set("x", "<leader>P", "\"_dP") -- Paste before without moving selection into the yank register
-- vim.keymap.set("x", "<leader>p", "\"_dp") -- Paste after without moving selection into the yank register
-- currently conflicting with searches
vim.keymap.set("x", "<leader>P", "\"_dP") -- Paste before without moving selection into the yank register
vim.keymap.set("x", "<leader>p", "\"_dp") -- Paste after without moving selection into the yank register
-- Macros
vim.keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true })
------------
-- Macros --
------------
vim.keymap.set("n", "<leader>c", ":w<CR>:!cargo<Space>run<CR>") -- Quick Cargo run
-- format a markdown table inside visual selection
vim.api.nvim_create_user_command("Mdtf", function(opts)
@@ -72,11 +79,16 @@ end, {
})
vim.keymap.set("v", "<leader>mt", ":!column -t -s '|' -o '|'<CR>", { desc = "Format markdown table" })
-- Scripting
vim.keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true }) -- Make the current file executable
-- Lua editing
vim.keymap.set("n", "<space><space>l", "<cmd>source %<CR>") -- source the current buffer
vim.keymap.set("n", "<space>l", ":.lua<CR>") -- source the current line
vim.keymap.set("v", "<space>l", ":lua<CR>") -- source the visual selection
-- Swap all occurances of two sequences with each other inside a file
-- This may be a bit buggy still
local function swap_words()
local start = vim.fn.getpos("'<")[2]
local finish = vim.fn.getpos("'>")[2]