shades-of-purple-nvim/lua/shades_of_purple/shades_of_purple.lua

56 lines
1.5 KiB
Lua
Raw Normal View History

2024-12-16 19:18:38 +01:00
local lush = require('lush')
local hsl = lush.hsl
local colors = {
lightgreen = "#A5FF90",
orange_peel = "#ff9d00",
gold= "#fad000",
violet = "#FB94FF",
crayola = "#FF628C",
amethyst = "#b362ff",
2024-12-16 19:18:38 +01:00
white = "#FFFFFF",
2024-12-17 18:57:11 +01:00
cyan = "#9EFFFF",
space_cadet = "#191830",
2024-12-16 19:18:38 +01:00
none = "NONE"
}
local theme = lush(function(injected_functions)
local sym = injected_functions.sym
return {
ColorColumn {fg = colors.none, bg = colors.gold },
2024-12-16 19:18:38 +01:00
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},
2024-12-17 18:57:11 +01:00
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},
2024-12-16 19:18:38 +01:00
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 },
2024-12-16 19:18:38 +01:00
}
end)
return theme