-- Keybinds -- Diagnostics vim.keymap.set("n", "ds", vim.diagnostic.open_float, { desc = "Show diagnostic" }) vim.keymap.set("n", "dd", 'Trouble diagnostics toggle', { desc = "Diagnostics list" }) vim.keymap.set("n", "db", 'Trouble diagnostics toggle filter.buf=0', { desc = "Buffer diagnostics" }) -- Term vim.g.floaterm_keymap_toggle = 'T' -- Tabs vim.keymap.set('n', 'tn', ':tabnew', { silent = true, desc = 'New tab' }) vim.keymap.set('n', 'tp', ':tabnext', { silent = true, desc = 'Next tab' }) vim.keymap.set('n', 'tP', ':tabprev', { silent = true, desc = 'Previous tab' }) -- Telescope vim.keymap.set('n', '?', require('telescope.builtin').oldfiles, { desc = 'Find recently opened files' }) vim.keymap.set('n', 'ff', require('telescope.builtin').find_files, { desc = 'Find files' }) vim.keymap.set('n', 'fg', require('telescope.builtin').live_grep, { desc = 'Find by grep' }) vim.keymap.set('n', 'fb', require('telescope.builtin').buffers, { desc = 'Find buffers' }) vim.keymap.set('n', 'fd', require('telescope.builtin').diagnostics, { desc = 'Find diagnostics' }) vim.keymap.set('n', 'fw', require('telescope.builtin').grep_string, { desc = 'Find word under cursor' }) -- Undotree vim.keymap.set('n', 'u', vim.cmd.UndotreeToggle, { desc = 'Toggle undotree' }) -- Gitsigns local gs = require('gitsigns') vim.keymap.set('n', ']h', gs.next_hunk, { desc = 'Next git hunk' }) vim.keymap.set('n', '[h', gs.prev_hunk, { desc = 'Previous git hunk' }) vim.keymap.set('n', 'gs', gs.stage_hunk, { desc = 'Stage hunk' }) vim.keymap.set('n', 'gr', gs.reset_hunk, { desc = 'Reset hunk' }) vim.keymap.set('n', 'gS', gs.stage_buffer, { desc = 'Stage buffer' }) vim.keymap.set('n', 'gR', gs.reset_buffer, { desc = 'Reset buffer' }) vim.keymap.set('n', 'gp', gs.preview_hunk, { desc = 'Preview hunk' }) vim.keymap.set('n', 'gb', gs.blame_line, { desc = 'Blame line' }) -- Todo comments vim.keymap.set('n', ']t', function() require('todo-comments').jump_next() end, { desc = 'Next todo comment' }) vim.keymap.set('n', '[t', function() require('todo-comments').jump_prev() end, { desc = 'Previous todo comment' }) vim.keymap.set('n', 'ft', 'TodoTelescope', { desc = 'Find TODOs' }) -- LSP vim.keymap.set('n', 'lr', vim.lsp.buf.rename, { desc = 'Rename' }) vim.keymap.set('n', 'la', vim.lsp.buf.code_action, { desc = 'Code action' }) vim.keymap.set('n', 'lf', function() vim.lsp.buf.format({ async = false }) end, { desc = 'Format' })