local lush = require('lush') local hsl = lush.hsl local colors = { lightgreen = "#A5FF90", orange_peel = "#ff9d00", gold= "#fad000", violet = "#FB94FF", crayola = "#FF628C", amethyst = "#b362ff", white = "#FFFFFF", cyan = "#9EFFFF", space_cadet = "#191830", none = "NONE" } local theme = lush(function(injected_functions) local sym = injected_functions.sym return { ColorColumn {fg = colors.none, bg = colors.gold }, Normal {fg = colors.fg, bg = colors.space_cadet }, Comment {fg = colors.amethyst, bg = colors.none, italic = true}, Constant {fg = colors.gold, bg = colors.none}, Number {fg = colors.crayola, bg = colors.none}, Include {fg = colors.gold, bg = colors.none}, Keyword {fg = colors.orange_peel, bg = colors.none}, Label {fg = colors.orange_peel, bg = colors.none}, Operator {fg = colors.orange_peel, bg = colors.none}, PreProc {fg = colors.cyan, bg = colors.none}, Float {link = "Number"}, Function {fg = colors.gold, bg = colors.none}, Identifier {fg = colors.cyan, bg = colors.none}, Type {fg = colors.gold, bg = colors.none}, String {fg = colors.lightgreen, bg = colors.none}, rustFoldBraces {fg = colors.cyan }, rustStorage { fg = colors.orange_peel }, -- Language specific stuff.. sym"@lsp.typemod.selfKeyword.reference.rust" { fg = colors.violet }, sym"@lsp.typemod.variable.reference.rust" { fg = colors.violet }, -- sym"@lsp.typemod.property.public" { fg = colors.white }, sym"@lsp.type.selfTypeKeyword" { fg = colors.violet }, rustSigil {fg = colors.orange_peel }, rustSelf { fg = colors.violet }, } end) return theme