diff options
| author | christianchiarulli <[email protected]> | 2021-07-05 16:26:31 -0400 | 
|---|---|---|
| committer | christianchiarulli <[email protected]> | 2021-07-05 16:26:31 -0400 | 
| commit | 20485971641a9d916640ccad05586a641c984ed6 (patch) | |
| tree | d397a3a9adba502b4c26b802d897b8310972f76f /lua/lv-themes/spacegray.lua | |
| parent | 56e82dac4497293541099185441485dd31e98dc8 (diff) | |
| parent | a469c710bfc01f291df68dba40464caaa2b496da (diff) | |
Merge branch 'master' of github.com:ChristianChiarulli/LunarVim into stable
Diffstat (limited to 'lua/lv-themes/spacegray.lua')
| -rw-r--r-- | lua/lv-themes/spacegray.lua | 719 | 
1 files changed, 364 insertions, 355 deletions
| diff --git a/lua/lv-themes/spacegray.lua b/lua/lv-themes/spacegray.lua index d21c0037..0bb695c0 100644 --- a/lua/lv-themes/spacegray.lua +++ b/lua/lv-themes/spacegray.lua @@ -1,361 +1,370 @@ -local lush = require('lush') +local lush = require "lush"  local hsl = lush.hsl  local theme = lush(function() -    local c = { -        bg = hsl("#212121"), -        bg1 = hsl("#2a2a2a"), -        -- bg2 = hsl("#3a3a3a"), -        bg2 = hsl("#383d45"), - -        white = hsl("#c8c9d1"), - -        gray = hsl("#858585"), -        light_gray = hsl("#c8c9c1"), - -        error_red = hsl("#F44747"), -        warning_orange = hsl("#ff8800"), -        info_yellow = hsl("#ffcc66"), -        hint_blue = hsl("#4fc1ff"), - -        red = hsl("#b04b57"), - -        blue = hsl("#5486c0"), -        gray_blue = hsl("#66899d"), - -        -- yellow = hsl("#ffcb6b"), -        yellow = hsl("#eeba5a"), - -        -- orange = hsl("#c98a75"), -        orange = hsl("#c6735a"), - -        green = hsl("#87b379"), -        light_green = hsl("#b2d77c"), - -        -- aqua = hsl("#46b1d0"), -        aqua = hsl("#65a7c5"), - -        purple = hsl("#bf83c1"), -        pale_purple = hsl("#7199ee"), - -        sign_add  = hsl("#587C0C"), -        sign_change = hsl("#0C7D9D"),   -        sign_delete = hsl("#94151B"), - -        test = hsl("#ff00ff") -    } -    return { -        Normal {bg = c.bg, fg = c.white, gui = "NONE"}, -- used for the columns set with 'colorcolumn' -        SignColumn {Normal}, -        ModeMsg {Normal},  -        MsgArea {Normal},  -        MsgSeparator {Normal}, -        SpellBad {bg = "NONE", fg = c.white, gui = "underline", sp = c.red}, -        SpellCap {bg = "NONE", fg = c.white, gui = "underline", sp = c.yellow}, -        SpellLocal {bg = "NONE", fg = c.white, gui = "underline", sp = c.green}, -        SpellRare {bg = "NONE", fg = c.white, gui = "underline", sp = c.blue}, -        NormalNC {Normal},  -        Pmenu {bg = c.bg2, fg = c.white, gui = "NONE"}, -        PmenuSel {bg = c.gray_blue, fg = c.bg1.da(5), gui = "NONE"}, -        WildMenu {PmenuSel}, -- Non Defaults -        CursorLineNr {bg = "NONE", fg = c.light_gray, gui = "bold"}, -        Comment {bg = "NONE", fg = c.gray, gui = "italic"}, -- any comment -        Folded {bg = c.bg1, fg = c.gray, gui = "NONE"}, -        FoldColumn {Normal, fg = c.gray, gui = "NONE"},  -        LineNr {bg = "NONE", fg = c.gray, gui = "NONE"}, -        FloatBorder {bg = c.bg1, fg = c.gray, gui = "NONE"}, -        Whitespace {bg = "NONE", fg = c.gray.da(35), gui = "NONE"}, -        VertSplit {bg = "NONE", fg = c.bg2, gui = "NONE"}, -        CursorLine {bg = c.bg1, fg = "NONE", gui = "NONE"}, -        CursorColumn {CursorLine},  -        ColorColumn {CursorLine}, -        NormalFloat {bg = c.bg2.da(30), fg = "NONE", gui = "NONE"}, -        Visual {bg = c.bg2.da(25), fg = "NONE", gui = "NONE"}, -        VisualNOS {Visual}, WarningMsg {bg = "NONE", fg = c.red, gui = "NONE"}, -        DiffText {bg = "NONE", fg = "NONE", gui = "NONE"}, -        DiffAdd {bg = c.sign_add, fg = "NONE", gui = "NONE"}, -        DiffChange {bg = c.sign_change, fg = "NONE", gui = "NONE"}, -        DiffDelete {bg = c.sign_delete, fg = "NONE", gui = "NONE"}, -        QuickFixLine {CursorLine}, -        PmenuSbar {bg = c.bg2.li(15), fg = "NONE", gui = "NONE"}, -        PmenuThumb {bg = c.white, fg = "NONE", gui = "NONE"}, -        MatchParen {CursorLine, fg = "NONE", gui = "NONE"}, -        Cursor {fg = "NONE", bg = "NONE", gui = "reverse"},  -        lCursor {Cursor}, -        CursorIM {Cursor},  -        TermCursor {Cursor}, TermCursorNC {Cursor}, -        Conceal {bg = "NONE", fg = c.blue, gui = "NONE"}, -        Directory {bg = "NONE", fg = c.blue, gui = "NONE"}, -        SpecialKey {bg = "NONE", fg = c.blue, gui = "bold"}, -        Title {bg = "NONE", fg = c.blue, gui = "bold"}, -        ErrorMsg {bg = "NONE", fg = c.error_red, gui = "NONE"}, -        Search {bg = c.gray_blue, fg = c.white},  -        IncSearch {Search}, -        Substitute {Search},  -        MoreMsg {bg = "NONE", fg = c.aqua, gui = "NONE"},  -        Question {MoreMsg},  -        EndOfBuffer {bg = "NONE", fg = c.bg, gui = "NONE"}, -        NonText {EndOfBuffer}, - -        String {fg = c.green},  -        Character {fg = c.light_green}, -        Constant {fg = c.orange},  -        Number {fg = c.red},  -        Boolean {fg = c.red},  -        Float {fg = c.red}, - -        Identifier {fg = c.white},  -        Function {fg = c.yellow}, -        Operator {fg = c.gray_blue}, - -        Type {fg = c.purple}, -        StorageClass {Type},  -        Structure {Type},  -        Typedef {Type}, - -        Keyword {fg = c.blue},  -        Statement {Keyword },  -        Conditional {Keyword}, -        Repeat {Keyword},  -        Label {Keyword},  -        Exception {Keyword}, - -        Include {Keyword},  -        PreProc {fg = c.aqua},  -        Define {PreProc}, -        Macro {PreProc},  -        PreCondit {PreProc},  - - -        Special {fg = c.orange},  -        SpecialChar {Character},  -        Tag {fg = c.pale_purple}, -        Debug {fg = c.red},  -        Delimiter {fg = c.white.da(25)},  -        SpecialComment {fg = c.gray}, -        Underlined {fg = "NONE", gui = "underline"}, -        Bold {fg = "NONE", gui = "bold"},  -        Italic {fg = "NONE", gui = "italic"}, - -        -- Todo -        -- ("Ignore", below, may be invisible...) -        Ignore {fg = c.white},  -        Todo {bg = "NONE", fg = c.red, gui = "bold"}, -        Error {fg = c.error_red}, - -        -- Treesitter -        TSComment {Comment}, -- comment blocks. -        luaTSConstructor {bg = "NONE", fg = c.white.da(25)}, -- override Lua curly braces -        TSAnnotation {bg = "NONE", fg = c.aqua}, -- For C++/Dart attributes, annotations that can be attached to the code to denote some kind of meta information. -        TSAttribute {bg = "NONE", fg = c.aqua}, -- (unstable) TODO: docs -        TSConstructor {Type}, -- For constructor calls and definitions: `{ }` in Lua, and Java constructors. -        TSType {Type}, -- types. -        TSTypeBuiltin {Type}, -- builtin types. -        TSConditional {Conditional}, -- keywords related to conditionnals. -        TSException {Exception}, -- exception related keywords. -        TSInclude {Include}, -- includes: `#include` in C, `use` or `extern crate` in Rust, or `require` in Lua. -        TSKeyword {Keyword}, -- keywords that don't fall in previous categories. -        TSKeywordFunction {Keyword}, -- keywords used to define a fuction. -        TSLabel {Label}, -- labels: `label:` in C and `:label:` in Lua. -        TSNamespace {bg = "NONE", fg = c.blue}, -- For identifiers referring to modules and namespaces. -        TSRepeat {Repeat}, -- keywords related to loops. -        TSConstant {Constant}, -- constants -        TSConstBuiltin {Constant}, -- constant that are built in the language: `nil` in Lua. -        TSFloat {Float}, -- floats. -        TSNumber {Number}, -- all numbers -        TSBoolean {Boolean}, -- booleans. -        TSCharacter {Character}, -- characters. -        TSError {bg = "NONE", fg = "NONE"}, -- For syntax/parser errors. -        TSFunction {Function}, -- function (calls and definitions). -        TSFuncBuiltin {Function}, -- builtin functions: `table.insert` in Lua. -        TSMethod {Function}, -- method calls and definitions. -        TSConstMacro {Macro}, -- constants that are defined by macros: `NULL` in C. -        TSFuncMacro {Macro}, -- macro defined fuctions (calls and definitions): each `macro_rules` in Rust. -        TSVariableBuiltin {bg = "NONE", fg = c.aqua}, -- Variable names that are defined by the languages, like `this` or `self`. -        TSProperty {fg = c.aqua},  -        TSOperator {Operator}, -- any operator: `+`, but also `->` and `*` in C. -        TSVariable {bg = "NONE", fg = c.white}, -- Any variable name that does not have another highlight. -        TSField {bg = "NONE", fg = c.white}, -- For fields. -        TSParameter {TSField}, -- parameters of a function. -        TSParameterReference {TSParameter}, -- references to parameters of a function. -        TSSymbol {Identifier}, -- identifiers referring to symbols or atoms. -        TSText {fg = c.white}, -- strings considered text in a markup language. -        TSPunctDelimiter {Delimiter}, -- delimiters ie: `.` -        TSTagDelimiter {Delimiter}, -- Tag delimiter like `<` `>` `/` -        TSPunctBracket {Delimiter}, -- brackets and parens. -        TSPunctSpecial {Delimiter}, -- special punctutation that does not fall in the catagories before. -        TSString {String}, -- strings. -        TSStringRegex {TSString}, -- regexes. -        TSStringEscape {Character}, -- escape characters within a string. -        TSWarning {Todo}, -- Variable names that are defined by the languages, like `this` or `self`. -        TSTag {Tag}, -- Tags like html tag names. -        TSEmphasis {gui = "italic"}, -- text to be represented with emphasis. -        TSUnderline {gui = "underline"}, -- text to be represented with an underline. -        TSStrike {gui = "strikethrough"}, -- strikethrough text. -        TSTitle {Title}, -- Text that is part of a title. -        TSLiteral {String}, -- Literal text. -        TSURI {fg = c.aqua}, -- Any URI like a link or email. -        -- TSNone                { },    -- TODO: docs - -        -- These groups are for the native LSP client. Some other LSP clients may -        -- use these groups, or use their own. Consult your LSP client's -        -- documentation. - -        LspDiagnosticsDefaultError {bg = "NONE", fg = c.error_red, gui = "NONE"}, -        LspDiagnosticsDefaultWarning {bg = "NONE", fg = c.warning_orange, gui = "NONE"}, -        LspDiagnosticsDefaultInformation {bg = "NONE", fg = c.info_yellow, gui = "NONE"}, -        LspDiagnosticsDefaultHint {bg = "NONE", fg = c.hint_blue, gui = "NONE"}, - -        LspDiagnosticsVirtualTextError {LspDiagnosticsDefaultError}, -        LspDiagnosticsVirtualTextWarning {LspDiagnosticsDefaultWarning}, -        LspDiagnosticsVirtualTextInformation {LspDiagnosticsDefaultInformation}, -        LspDiagnosticsVirtualTextHint {LspDiagnosticsDefaultHint}, -         -        LspDiagnosticsFloatingError {fg = c.error_red, gui = "NONE"}, -        LspDiagnosticsFloatingWarning {fg = c.warning_orange, gui = "NONE"}, -        LspDiagnosticsFloatingInformation {fg = c.info_yellow, gui = "NONE"}, -        LspDiagnosticsFloatingHint {fg = c.hint_blue, gui = "NONE"}, - -        LspDiagnosticsSignError {fg = c.error_red, gui = "NONE"}, -        LspDiagnosticsSignWarning {fg = c.warning_orange, gui = "NONE"}, -        LspDiagnosticsSignInformation {fg = c.info_yellow, gui = "NONE"}, -        LspDiagnosticsSignHint {fg = c.hint_blue, gui = "NONE"}, -- Tree-Sitter - -        LspDiagnosticsError {LspDiagnosticsSignError}, -        LspDiagnosticsWarning {LspDiagnosticsSignWarning}, -        LspDiagnosticsInformation {LspDiagnosticsSignInformation}, -        LspDiagnosticsHint {LspDiagnosticsSignHint}, - -        -- LspReferenceText {bg = c.bg1, fg = "NONE", gui = "underline"}, -        -- LspReferenceRead {bg = c.bg1, fg = "NONE", gui = "underline"}, -        -- LspReferenceWrite {bg = c.bg1, fg = "NONE", gui = "underline"}, - -        LspDiagnosticsUnderlineError {fg = "NONE", gui = "underline", sp = c.red}, -        LspDiagnosticsUnderlineWarning {fg = "NONE", gui = "underline", sp = c.yellow},  -        LspDiagnosticsUnderlineInformation {fg = "NONE", gui = "underline", sp = c.blue}, -        LspDiagnosticsUnderlineHint {fg = "NONE", gui = "underline", sp = c.green},  - -        -- gitsigns.nvim -        SignAdd {fg = c.sign_add},  -        SignChange {fg = c.sign_change},  -        SignDelete {fg = c.sign_delete}, -- Any URI like a link or email. -        GitSignsAdd  {fg = c.sign_add}, -        GitSignsChange { fg = c.sign_change}, -        GitSignsDelete  {fg = c.sign_delete}, - -        -- telescope.nvim -        TelescopeSelection {bg = "NONE", fg = c.aqua}, -        TelescopeMatching {bg = "NONE", fg = c.red, gui = "bold"}, -        TelescopeBorder {bg = c.bg1, fg = c.gray}, -- nvim-tree.lua - -        -- Nvimtree -        NvimTreeFolderIcon {fg = c.blue},  -        NvimTreeIndentMarker {fg = c.gray}, -        NvimTreeNormal {fg = c.white.da(10), bg = c.bg1}, -        NvimTreeFolderName {fg = c.blue}, -        NvimTreeOpenedFolderName {fg = c.aqua.da(10), gui = "italic"}, -        NvimTreeOpenedFile {NvimTreeOpenedFolderName}, -        NvimTreeRootFolder {fg = c.blue.da(20)},  -        NvimTreeExecFile {fg = c.green}, -        NvimTreeImageFile {fg = c.purple},  -        NvimTreeSpecialFile {fg = c.aqua}, - -        NvimTreeGitStaged {fg = c.sign_add},  -        NvimTreeGitNew {fg = c.sign_add},  -        NvimTreeGitDirty {fg = c.sign_add}, -        NvimTreeGitRenamed {fg = c.sign_change}, -        NvimTreeGitMerge {fg = c.sign_change}, -        NvimTreeGitDelete {fg = c.sign_delete}, -        NvimTreeVertSplit {fg = c.bg1, bg = c.bg1}, - -        -- BarBar -        TabLine {bg = c.bg1, fg = c.white, gui = "NONE"}, -        TabLineFill {bg = c.bg1, fg = c.white, gui = "NONE"}, -        TabLineSel {bg = c.blue, fg = c.bg1, gui = "NONE"}, - -        BufferCurrent {fg = c.fg, bg = c.bg}, -        BufferCurrentIndex {fg = c.aqua, bg = c.bg}, -        BufferCurrentMod {fg = c.info_yellow, bg = c.bg}, -        BufferCurrentSign {fg = c.aqua, bg = c.bg}, -        BufferCurrentTarget {fg = c.red, bg = c.bg, gui = "bold"}, - -        BufferVisible {fg = c.fg, bg = c.bg}, -        BufferVisibleIndex {fg = c.fg, bg = c.bg}, -        BufferVisibleMod {fg = c.info_yellow, bg = c.bg}, -        BufferVisibleSign {fg = c.info_yellow, bg = c.bg}, -        BufferVisibleTarget {fg = c.red, bg = c.bg, gui = "bold"}, - -        BufferInactive {fg = c.gray, bg = c.bg1}, -        BufferInactiveIndex {fg = c.gray, bg = c.bg1}, -        BufferInactiveMod {fg = c.info_yellow, bg = c.bg1}, -        BufferInactiveSign {fg = c.gray, bg = c.bg1}, -        BufferInactiveTarget {fg = c.red, bg = c.bg1}, - -        -- some fix for html related stuff -        htmlH1 {Title}, -- markdown stuff -        mkdLink {fg = c.aqua, gui = "underline"}, -        mkdLineBreak {bg = "NONE", fg = "NONE", gui = "NONE"}, -        mkdHeading {fg = c.white},  -        mkdInlineURL {mkdLink}, -        mkdUnderline {fg = c.gray},  -        markdownUrl {mkdLink}, -        markdownCode {fg = c.orange, bg = "NONE"}, -        markdownLinkTextDelimiter {Delimiter}, -        markdownLinkDelimiter {Delimiter},  -        markdownIdDelimiter {Delimiter}, -        markdownLinkText {fg = c.aqua}, -        markdownItalic {fg = "NONE", gui = "italic"}, -- flutter-tools.nvim -        FlutterWidgetGuides {fg = c.gray.li(10)}, -- statusline - -        StatusLine {bg = c.bg1, fg = c.white}, -        StatusLineNC {bg = c.bg1, fg = c.gray}, -        StatusLineMode {bg = c.gray, fg = c.bg, gui = "bold"}, -        StatusLineDeco {bg = c.bg2, fg = c.yellow}, -        StatusLineLCol {bg = c.bg2, fg = c.white}, -        StatusLineLColAlt {bg = c.bg1, fg = c.white}, -        StatusLineFT {bg = c.bg2, fg = c.white}, -        StatusLineFTAlt {bg = c.bg2, fg = c.white}, -        StatusLineGit {bg = c.gray, fg = c.bg}, -        StatusLineGitAlt {bg = c.gray, fg = c.bg}, -        StatusLineLSP {bg = c.bg1, fg = c.gray.li(25)}, -        StatusLineFileName {bg = c.bg1, fg = c.white, gui = "bold"}, - - -        -- lsp-trouble.nvim -        LspTroubleIndent {fg = c.gray.li(10)}, -- tabline stuff - -        -- tabline diagnostic -        TabLineError {LspDiagnosticsSignError}, -        TabLineWarning {LspDiagnosticsSignWarning}, -        TabLineHint {LspDiagnosticsSignHint}, -        TabLineInformation {LspDiagnosticsSignInformation}, -- which-key.nvim - -        WhichKey {fg = c.purple}, -- nvim-compe -        WhichKeySeperator {fg = c.green}, -- nvim-compe -        WhichKeyGroup {fg = c.blue}, -- nvim-compe -        WhichKeyDesc {fg = c.aqua}, -- nvim-compe -        WhichKeyFloat {bg = c.bg1}, -- nvim-compe - - -        CompeDocumentation {Pmenu, fg = "NONE"}, -- diffview - -        DiffviewNormal {NvimTreeNormal}, -        DiffviewStatusAdded {SignAdd}, -        DiffviewStatusModified {SignChange},  -        DiffviewStatusRenamed {SignChange}, -        DiffviewStatusDeleted {SignDelete}, -        DiffviewFilePanelInsertion {SignAdd}, -        DiffviewFilePanelDeletion {SignDelete}, -        DiffviewVertSplit {fg = c.gray, bg = c.bg}, - -        DashboardHeader {fg = c.blue}, -        DashboardCenter {fg = c.purple}, -        DashboardFooter {fg = c.aqua}, - -        IndentBlanklineContextChar {fg = c.gray.da(20)}, - -        CodiVirtualText {fg = c.hint_blue} -    } +  local c = { +    bg = hsl "#212121", +    bg1 = hsl "#2a2a2a", +    -- bg2 = hsl("#3a3a3a"), +    bg2 = hsl "#383d45", + +    white = hsl "#c8c9d1", + +    gray = hsl "#858585", +    light_gray = hsl "#c8c9c1", + +    error_red = hsl "#F44747", +    warning_orange = hsl "#ff8800", +    info_yellow = hsl "#ffcc66", +    hint_blue = hsl "#4fc1ff", + +    red = hsl "#b04b57", + +    blue = hsl "#5486c0", +    gray_blue = hsl "#66899d", + +    -- yellow = hsl("#ffcb6b"), +    yellow = hsl "#eeba5a", + +    -- orange = hsl("#c98a75"), +    orange = hsl "#c6735a", + +    green = hsl "#87b379", +    light_green = hsl "#b2d77c", + +    -- aqua = hsl("#46b1d0"), +    aqua = hsl "#65a7c5", + +    purple = hsl "#bf83c1", +    pale_purple = hsl "#7199ee", + +    sign_add = hsl "#587C0C", +    sign_change = hsl "#0C7D9D", +    sign_delete = hsl "#94151B", + +    test = hsl "#ff00ff", +  } +  return { +    Normal { bg = c.bg, fg = c.white, gui = "NONE" }, -- used for the columns set with 'colorcolumn' +    SignColumn { Normal }, +    ModeMsg { Normal }, +    MsgArea { Normal }, +    MsgSeparator { Normal }, +    SpellBad { bg = "NONE", fg = c.white, gui = "underline", sp = c.red }, +    SpellCap { bg = "NONE", fg = c.white, gui = "underline", sp = c.yellow }, +    SpellLocal { bg = "NONE", fg = c.white, gui = "underline", sp = c.green }, +    SpellRare { bg = "NONE", fg = c.white, gui = "underline", sp = c.blue }, +    NormalNC { Normal }, +    Pmenu { bg = c.bg2, fg = c.white, gui = "NONE" }, +    PmenuSel { bg = c.gray_blue, fg = c.bg1.da(5), gui = "NONE" }, +    WildMenu { PmenuSel }, -- Non Defaults +    CursorLineNr { bg = "NONE", fg = c.light_gray, gui = "bold" }, +    Comment { bg = "NONE", fg = c.gray, gui = "italic" }, -- any comment +    Folded { bg = c.bg1, fg = c.gray, gui = "NONE" }, +    FoldColumn { Normal, fg = c.gray, gui = "NONE" }, +    LineNr { bg = "NONE", fg = c.gray, gui = "NONE" }, +    FloatBorder { bg = c.bg1, fg = c.gray, gui = "NONE" }, +    Whitespace { bg = "NONE", fg = c.gray.da(35), gui = "NONE" }, +    VertSplit { bg = "NONE", fg = c.bg2, gui = "NONE" }, +    CursorLine { bg = c.bg1, fg = "NONE", gui = "NONE" }, +    CursorColumn { CursorLine }, +    ColorColumn { CursorLine }, +    NormalFloat { bg = c.bg2.da(30), fg = "NONE", gui = "NONE" }, +    Visual { bg = c.bg2.da(25), fg = "NONE", gui = "NONE" }, +    VisualNOS { Visual }, +    WarningMsg { bg = "NONE", fg = c.red, gui = "NONE" }, +    DiffText { bg = "NONE", fg = "NONE", gui = "NONE" }, +    DiffAdd { bg = c.sign_add, fg = "NONE", gui = "NONE" }, +    DiffChange { bg = c.sign_change, fg = "NONE", gui = "NONE" }, +    DiffDelete { bg = c.sign_delete, fg = "NONE", gui = "NONE" }, +    QuickFixLine { CursorLine }, +    PmenuSbar { bg = c.bg2.li(15), fg = "NONE", gui = "NONE" }, +    PmenuThumb { bg = c.white, fg = "NONE", gui = "NONE" }, +    MatchParen { CursorLine, fg = "NONE", gui = "NONE" }, +    Cursor { fg = "NONE", bg = "NONE", gui = "reverse" }, +    lCursor { Cursor }, +    CursorIM { Cursor }, +    TermCursor { Cursor }, +    TermCursorNC { Cursor }, +    Conceal { bg = "NONE", fg = c.blue, gui = "NONE" }, +    Directory { bg = "NONE", fg = c.blue, gui = "NONE" }, +    SpecialKey { bg = "NONE", fg = c.blue, gui = "bold" }, +    Title { bg = "NONE", fg = c.blue, gui = "bold" }, +    ErrorMsg { bg = "NONE", fg = c.error_red, gui = "NONE" }, +    Search { bg = c.gray_blue, fg = c.white }, +    IncSearch { Search }, +    Substitute { Search }, +    MoreMsg { bg = "NONE", fg = c.aqua, gui = "NONE" }, +    Question { MoreMsg }, +    EndOfBuffer { bg = "NONE", fg = c.bg, gui = "NONE" }, +    NonText { EndOfBuffer }, + +    String { fg = c.green }, +    Character { fg = c.light_green }, +    Constant { fg = c.orange }, +    Number { fg = c.red }, +    Boolean { fg = c.red }, +    Float { fg = c.red }, + +    Identifier { fg = c.white }, +    Function { fg = c.yellow }, +    Operator { fg = c.gray_blue }, + +    Type { fg = c.purple }, +    StorageClass { Type }, +    Structure { Type }, +    Typedef { Type }, + +    Keyword { fg = c.blue }, +    Statement { Keyword }, +    Conditional { Keyword }, +    Repeat { Keyword }, +    Label { Keyword }, +    Exception { Keyword }, + +    Include { Keyword }, +    PreProc { fg = c.aqua }, +    Define { PreProc }, +    Macro { PreProc }, +    PreCondit { PreProc }, + +    Special { fg = c.orange }, +    SpecialChar { Character }, +    Tag { fg = c.pale_purple }, +    Debug { fg = c.red }, +    Delimiter { fg = c.white.da(25) }, +    SpecialComment { fg = c.gray }, +    Underlined { fg = "NONE", gui = "underline" }, +    Bold { fg = "NONE", gui = "bold" }, +    Italic { fg = "NONE", gui = "italic" }, + +    -- Todo +    -- ("Ignore", below, may be invisible...) +    Ignore { fg = c.white }, +    Todo { bg = "NONE", fg = c.red, gui = "bold" }, +    Error { fg = c.error_red }, + +    -- Treesitter +    TSComment { Comment }, -- comment blocks. +    luaTSConstructor { bg = "NONE", fg = c.white.da(25) }, -- override Lua curly braces +    TSAnnotation { bg = "NONE", fg = c.aqua }, -- For C++/Dart attributes, annotations that can be attached to the code to denote some kind of meta information. +    TSAttribute { bg = "NONE", fg = c.aqua }, -- (unstable) TODO: docs +    TSConstructor { Type }, -- For constructor calls and definitions: `{ }` in Lua, and Java constructors. +    TSType { Type }, -- types. +    TSTypeBuiltin { Type }, -- builtin types. +    TSConditional { Conditional }, -- keywords related to conditionnals. +    TSException { Exception }, -- exception related keywords. +    TSInclude { Include }, -- includes: `#include` in C, `use` or `extern crate` in Rust, or `require` in Lua. +    TSKeyword { Keyword }, -- keywords that don't fall in previous categories. +    TSKeywordFunction { Keyword }, -- keywords used to define a fuction. +    TSLabel { Label }, -- labels: `label:` in C and `:label:` in Lua. +    TSNamespace { bg = "NONE", fg = c.blue }, -- For identifiers referring to modules and namespaces. +    TSRepeat { Repeat }, -- keywords related to loops. +    TSConstant { Constant }, -- constants +    TSConstBuiltin { Constant }, -- constant that are built in the language: `nil` in Lua. +    TSFloat { Float }, -- floats. +    TSNumber { Number }, -- all numbers +    TSBoolean { Boolean }, -- booleans. +    TSCharacter { Character }, -- characters. +    TSError { bg = "NONE", fg = "NONE" }, -- For syntax/parser errors. +    TSFunction { Function }, -- function (calls and definitions). +    TSFuncBuiltin { Function }, -- builtin functions: `table.insert` in Lua. +    TSMethod { Function }, -- method calls and definitions. +    TSConstMacro { Macro }, -- constants that are defined by macros: `NULL` in C. +    TSFuncMacro { Macro }, -- macro defined fuctions (calls and definitions): each `macro_rules` in Rust. +    TSVariableBuiltin { bg = "NONE", fg = c.aqua }, -- Variable names that are defined by the languages, like `this` or `self`. +    TSProperty { fg = c.aqua }, +    TSOperator { Operator }, -- any operator: `+`, but also `->` and `*` in C. +    TSVariable { bg = "NONE", fg = c.white }, -- Any variable name that does not have another highlight. +    TSField { bg = "NONE", fg = c.white }, -- For fields. +    TSParameter { TSField }, -- parameters of a function. +    TSParameterReference { TSParameter }, -- references to parameters of a function. +    TSSymbol { Identifier }, -- identifiers referring to symbols or atoms. +    TSText { fg = c.white }, -- strings considered text in a markup language. +    TSPunctDelimiter { Delimiter }, -- delimiters ie: `.` +    TSTagDelimiter { Delimiter }, -- Tag delimiter like `<` `>` `/` +    TSPunctBracket { Delimiter }, -- brackets and parens. +    TSPunctSpecial { Delimiter }, -- special punctutation that does not fall in the catagories before. +    TSString { String }, -- strings. +    TSStringRegex { TSString }, -- regexes. +    TSStringEscape { Character }, -- escape characters within a string. +    TSWarning { Todo }, -- Variable names that are defined by the languages, like `this` or `self`. +    TSTag { Tag }, -- Tags like html tag names. +    TSEmphasis { gui = "italic" }, -- text to be represented with emphasis. +    TSUnderline { gui = "underline" }, -- text to be represented with an underline. +    TSStrike { gui = "strikethrough" }, -- strikethrough text. +    TSTitle { Title }, -- Text that is part of a title. +    TSLiteral { String }, -- Literal text. +    TSURI { fg = c.aqua }, -- Any URI like a link or email. +    -- TSNone                { },    -- TODO: docs + +    -- These groups are for the native LSP client. Some other LSP clients may +    -- use these groups, or use their own. Consult your LSP client's +    -- documentation. + +    LspDiagnosticsDefaultError { bg = "NONE", fg = c.error_red, gui = "NONE" }, +    LspDiagnosticsDefaultWarning { bg = "NONE", fg = c.warning_orange, gui = "NONE" }, +    LspDiagnosticsDefaultInformation { bg = "NONE", fg = c.info_yellow, gui = "NONE" }, +    LspDiagnosticsDefaultHint { bg = "NONE", fg = c.hint_blue, gui = "NONE" }, + +    LspDiagnosticsVirtualTextError { LspDiagnosticsDefaultError }, +    LspDiagnosticsVirtualTextWarning { LspDiagnosticsDefaultWarning }, +    LspDiagnosticsVirtualTextInformation { LspDiagnosticsDefaultInformation }, +    LspDiagnosticsVirtualTextHint { LspDiagnosticsDefaultHint }, + +    LspDiagnosticsFloatingError { fg = c.error_red, gui = "NONE" }, +    LspDiagnosticsFloatingWarning { fg = c.warning_orange, gui = "NONE" }, +    LspDiagnosticsFloatingInformation { fg = c.info_yellow, gui = "NONE" }, +    LspDiagnosticsFloatingHint { fg = c.hint_blue, gui = "NONE" }, + +    LspDiagnosticsSignError { fg = c.error_red, gui = "NONE" }, +    LspDiagnosticsSignWarning { fg = c.warning_orange, gui = "NONE" }, +    LspDiagnosticsSignInformation { fg = c.info_yellow, gui = "NONE" }, +    LspDiagnosticsSignHint { fg = c.hint_blue, gui = "NONE" }, -- Tree-Sitter + +    LspDiagnosticsError { LspDiagnosticsSignError }, +    LspDiagnosticsWarning { LspDiagnosticsSignWarning }, +    LspDiagnosticsInformation { LspDiagnosticsSignInformation }, +    LspDiagnosticsHint { LspDiagnosticsSignHint }, + +    -- LspReferenceText {bg = c.bg1, fg = "NONE", gui = "underline"}, +    -- LspReferenceRead {bg = c.bg1, fg = "NONE", gui = "underline"}, +    -- LspReferenceWrite {bg = c.bg1, fg = "NONE", gui = "underline"}, + +    LspDiagnosticsUnderlineError { fg = "NONE", gui = "underline", sp = c.red }, +    LspDiagnosticsUnderlineWarning { fg = "NONE", gui = "underline", sp = c.yellow }, +    LspDiagnosticsUnderlineInformation { fg = "NONE", gui = "underline", sp = c.blue }, +    LspDiagnosticsUnderlineHint { fg = "NONE", gui = "underline", sp = c.green }, + +    -- gitsigns.nvim +    SignAdd { fg = c.sign_add }, +    SignChange { fg = c.sign_change }, +    SignDelete { fg = c.sign_delete }, -- Any URI like a link or email. +    GitSignsAdd { fg = c.sign_add }, +    GitSignsChange { fg = c.sign_change }, +    GitSignsDelete { fg = c.sign_delete }, + +    -- telescope.nvim +    TelescopeSelection { bg = "NONE", fg = c.aqua }, +    TelescopeMatching { bg = "NONE", fg = c.red, gui = "bold" }, +    TelescopeBorder { bg = c.bg1, fg = c.gray }, -- nvim-tree.lua + +    -- Nvimtree +    NvimTreeFolderIcon { fg = c.blue }, +    NvimTreeIndentMarker { fg = c.gray }, +    NvimTreeNormal { fg = c.white.da(10), bg = c.bg1 }, +    NvimTreeFolderName { fg = c.blue }, +    NvimTreeOpenedFolderName { fg = c.aqua.da(10), gui = "italic" }, +    NvimTreeOpenedFile { NvimTreeOpenedFolderName }, +    NvimTreeRootFolder { fg = c.blue.da(20) }, +    NvimTreeExecFile { fg = c.green }, +    NvimTreeImageFile { fg = c.purple }, +    NvimTreeSpecialFile { fg = c.aqua }, + +    NvimTreeGitStaged { fg = c.sign_add }, +    NvimTreeGitNew { fg = c.sign_add }, +    NvimTreeGitDirty { fg = c.sign_add }, +    NvimTreeGitRenamed { fg = c.sign_change }, +    NvimTreeGitMerge { fg = c.sign_change }, +    NvimTreeGitDelete { fg = c.sign_delete }, +    NvimTreeVertSplit { fg = c.bg1, bg = c.bg1 }, + +    -- BarBar +    TabLine { bg = c.bg1, fg = c.white, gui = "NONE" }, +    TabLineFill { bg = c.bg1, fg = c.white, gui = "NONE" }, +    TabLineSel { bg = c.blue, fg = c.bg1, gui = "NONE" }, + +    BufferCurrent { fg = c.fg, bg = c.bg }, +    BufferCurrentIndex { fg = c.aqua, bg = c.bg }, +    BufferCurrentMod { fg = c.info_yellow, bg = c.bg }, +    BufferCurrentSign { fg = c.aqua, bg = c.bg }, +    BufferCurrentTarget { fg = c.red, bg = c.bg, gui = "bold" }, + +    BufferVisible { fg = c.fg, bg = c.bg }, +    BufferVisibleIndex { fg = c.fg, bg = c.bg }, +    BufferVisibleMod { fg = c.info_yellow, bg = c.bg }, +    BufferVisibleSign { fg = c.info_yellow, bg = c.bg }, +    BufferVisibleTarget { fg = c.red, bg = c.bg, gui = "bold" }, + +    BufferInactive { fg = c.gray, bg = c.bg1 }, +    BufferInactiveIndex { fg = c.gray, bg = c.bg1 }, +    BufferInactiveMod { fg = c.info_yellow, bg = c.bg1 }, +    BufferInactiveSign { fg = c.gray, bg = c.bg1 }, +    BufferInactiveTarget { fg = c.red, bg = c.bg1 }, + +    -- some fix for html related stuff +    htmlH1 { Title }, -- markdown stuff +    mkdLink { fg = c.aqua, gui = "underline" }, +    mkdLineBreak { bg = "NONE", fg = "NONE", gui = "NONE" }, +    mkdHeading { fg = c.white }, +    mkdInlineURL { mkdLink }, +    mkdUnderline { fg = c.gray }, +    markdownUrl { mkdLink }, +    markdownCode { fg = c.orange, bg = "NONE" }, +    markdownLinkTextDelimiter { Delimiter }, +    markdownLinkDelimiter { Delimiter }, +    markdownIdDelimiter { Delimiter }, +    markdownLinkText { fg = c.aqua }, +    markdownItalic { fg = "NONE", gui = "italic" }, -- flutter-tools.nvim +    FlutterWidgetGuides { fg = c.gray.li(10) }, -- statusline + +    StatusLine { bg = c.bg1, fg = c.white }, -- status line of current window +    StatusLineNC { bg = c.bg1, fg = c.light_gray }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window. +    StatusLineSeparator { bg = c.bg1, fg = "NONE" }, +    StatusLineGit { bg = c.bg1, fg = c.orange }, +    StatusLineGitAdd { bg = c.bg1, fg = c.green }, +    StatusLineGitChange { bg = c.bg1, fg = c.blue }, +    StatusLineGitDelete { bg = c.bg1, fg = c.red }, +    StatusLineLspDiagnosticsError { bg = c.bg1, fg = c.error_red, gui = "NONE" }, +    StatusLineLspDiagnosticsWarning { bg = c.bg1, fg = c.warning_orange, gui = "NONE" }, +    StatusLineLspDiagnosticsInformation { bg = c.bg1, fg = c.info_yellow, gui = "NONE" }, +    StatusLineLspDiagnosticsHint { bg = c.bg1, fg = c.hint_blue, gui = "NONE" }, +    StatusLineTreeSitter { bg = c.bg1, fg = c.green }, + +    -- StatusLineMode {bg = c.gray, fg = c.bg, gui = "bold"}, +    -- StatusLineDeco {bg = c.bg2, fg = c.yellow}, +    -- StatusLineLCol {bg = c.bg2, fg = c.white}, +    -- StatusLineLColAlt {bg = c.bg1, fg = c.white}, +    -- StatusLineFT {bg = c.bg2, fg = c.white}, +    -- StatusLineFTAlt {bg = c.bg2, fg = c.white}, +    -- StatusLineGitAlt {bg = c.gray, fg = c.bg}, +    -- StatusLineLSP {bg = c.bg1, fg = c.gray.li(25)}, +    -- StatusLineFileName {bg = c.bg1, fg = c.white, gui = "bold"}, + +    -- lsp-trouble.nvim +    LspTroubleIndent { fg = c.gray.li(10) }, -- tabline stuff + +    -- tabline diagnostic +    TabLineError { LspDiagnosticsSignError }, +    TabLineWarning { LspDiagnosticsSignWarning }, +    TabLineHint { LspDiagnosticsSignHint }, +    TabLineInformation { LspDiagnosticsSignInformation }, -- which-key.nvim + +    WhichKey { fg = c.purple }, -- nvim-compe +    WhichKeySeperator { fg = c.green }, -- nvim-compe +    WhichKeyGroup { fg = c.blue }, -- nvim-compe +    WhichKeyDesc { fg = c.aqua }, -- nvim-compe +    WhichKeyFloat { bg = c.bg1 }, -- nvim-compe + +    CompeDocumentation { Pmenu, fg = "NONE" }, -- diffview + +    DiffviewNormal { NvimTreeNormal }, +    DiffviewStatusAdded { SignAdd }, +    DiffviewStatusModified { SignChange }, +    DiffviewStatusRenamed { SignChange }, +    DiffviewStatusDeleted { SignDelete }, +    DiffviewFilePanelInsertion { SignAdd }, +    DiffviewFilePanelDeletion { SignDelete }, +    DiffviewVertSplit { fg = c.gray, bg = c.bg }, + +    DashboardHeader { fg = c.blue }, +    DashboardCenter { fg = c.purple }, +    DashboardFooter { fg = c.aqua }, + +    IndentBlanklineContextChar { fg = c.gray.da(20) }, + +    CodiVirtualText { fg = c.hint_blue }, +  }  end)  -- return our parsed theme for extension or use else where. | 
