88 lines
3.8 KiB
Lua
88 lines
3.8 KiB
Lua
local utils = require('utils')
|
|
vim.g.mapleader = ','
|
|
utils.map('n', '<space>', 'nil', { noremap = true, silent = true})
|
|
-- Paste from clipboard
|
|
utils.map('n', '<leader>p', '"+p')
|
|
utils.map('n', '<leader>P', '"+P')
|
|
utils.map('v', '<leader>p', '"+p')
|
|
utils.map('v', '<leader>P', '"+P')
|
|
|
|
-- Yank to clipboard
|
|
utils.map('v', '<leader>y', '"+y')
|
|
utils.map('n', '<leader>Y', '"+yg_')
|
|
utils.map('n', '<leader>y', '"+y')
|
|
utils.map('n', '<leader>yy', '"+yy')
|
|
|
|
-- Tabs
|
|
utils.map('n', '<F2>', ':tabnew .<CR>', { noremap = true, silent = true })
|
|
utils.map('i', '<F2>', '<Esc>:tabnew .<CR>', { noremap = true, silent = true })
|
|
-- utils.map('n', '<S-Right>', ':BufferLineCycleNext<CR>')
|
|
-- utils.map('n', '<S-Left>', ':BufferLineCyclePrev<CR>')
|
|
utils.map('n', '<S-Right>', ':tabnext<CR>', { noremap = true, silent = true })
|
|
utils.map('n', '<S-Left>', ':tabprevious<CR>', { noremap = true, silent = true })
|
|
-- Split movement
|
|
utils.map('n', '<A-Up>', ':wincmd k<CR>', { noremap = true, silent = true })
|
|
utils.map('n', '<A-Down>', ':wincmd j<CR>', { noremap = true, silent = true })
|
|
utils.map('n', '<A-Left>', ':wincmd h<CR>', { noremap = true, silent = true })
|
|
utils.map('n', '<A-Right>', ':wincmd l<CR>', { noremap = true, silent = true })
|
|
-- Open a new vertical split window with Ctrl - F2
|
|
utils.map('n', '<C-F2>', ':vsplit .<CR>', { noremap = true, silent = true })
|
|
utils.map('i', '<C-F2>', '<Esc>:vsplit .<CR>', { noremap = true, silent = true })
|
|
-- Open a new horizontal split window with Shift - F2
|
|
utils.map('n', '<S-F2>', ':split .<CR>', { noremap = true, silent = true })
|
|
utils.map('i', '<S-F2>', '<Esc>:split .<CR>', { noremap = true, silent = true })
|
|
|
|
utils.map('n', '<C-S>', ':wa<CR>')
|
|
|
|
-- Linewrap and jumping
|
|
utils.map('n', 'k', 'gk')
|
|
utils.map('n', 'j', 'gj')
|
|
utils.map('n', '0', 'g0')
|
|
utils.map('n', '$', 'g$')
|
|
utils.map('n', '<Up>', 'gk')
|
|
utils.map('n', '<Down>', 'gj')
|
|
utils.map('n', '<Home>', 'g<Home>')
|
|
utils.map('n', '<End>', 'g<End>')
|
|
utils.map('v', 'k', 'gk')
|
|
utils.map('v', 'j', 'gj')
|
|
utils.map('v', '0', 'g0')
|
|
utils.map('v', '$', 'g$')
|
|
utils.map('v', '<Up>', 'gk')
|
|
utils.map('v', '<Down>', 'gj')
|
|
utils.map('v', '<Home>', 'g<Home>')
|
|
utils.map('v', '<End>', 'g<End>')
|
|
|
|
utils.map('v', '<', '<gv')
|
|
utils.map('v', '>', '>gv')
|
|
|
|
utils.map('n', '<leader>a', '"ayiw')
|
|
|
|
-- Highlight word under cursor
|
|
utils.map('n', 'ü', ":let @/='\\<<C-R>=expand(\"<cword>\")<CR>\\>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
|
utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>") utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
|
|
|
-- Close Buffer
|
|
utils.map('n', '<C-w>', ':bd<CR>')
|
|
|
|
-- <Tab> to navigate the completion menu
|
|
utils.map('i', '<S-Tab>', 'pumvisible() ? "\\<C-p>" : "\\<Tab>"', {expr = true})
|
|
utils.map('i', '<Tab>', 'pumvisible() ? "\\<C-n>" : "\\<Tab>"', {expr = true})
|
|
|
|
-- Telescope
|
|
utils.map('n', '<leader>f', '<cmd>lua require(\'telescope.builtin\').find_files({no_ignore=true})<cr>')
|
|
utils.map('n', '<C-p>', '<cmd>lua require("telescope.builtin").find_files({no_ignore=true})<cr>')
|
|
utils.map('n', '<leader>g', '<cmd>Telescope git_files<cr>')
|
|
utils.map('n', '<leader>o', '<cmd>Telescope oldfiles<cr>')
|
|
utils.map('n', '<leader>h', '<cmd>Telescope command_history<cr>')
|
|
utils.map('v', '<leader>h', '<cmd>Telescope command_history<cr>')
|
|
utils.map('n', '<C-S-p>', '<cmd>Telescope commands<cr>')
|
|
utils.map('n', '<leader>b', '<cmd>Telescope buffers<cr>')
|
|
utils.map('n', '<leader>q', '<cmd>Telescope quickfix<cr>')
|
|
utils.map('n', '<leader>l', '<cmd>Telescope live_grep<cr>')
|
|
utils.map('n', '<c-s-f>', '<cmd>Telescope live_grep<cr>')
|
|
utils.map('n', '<C-y>', '<cmd>Telescope neoclip<cr>')
|
|
utils.map('n', '<leader>j', '<cmd>Telescope jumplist<cr>')
|
|
utils.map('n', '<c-f>', '<cmd>Telescope current_buffer_fuzzy_find<cr>')
|
|
|
|
utils.map('n', '<leader>n', '<cmd>Neogen<cr>', { noremap = true, silent = true })
|