vim.keymap.set('i', 'jk', '') vim.keymap.set('t', 'jk', [[]]) -- quick write vim.keymap.set('n', ',', 'w', { desc = 'write' }) vim.keymap.set('n', '<', 'noautocmd w', { desc = 'write noautocmd' }) -- quick config vim.keymap.set('n', 'C', 'e $MYVIMRC', { desc = '[C]onfig' }) -- quick source file vim.keymap.set('n', 'x', "source %|echo expand('%') 'sourced'", { desc = 'source buffer' }) vim.keymap.set('v', 'r', [[:lua require('my_module').source_visual_selection()]], { desc = 'source selected', noremap = true, silent = true }) -- git vim.keymap.set('n', 'gg', 'vertical Git', { desc = '[G]oto [G]it' }) -- buffers vim.keymap.set('n', '[b', 'bprev', { desc = 'Previous buffer' }) vim.keymap.set('n', ']b', 'bnext', { desc = 'Next buffer' }) -- yank to system clipboard vim.keymap.set({ 'n', 'v' }, 'y', [["+y]]) vim.keymap.set('n', 'Y', [["+Y]]) vim.keymap.set('n', 'tr', function() vim.treesitter.inspect_tree() end, { desc = 'Open treesitter tree for current buffer' }) vim.keymap.set('n', 'lta', function() local ts_utils = require 'nvim-treesitter.ts_utils' local node = ts_utils.get_node_at_cursor() while node ~= nil and node:parent() ~= nil and node:type() ~= 'arrow_function' do node = node:parent() end if node == nil then return end P(node:type()) end, { desc = 'toggle async sourrounding function' })