local M = {} function M.highlight(palette, opts) return { Comment = { fg = palette.medium_gray, style = opts.comments }, Annotation = { fg = palette.white }, Attribute = { fg = palette.white }, Constructor = { fg = palette.white }, Type = { fg = palette.white, style = opts.type }, TypeBuiltin = { fg = palette.white }, Conditional = { fg = palette.gray_blue }, Exception = { fg = palette.red }, Include = { fg = palette.red }, Keyword = { fg = palette.gray_blue, style = opts.keywords }, KeywordFunction = { fg = palette.gray_blue, style = opts.keywords }, Label = { fg = palette.white }, Namespace = { fg = palette.white }, Repeat = { fg = palette.gray_blue }, Constant = { fg = palette.white }, ConstBuiltin = { fg = palette.red }, Float = { fg = palette.red }, Number = { fg = palette.red }, Boolean = { fg = palette.red }, Character = { fg = palette.light_green }, Error = { fg = palette.error_red }, Function = { fg = palette.cyan, style = opts.functions }, FuncBuiltin = { fg = palette.cyan }, Method = { fg = palette.cyan }, ConstMacro = { fg = palette.cyan }, FuncMacro = { fg = palette.cyan }, Variable = { fg = palette.white, style = opts.variables }, VariableBuiltin = { fg = palette.white }, Property = { fg = palette.white }, Operator = { fg = palette.white }, Field = { fg = palette.white }, Parameter = { fg = palette.white }, ParameterReference = { fg = palette.white }, Symbol = { fg = palette.medium_gray }, Text = { fg = palette.fg }, PunctDelimiter = { fg = palette.white }, TagDelimiter = { fg = palette.white }, PunctBracket = { fg = palette.white }, PunctSpecial = { fg = palette.medium_gray }, String = { fg = palette.medium_gray_blue }, StringRegex = { fg = palette.medium_gray_blue }, StringEscape = { fg = palette.medium_gray_blue }, Tag = { fg = palette.pale_purple }, Emphasis = { style = "italic" }, Underline = { style = "underline" }, Title = { fg = palette.medium_gray }, Literal = { fg = palette.medium_gray }, URI = { fg = palette.cyan, style = "underline" }, KeywordOperator = { fg = palette.gray_blue }, Structure = { fg = palette.purple_test }, Strong = { fg = palette.medium_gray }, QueryLinterError = { fg = palette.warning_orange }, } end return M