138 lines
4.1 KiB
Lua
138 lines
4.1 KiB
Lua
local lush = require('lush')
|
|
local hsl = lush.hsl
|
|
|
|
---@diagnostic disable: undefined-global
|
|
local theme = lush(function()
|
|
return {
|
|
Normal { bg = hsl(0, 0, 14), fg = hsl(45, 18, 87) },
|
|
CursorLine { bg = hsl(0, 0, 3) },
|
|
Comment { fg = hsl(47, 6, 57), gui = "italic" },
|
|
Visual { bg = hsl(12, 6, 31) },
|
|
Constant { fg = hsl(6, 70, 66) },
|
|
String { fg = hsl(93, 73, 61), gui = "italic" },
|
|
Keyword { fg = hsl(214, 86, 75) },
|
|
Function { fg = hsl(77, 67, 71) },
|
|
Cursor { bg = hsl(0, 0, 40), fg = CursorLine.bg },
|
|
Error { fg = hsl(0, 100, 50), gui = "italic" },
|
|
WarningMsg { fg = hsl(34, 100, 50), gui = "italic" },
|
|
NonText { fg = hsl(0, 0, 30) },
|
|
Search { bg = hsl(280, 100, 76), fg = CursorLine.bg },
|
|
|
|
ColorColumn { },
|
|
Conceal { },
|
|
lCursor { },
|
|
CursorIM { },
|
|
CursorColumn { },
|
|
Directory { Keyword },
|
|
DiffAdd { },
|
|
DiffChange { },
|
|
DiffDelete { },
|
|
DiffText { },
|
|
EndOfBuffer { NonText },
|
|
TermCursor { },
|
|
TermCursorNC { },
|
|
ErrorMsg { Error },
|
|
VertSplit { fg = CursorLine.bg },
|
|
Folded { },
|
|
FoldColumn { },
|
|
SignColumn { CursorLine },
|
|
IncSearch { Search },
|
|
Substitute { },
|
|
LineNr { bg = CursorLine.bg, fg = NonText.fg },
|
|
CursorLineNr { bg = CursorLine.bg },
|
|
MatchParen { gui = "bold" },
|
|
ModeMsg { },
|
|
MsgArea { },
|
|
MsgSeparator { },
|
|
MoreMsg { },
|
|
NormalFloat { },
|
|
NormalNC { },
|
|
Pmenu { bg = CursorLine.bg },
|
|
PmenuSel { bg = Keyword.fg, fg = CursorLine.bg },
|
|
PmenuSbar { CursorLine },
|
|
PmenuThumb { bg = NonText.fg },
|
|
Question { },
|
|
QuickFixLine { },
|
|
SpecialKey { NonText },
|
|
SpellBad { Error },
|
|
SpellCap { WarningMsg },
|
|
SpellLocal { WarningMsg },
|
|
SpellRare { WarningMsg },
|
|
StatusLine { CursorLine },
|
|
StatusLineNC { },
|
|
TabLine { },
|
|
TabLineFill { },
|
|
TabLineSel { },
|
|
Title { },
|
|
VisualNOS { },
|
|
Whitespace { NonText },
|
|
WildMenu { },
|
|
|
|
Character { String },
|
|
Number { Constant },
|
|
Boolean { Constant },
|
|
Float { Constant },
|
|
|
|
Identifier { },
|
|
Type { Function },
|
|
|
|
Statement { Keyword },
|
|
Conditional { Keyword },
|
|
Repeat { Keyword },
|
|
Label { Keyword },
|
|
Operator { },
|
|
Exception { Keyword },
|
|
|
|
PreProc { Constant },
|
|
Include { Constant },
|
|
Define { Constant },
|
|
Macro { Constant },
|
|
PreCondit { Constant },
|
|
|
|
StorageClass { Keyword },
|
|
Structure { Keyword },
|
|
Typedef { },
|
|
|
|
Special { },
|
|
SpecialChar { },
|
|
Tag { },
|
|
Delimiter { },
|
|
SpecialComment { },
|
|
Debug { },
|
|
|
|
Underlined { gui = "underline" },
|
|
Bold { gui = "bold" },
|
|
Italic { gui = "italic" },
|
|
|
|
-- ("Ignore", below, may be invisible...)
|
|
-- Ignore { },
|
|
|
|
Todo { fg = Search.bg, gui = "bold" },
|
|
|
|
LspDiagnosticsDefaultError { Error, bg = CursorLine.bg },
|
|
LspDiagnosticsDefaultWarning { WarningMsg, bg = CursorLine.bg },
|
|
LspDiagnosticsDefaultInformation { bg = CursorLine.bg },
|
|
LspDiagnosticsDefaultHint { WarningMsg, bg = CursorLine.bg },
|
|
|
|
LspDiagnosticsSignError { fg = Error.fg, bg = CursorLine.bg },
|
|
LspDiagnosticsSignWarning { fg = WarningMsg.fg, bg = CursorLine.bg },
|
|
LspDiagnosticsSignInformation { bg = CursorLine.bg },
|
|
LspDiagnosticsSignHint { fg = WarningMsg.fg, bg = CursorLine.bg },
|
|
|
|
-- gitsigns
|
|
GitSignsAdd { bg = SignColumn.bg, fg = String.fg },
|
|
GitSignsChange { bg = SignColumn.bg, fg = Keyword.fg },
|
|
GitSignsDelete { bg = SignColumn.bg, fg = Constant.fg },
|
|
|
|
-- language specific stuff
|
|
csGeneric { Function },
|
|
yamlBlockMappingKey { Function },
|
|
sqlKeyword { Keyword },
|
|
}
|
|
end)
|
|
|
|
-- return our parsed theme for extension or use else where.
|
|
return theme
|
|
|
|
-- vi:nowrap
|