| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364 | 
							- 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}
 
-     }
 
- end)
 
- -- return our parsed theme for extension or use else where.
 
- return theme
 
- -- vi:nowrap
 
 
  |