MiniDeps.add({ source = 'https://github.com/ellisonleao/gruvbox.nvim' })
local colour = require('gruvbox')
colour.setup({
	styles = {
		comments = { italic = true }
	},
	overrides = {
		-- Relink some highlight groups
		['@variable.member']       = { link = '@variable' },
		['@variable.parameter']    = { link = '@variable' },
		['@parameter']             = { link = '@variable.parameter' },
		['@property']              = { link = '@variable.member' },
		['@string.special.symbol'] = { link = '@string' },
		['@string.special.path']   = { link = '@string' },
		['@string.special.url']    = { link = '@string' },
	}
})
vim.cmd.colorscheme('gruvbox')
_G.userdat.palette = colour.palette

-- non-essential configuration should be put in here
Autocmd('VimEnter', {
	callback = function()
		-- spell highlight must be grey
		for _, spell in pairs { 'SpellBad', 'SpellCap', 'SpellRare', 'SpellLocal' } do
			vim.api.nvim_set_hl(0, spell,
				{ fg = nil, bg = nil, sp = _G.userdat.palette.gray, undercurl = true })
		end
	end
})
