require("config.lazy") require("config.lsp") vim.o.background = "dark" vim.o.tabstop = 4 vim.o.shiftwidth = 4 vim.o.ignorecase = true vim.o.number = true vim.o.signcolumn = "yes" vim.cmd([[colorscheme gruvbox]]) vim.keymap.set('n', 'c', 'c', { noremap = true, silent = true, desc = 'Close window' }) vim.keymap.set('n', 'o', 'o', { noremap = true, silent = true, desc = 'Close other windows' }) vim.keymap.set('n', 'w', ':w', { noremap = true, silent = true, desc = 'Write buffer' }) -- z means laZy (plugin manager) vim.keymap.set('n', 'z', ':Lazy', { noremap = true, silent = true, desc = 'Open Lazy.nvim' }) -- LSP binds -- default gd searches only in current buffer as a keyword vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { noremap = true, silent = true, desc = 'Open definition' }) -- Fugitive shortcuts vim.keymap.set('n', 'gd', ':Gvdiffsplit', { noremap = true, silent = true, desc = 'Git diff (unstaged changes)' }) vim.keymap.set('n', 'gD', ':Gvdiffsplit HEAD', { noremap = true, silent = true, desc = 'Git diff (all changes after HEAD)' }) vim.keymap.set('n', 'gs', ':Git', { noremap = true, silent = true, desc = 'Git status' }) vim.keymap.set('n', 'gb', ':Git blame', { noremap = true, silent = true, desc = 'Git blame' }) vim.keymap.set('n', 'gl', ':Git log', { noremap = true, silent = true, desc = 'Git log' }) vim.keymap.set('n', 'gL', ':0Gclog', { noremap = true, silent = true, desc = 'Git log: this file' }) vim.keymap.set('n', 'ge', ':Gedit', { noremap = true, silent = true, desc = 'Git: return to worktree' }) vim.keymap.set('n', 'e', ':lua MiniFiles.open(vim.api.nvim_buf_get_name(0), false)', { noremap = true, silent = true }) vim.keymap.set('n', 'aa', ':argadd:argdedupe', { noremap = true, silent = true, desc = 'Add to args' }) vim.keymap.set('n', 'ad', ':argdelete %', { noremap = true, silent = true, desc = 'Delete from args' }) vim.keymap.set('n', 'lr', ':LspRestart', { noremap = true, silent = true, desc = 'LSP: restart server' }) -- LSP diagnostic info config (erorrs, warnings, etc.) vim.diagnostic.config({ -- use virtual text to show diagnostic messages virtual_text = true, })