local M = {} function M.setup() require("base16-colorscheme").setup({ -- Background tones base00 = "{{colors.surface.default.hex}}", -- Default Background base01 = "{{colors.surface_container.default.hex}}", -- Lighter Background (status bars) base02 = "{{colors.surface_container_high.default.hex}}", -- Selection Background base03 = "{{colors.outline.default.hex}}", -- Comments, Invisibles -- Foreground tones base04 = "{{colors.on_surface_variant.default.hex}}", -- Dark Foreground (status bars) base05 = "{{colors.on_surface.default.hex}}", -- Default Foreground base06 = "{{colors.on_surface.default.hex}}", -- Light Foreground base07 = "{{colors.on_background.default.hex}}", -- Lightest Foreground -- Accent colors base08 = "{{colors.error.default.hex}}", -- Variables, XML Tags, Errors base09 = "{{colors.tertiary.default.hex}}", -- Integers, Constants base0A = "{{colors.secondary.default.hex}}", -- Classes, Search Background base0B = "{{colors.primary.default.hex}}", -- Strings, Diff Inserted base0C = "{{colors.tertiary_fixed_dim.default.hex}}", -- Regex, Escape Chars base0D = "{{colors.primary_fixed_dim.default.hex}}", -- Functions, Methods base0E = "{{colors.secondary_fixed_dim.default.hex}}", -- Keywords, Storage base0F = "{{colors.error_container.default.hex}}", -- Deprecated, Embedded Tags }) end -- Register a signal handler for SIGUSR1 (matugen updates) local signal = vim.uv.new_signal() signal:start( "sigusr1", vim.schedule_wrap(function() package.loaded["matugen"] = nil require("matugen").setup() end) ) return M