43 lines
1.6 KiB
Lua
43 lines
1.6 KiB
Lua
-- move lines up & down
|
|
vim.keymap.set('v', 'J', ":m '>+1<CR>gv=gv")
|
|
vim.keymap.set('v', 'K', ":m '<-2<CR>gv=gv")
|
|
|
|
-- move around centered
|
|
vim.keymap.set('n', '<C-d>', '<C-d>zz')
|
|
vim.keymap.set('n', '<C-u>', '<C-u>zz')
|
|
vim.keymap.set('n', 'n', 'nzzzv')
|
|
vim.keymap.set('n', 'N', 'Nzzzv')
|
|
|
|
-- copy & paste
|
|
vim.keymap.set('x', '<leader>p', '"_dP')
|
|
|
|
vim.keymap.set('n', '<leader>y', '"+y')
|
|
vim.keymap.set('v', '<leader>y', '"+y')
|
|
vim.keymap.set('n', '<leader>Y', '"+Y')
|
|
|
|
vim.keymap.set('n', '<leader>d', '"_d')
|
|
vim.keymap.set('v', '<leader>d', '"_d')
|
|
|
|
-- [[ Basic Keymaps ]]
|
|
-- See `:help vim.keymap.set()`
|
|
|
|
-- Clear highlights on search when pressing <Esc> in normal mode
|
|
-- See `:help hlsearch`
|
|
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
|
|
|
|
-- Diagnostic keymaps
|
|
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
|
|
|
|
-- 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' })
|
|
|
|
-- buffer management
|
|
vim.keymap.set('n', '<leader>cc', ':bp<bar>sp<bar>bn<bar>bd<CR>', { desc = '[C]lose [c]urrent buffer' })
|
|
vim.keymap.set('n', '<leader>co', ':wa<bar>%bd<bar>e#<bar>bd#<CR>', { desc = '[C]lose [o]ther buffers' })
|