summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/config/keymaps.lua
blob: 0d482da8ec91252d35061559770c71c54a1b94c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
localopts = { noremap = true, silent = true }

vim.g.mapleader = " "
vim.g.maplocalleader = " "

vim.keymap.set({"n", "v"}, "y", '"+y', { noremap = true, silent = true })

vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv", { desc = "moves lines down in visual selection" })
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv", { desc = "moves lines up in visual selection" })

vim.keymap.set("n", "<leader>al", "<CMD>term<CR>", { desc = "Open terminal" })

vim.keymap.set("n", "<leader>f", vim.lsp.buf.format)

-- universal clipboard hotkeys (niri sends these synthesized to the focused app)
-- super+c (Ctrl+Insert): copy selection
vim.keymap.set({"n", "v"}, "<C-Insert>", '"+y', { desc = "Copy selection to system clipboard" })
-- super+v (Shift+Insert): paste
vim.keymap.set({"n", "i", "v"}, "<S-Insert>", '"+p', { desc = "Paste from system clipboard" })
-- super+x (Shift+Delete): cut (delete selection into system clipboard)
vim.keymap.set({"v"}, "<S-Delete>", '"+d', { desc = "Cut selection to system clipboard" })