require("config.lazy") 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]]) -- easier window navigation vim.keymap.set('n', '', 'h', { noremap = true, silent = true }) vim.keymap.set('n', '', 'j', { noremap = true, silent = true }) vim.keymap.set('n', '', 'k', { noremap = true, silent = true }) vim.keymap.set('n', '', 'l', { noremap = true, silent = true }) -- by default clears search highlight, so we remap it vim.keymap.set('n', '', ':nohl', { noremap = true, silent = true }) -- quick window close vim.keymap.set('n', '', 'c', { noremap = true, silent = true }) -- quick file write vim.keymap.set('n', 'w', ':w', { noremap = true, silent = true }) -- LSP binds vim.keymap.set('n', 'gl', vim.diagnostic.open_float, { noremap = true, silent = true }) vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { noremap = true, silent = true }) vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { noremap = true, silent = true }) -- la - for LAzy (plugin manager) vim.keymap.set('n', 'la', ':Lazy', { noremap = true, silent = true }) -- Fugitive shortcuts -- opens current file diff as vertical split vim.keymap.set('n', 'gd', ':Gvdiffsplit', { noremap = true, silent = true }) -- opens git fugitive status and make it the only visible window (gs is for Git Status) vim.keymap.set('n', 'gs', ':Gito', { noremap = true, silent = true }) -- opens blame mode. Navigate everywhere with vim.keymap.set('n', 'gb', ':Git blame', { noremap = true, silent = true }) -- from fugitive version of file, takes you back to HEAD vim.keymap.set('n', 'ge', ':Gedit', { noremap = true, silent = true }) vim.diagnostic.config({ virtual_text = true, })