local opts = { noremap = true, silent = true } -- Tabs vim.keymap.set('n', '', ':tabnext', opts) vim.keymap.set('n', '', ':tabprevious', opts) -- Split movement vim.keymap.set('n', '', ':wincmd k', opts) vim.keymap.set('n', '', ':wincmd j', opts) vim.keymap.set('n', '', ':wincmd h', opts) vim.keymap.set('n', '', ':wincmd l', opts) vim.keymap.set('n', '', ':wa | wshada') -- Linewrap and jumping vim.keymap.set({ 'n', 'x' }, 'k', 'gk', opts) vim.keymap.set({ 'n', 'x' }, 'j', 'gj', opts) vim.keymap.set({ 'n', 'x' }, '0', 'g0', opts) vim.keymap.set({ 'n', 'x' }, '$', 'g$', opts) vim.keymap.set({ 'n', 'x' }, '', 'gk', opts) vim.keymap.set({ 'n', 'x' }, '', 'gj', opts) vim.keymap.set({ 'n', 'x' }, '', 'g', opts) vim.keymap.set({ 'n', 'x' }, '', 'g', opts) vim.keymap.set('x', '<', '', '>gv') local function hlWord() local current_word = vim.call('expand', '') vim.fn.setreg('/', "\\<" .. current_word .. "\\>") vim.opt.hlsearch = true end -- Highlight word under cursor vim.keymap.set('n', "'", hlWord, { noremap = true, silent = true, desc = 'Higlight word under cursor' }) vim.keymap.set('x', "'", 'y/\\V"N', { noremap = true, silent = true, desc = 'Highlight visual' }) -- Close Buffer vim.keymap.set('n', '', ':bd', { desc = 'Close buffer' }) vim.keymap.set('n', 'x', 'za', { desc = 'Toggle fold' }) vim.keymap.set({'n', 'x'}, 'y', '"+y', { desc='Copy from system clipboard'}) vim.keymap.set({'n', 'x'}, 'Y', '"+yg_', { desc='Copy from system clipboard'}) vim.keymap.set({'n', 'x'}, 'p', '"+p', { desc='Paste from system clipboard'}) vim.keymap.set({'n', 'x'}, 'P', '"+P', { desc='Paste from system clipboard'}) vim.api.nvim_create_user_command('WinFont', 'set guifont=JetBrainsMonoNL\\ NF:h9', {}) vim.api.nvim_create_user_command('LinuxFont', 'set guifont=JetBrainsMono\\ Nerd\\ Font\\ Mono:h7', {})