setup-cockpit/roles/neovim/files/lua/remaps.lua

32 lines
1.1 KiB
Lua

-- REMAPS
vim.g.mapleader = " "
-- jk is escape
vim.keymap.set('i', 'jk', '<Esc>', { remap = false })
-- F2 to save file
vim.keymap.set('n', '<F2>', '<cmd>w<CR>', { remap = true })
vim.keymap.set('i', '<F2>', '<Esc><cmd>w<CR>i', { remap = true })
-- global copy/paste
vim.keymap.set('n', '<leader>y', '"*yy', { remap = true })
vim.keymap.set('n', '<leader>p', '"*p', { remap = true })
-- run make
vim.keymap.set('n', '<leader>m', '<cmd>w<CR><cmd>!make<CR>', { remap = true })
-- follow file in split window
vim.keymap.set('n', '<leader>gf', '<cmd>split<CR>gf<CR>', { remap = true })
vim.keymap.set('n', '<leader>vgf', '<cmd>vertical split<CR>gf<CR>', { remap = true })
-- open terminal in split window
vim.keymap.set('n', '<leader>t', '<cmd>below 10split<CR><cmd>terminal<CR>i', { remap = true })
vim.keymap.set('t', '<Esc>', '<C-\\><C-n>')
-- move between splits more easily
vim.keymap.set('n', '<C-h>', '<C-w>h', { remap = false })
vim.keymap.set('n', '<C-h>', '<C-w>h', { remap = false })
vim.keymap.set('n', '<C-j>', '<C-w>j', { remap = false })
vim.keymap.set('n', '<C-k>', '<C-w>k', { remap = false })
vim.keymap.set('n', '<C-l>', '<C-w>l', { remap = false })