summaryrefslogtreecommitdiff
path: root/nvim/init.lua
blob: 40f43ea8996dd4931b2558b1ef67c48ccf6923df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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]])

vim.keymap.set('n', '<leader>c', '<C-w>c', { noremap = true, silent = true, desc = 'Close window' })
vim.keymap.set('n', '<leader>o', '<C-w>o', { noremap = true, silent = true, desc = 'Close other windows' })
vim.keymap.set('n', '<leader>w', ':w<CR>', { noremap = true, silent = true, desc = 'Write buffer' })

-- z means laZy (plugin manager)
vim.keymap.set('n', '<leader>z', ':Lazy<CR>', { noremap = true, silent = true, desc = 'Open Lazy.nvim' })

-- Fugitive shortcuts
vim.keymap.set('n', '<leader>gd', ':Gvdiffsplit<CR>', { noremap = true, silent = true, desc = 'Open diff with HEAD' })
vim.keymap.set('n', '<leader>g3', ':Gvdiffsplit!<CR>', { noremap = true, silent = true, desc = 'Open diff with previous revision / 3-way conflict diff' })
vim.keymap.set('n', '<leader>gs', ':Git<CR><C-w>o', { noremap = true, silent = true, desc = 'Git status' })
vim.keymap.set('n', '<leader>gb', ':Git blame<CR>', { noremap = true, silent = true, desc = 'Git blame' })
vim.keymap.set('n', '<leader>ge', ':Gedit<CR>', { noremap = true, silent = true, desc = 'Git: return to HEAD file version' })

-- I forgot what it's for :(
vim.diagnostic.config({
  virtual_text = true,
})