-- Name: basic -- Description: a basic colorscheme -- Author: urosm -- Maintainer: urosm -- Website: https://git.kompot.si/urosm/dot/src/branch/main/.config/nvim/colors/basic.lua -- License: Same as Vim -- Last Updated: 2024 Jul 08 -- A simple neovim colorscheme that defines highlight groups from a list of 8 -- colors. -- init ------------------------------------------------------------------------ vim.cmd.highlight("clear") vim.g.colors_name = "basic" local hi = function(name, val) vim.api.nvim_set_hl(0, name, val) end -- colors ---------------------------------------------------------------------- local C = { black = { cterm = 0, gui = "#000000" }, red = { cterm = 1, gui = "#fa3500" }, green = { cterm = 2, gui = "#009843" }, orange = { cterm = 3, gui = "#d06600" }, blue = { cterm = 4, gui = "#856cff" }, magenta = { cterm = 5, gui = "#ff1170" }, cyan = { cterm = 6, gui = "#008cca" }, white = { cterm = 7, gui = "#e2e2e2" }, bright_black = { cterm = 8, gui = "#848484" }, bright_red = { cterm = 9, gui = "#ff888e" }, bright_green = { cterm = 10, gui = "#00c55b" }, bright_orange = { cterm = 11, gui = "#ff8d48" }, bright_blue = { cterm = 12, gui = "#ac9fff" }, bright_magenta = { cterm = 13, gui = "#ffb1c0" }, bright_cyan = { cterm = 14, gui = "#92ccff" }, bright_white = { cterm = 15, gui = "#ffffff" }, } local fg = C.white local bg = C.black local accent = C.magenta local dimmed = C.blue local none_none_h = {} local none_none_reverse_h = { reverse = true } local none_none_underline_h = { underline = true } local none_none_italic = { italic = true } local none_none_bold_h = { bold = true } local none_none_bold_italic_h = { bold = true, italic = true } local none_none_strikethrough_h = { strikethrough = true } local bg_fg_h = { ctermfg = bg.cterm, fg = bg.gui, ctermbg = fg.cterm, bg = fg.gui } local bg_accent_h = { ctermfg = bg.cterm, fg = bg.gui, ctermbg = accent.cterm, bg = accent.gui } local bg_dimmed_h = { ctermfg = bg.cterm, fg = bg.gui, ctermbg = dimmed.cterm, bg = dimmed.gui } local bg_red_h = { ctermfg = bg.cterm, fg = bg.gui, ctermbg = C.red.cterm, bg = C.red.gui } local bg_orange_h = { ctermfg = bg.cterm, fg = bg.gui, ctermbg = C.orange.cterm, bg = C.orange.gui } local accent_none_h = { ctermfg = accent.cterm, fg = accent.gui } local accent_fg_h = { ctermfg = accent.cterm, fg = accent.gui, ctermbg = fg.cterm, bg = fg.gui } local accent_fg_reverse_h = { ctermfg = accent.cterm, fg = accent.gui, ctermbg = fg.cterm, bg = fg.gui, reverse = true } local dimmed_none_h = { ctermfg = dimmed.cterm, fg = dimmed.gui } local dimmed_none_reverse_h = { ctermfg = dimmed.cterm, fg = dimmed.gui, reverse = true } local dimmed_fg_h = { ctermfg = dimmed.cterm, fg = dimmed.gui, ctermbg = fg.cterm, bg = fg.gui } local red_none_h = { ctermfg = C.red.cterm, fg = C.red.gui } local red_none_underline_h = { ctermfg = C.red.cterm, fg = C.red.gui, underline = true } local green_none_h = { ctermfg = C.green.cterm, fg = C.green.gui } local green_none_underline_h = { ctermfg = C.green.cterm, fg = C.green.gui, underline = true } local orange_none_h = { ctermfg = C.orange.cterm, fg = C.orange.gui } local orange_none_underline_h = { ctermfg = C.orange.cterm, fg = C.orange.gui, underline = true } local blue_none_h = { ctermfg = C.blue.cterm, fg = C.blue.gui } local blue_none_underline_h = { ctermfg = C.blue.cterm, fg = C.blue.gui, underline = true } local magenta_none_h = { ctermfg = C.magenta.cterm, fg = C.magenta.gui } local black_none_h = { ctermfg = C.black.cterm, fg = C.black.gui } local white_none_h = { ctermfg = C.white.cterm, fg = C.white.gui } local white_none_underline_h = { ctermfg = C.white.cterm, fg = C.white.gui, underline = true } -- normal ---------------------------------------------------------------------- hi("Normal", none_none_h) hi("NormalNC", none_none_h) -- tui ------------------------------------------------------------------------- hi("StatusLine", dimmed_none_h) hi("StatusLineNC", dimmed_none_h) hi("TabLine", dimmed_none_h) hi("TabLineFill", dimmed_none_h) hi("TabLineSel", accent_none_h) hi("WinBar", accent_none_h) hi("WinBarNC", dimmed_none_h) hi("WinSeparator", dimmed_none_h) hi("LineNr", accent_none_h) hi("LineNrAbove", dimmed_none_h) hi("LineNrBelow", dimmed_none_h) hi("SignColumn", dimmed_none_h) hi("FoldColumn", dimmed_none_h) hi("WildMenu", accent_none_h) -- float ----------------------------------------------------------------------- hi("NormalFloat", bg_fg_h) hi("FloatBorder", dimmed_fg_h) hi("FloatTitle", accent_fg_h) -- menu ------------------------------------------------------------------------ hi("Pmenu", accent_fg_h) hi("PmenuSel", accent_fg_reverse_h) hi("PmenuKind", accent_fg_h) hi("PmenuKindSel", accent_fg_reverse_h) hi("PmenuExtra", accent_fg_h) hi("PmenuExtraSel", accent_fg_reverse_h) hi("PmenuSbar", accent_fg_h) hi("PmenuThumb", accent_fg_reverse_h) -- messages -------------------------------------------------------------------- hi("MsgArea", none_none_h) hi("MsgSeparator", none_none_h) hi("ModeMsg", accent_none_h) hi("MoreMsg", accent_none_h) hi("WarningMsg", orange_none_h) hi("ErrorMsg", red_none_h) hi("Question", accent_none_h) hi("Title", accent_none_h) -- buffer ---------------------------------------------------------------------- hi("Conceal", dimmed_none_h) hi("NonText", dimmed_none_h) hi("EndOfBuffer", dimmed_none_h) hi("Whitespace", dimmed_none_h) hi("Folded", dimmed_none_h) hi("SpecialKey", accent_none_h) hi("ColorColumn", dimmed_none_reverse_h) -- cursor ---------------------------------------------------------------------- hi("CursorLine", none_none_reverse_h) hi("CursorLineNr", none_none_reverse_h) hi("CursorLineSign", none_none_reverse_h) hi("CursorLineFold", none_none_reverse_h) hi("CursorColumn", none_none_reverse_h) hi("QuickFixLine", none_none_reverse_h) hi("Cursor", none_none_reverse_h) hi("lCursor", none_none_reverse_h) hi("CursorIM", none_none_reverse_h) hi("TermCursor", none_none_reverse_h) hi("TermCursorNC", none_none_reverse_h) -- match ----------------------------------------------------------------------- hi("Search", bg_orange_h) hi("Substitute", bg_orange_h) hi("IncSearch", bg_accent_h) hi("CurSearch", bg_accent_h) hi("MatchParen", accent_fg_h) -- selection ------------------------------------------------------------------- hi("Visual", bg_dimmed_h) hi("Visualnos", bg_dimmed_h) -- diff ------------------------------------------------------------------------ hi("DiffAdd", green_none_h) hi("DiffChange", orange_none_h) hi("DiffDelete", red_none_h) hi("DiffText", orange_none_underline_h) -- spell ----------------------------------------------------------------------- hi("SpellBad", red_none_underline_h) hi("SpellCap", orange_none_underline_h) hi("SpellLocal", orange_none_underline_h) hi("SpellRare", orange_none_underline_h) -- diagnostic ------------------------------------------------------------------ hi("DiagnosticError", red_none_h) hi("DiagnosticWarn", orange_none_h) hi("DiagnosticInfo", blue_none_h) hi("DiagnosticHint", white_none_h) hi("DiagnosticOk", green_none_h) hi("DiagnosticVirtualError", red_none_h) hi("DiagnosticVirtualWarn", orange_none_h) hi("DiagnosticVirtualInfo", blue_none_h) hi("DiagnosticVirtualHint", white_none_h) hi("DiagnosticVirtualOk", green_none_h) hi("DiagnosticUnderlineError", red_none_underline_h) hi("DiagnosticUnderlineWarn", orange_none_underline_h) hi("DiagnosticUnderlineInfo", blue_none_underline_h) hi("DiagnosticUnderlineHint", white_none_underline_h) hi("DiagnosticUnderlineOk", green_none_underline_h) hi("DiagnosticFloatingError", red_none_h) hi("DiagnosticFloatingWarn", orange_none_h) hi("DiagnosticFloatingInfo", blue_none_h) hi("DiagnosticFloatingHint", white_none_h) hi("DiagnosticFloatingOk", green_none_h) hi("DiagnosticSingError", red_none_h) hi("DiagnosticSingWarn", orange_none_h) hi("DiagnosticSingInfo", blue_none_h) hi("DiagnosticSingHint", white_none_h) hi("DiagnosticSingOk", green_none_h) hi("DiagnosticDeprecated", white_none_underline_h) hi("DiagnosticUnnecessary", white_none_underline_h) -- misc ------------------------------------------------------------------------ hi("Directory", blue_none_h) -- syntax ---------------------------------------------------------------------- hi("Comment", blue_none_h) hi("Constant", red_none_h) hi("String", red_none_h) hi("Character", red_none_h) hi("Number", red_none_h) hi("Boolean", red_none_h) hi("Float", red_none_h) hi("Identifier", none_none_h) hi("Function", none_none_h) hi("Statement", orange_none_h) hi("Conditional", orange_none_h) hi("Repeat", orange_none_h) hi("Label", orange_none_h) hi("Operator", orange_none_h) hi("Keyword", orange_none_h) hi("Exception", orange_none_h) hi("PreProc", magenta_none_h) hi("Include", magenta_none_h) hi("Define", magenta_none_h) hi("Macro", magenta_none_h) hi("PreCondit", magenta_none_h) hi("Type", green_none_h) hi("StorageClass", green_none_h) hi("Structure", green_none_h) hi("Typedef", green_none_h) hi("Special", orange_none_h) hi("SpecialChar", orange_none_h) hi("Tag", orange_none_h) hi("Delimiter", orange_none_h) hi("SpecialComment", orange_none_h) hi("Debug", orange_none_h) hi("Underlined", none_none_underline_h) hi("Ignore", black_none_h) hi("Error", bg_red_h) hi("Todo", bg_orange_h) hi("Italic", none_none_italic) hi("Bold", none_none_bold_h) hi("BoldItalic", none_none_bold_italic_h) hi("Strike", none_none_strikethrough_h) -- markdown -------------------------------------------------------------------- hi("markdownLabel", magenta_none_h) hi("markdownHeadingDelimiter", blue_none_h) hi("markdownItalicDelimiter", blue_none_h) hi("markdownBoldDelimiter", blue_none_h) hi("markdownBoldItalicDelimiter", blue_none_h) hi("markdownStrikeDelimiter", blue_none_h) hi("markdownCodeDelimiter", blue_none_h) hi("markdownLinkTextDelimiter", blue_none_h) hi("markdownLinkDelimiter", blue_none_h) hi("markdownUrl", blue_none_h) -- yaml ------------------------------------------------------------------------ hi("yamlBlockMappingKey", blue_none_h) hi("yamlPlainScalar", red_none_h)