From aa5717f00fd14430c80939a68d7107c26de6e554 Mon Sep 17 00:00:00 2001 From: Mohammad Reza Karimi Date: Tue, 20 Jan 2026 15:55:27 -0500 Subject: first commit --- colors/parchment2.lua | 257 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 257 insertions(+) create mode 100644 colors/parchment2.lua (limited to 'colors/parchment2.lua') diff --git a/colors/parchment2.lua b/colors/parchment2.lua new file mode 100644 index 0000000..79358f5 --- /dev/null +++ b/colors/parchment2.lua @@ -0,0 +1,257 @@ +--- Source: http//github.com/moreka/parchment2.nvim +--- parchment2 - a Neovim colorscheme inspired by Acme, Leuven, Parchment, and Dookie.nvim +--- Maintainer: Mohammad Reza Karimi +--- Version: 0.1.0 +--- License: This file is placed under an MIT license. See the included LICENSE file for details. + +vim.cmd.highlight("clear") +vim.o.background = "light" +vim.g.colors_name = "parchment2" + +-- from $VIMRUNTIME/colors/vim.lua +local hi = function(name, val) + val.force = true + val.cterm = val.cterm or {} + vim.api.nvim_set_hl(0, name, val) +end + +-- stylua: ignore start +-- Color palette +local black = "#000000" +local red = "#880000" +local green = "#005500" +local brown = "#663311" +local blue = "#004488" +local magenta = "#770077" +local cyan = "#007777" +local beige = "#eeeecc" +local pale_gray = "#eaeaea" +local pale_red = "#ffeaea" +local pale_green = "#eaffea" +local yellow = "#eeee9e" +local pale_blue = "#cceeff" +local pale_magenta = "#ffeaff" +local pale_cyan = "#eaffff" +local pale_yellow = "#ffffea" +local shadow = "#808075" +local mustard = "#998800" +local sline = "#aeeeee" -- from Dookie.nvim +local sline_nc = "#eaffff" -- from Dookie.nvim + +hi("Normal", { fg = black, bg = pale_yellow }) +hi("NonText", { fg = cyan, bg = pale_cyan }) +hi("Whitespace", { fg = shadow, bg = nil }) + +hi("Cursor", { fg = pale_yellow, bg = magenta }) +hi("lCursor", { fg = pale_yellow, bg = magenta }) +hi("TermCursor", { fg = nil, bg = nil, reverse = true }) +hi("TermCursorNC", { fg = pale_yellow, bg = cyan }) + +hi("Search", { fg = nil, bg = pale_blue }) +hi("IncSearch", { fg = nil, bg = pale_blue, bold = true }) +hi("CurSearch", { fg = pale_yellow, bg = cyan, bold = true }) +hi("Substitute", { link = "Search" }) + +hi("DiffText", { fg = magenta, bg = pale_magenta, bold = true }) +hi("DiffAdd", { fg = green, bg = pale_green }) +hi("DiffDelete", { fg = red, bg = pale_red }) +hi("DiffChange", { fg = magenta, bg = pale_magenta }) +hi("DiffTextAdd", { link = "DiffText" }) + +hi("ErrorMsg", { fg = pale_yellow, bg = red, bold = true }) +hi("ModeMsg", { fg = nil, bg = nil, bold = true }) +hi("MoreMsg", { fg = nil, bg = nil, bold = true }) +hi("WarningMsg", { fg = mustard, bg = nil }) + +hi("StatusLine", { fg = nil, bg = sline, bold = true }) +hi("StatusLineNC", { fg = shadow, bg = sline_nc }) +hi("TabLine", { fg = nil, bg = pale_gray }) +hi("TabLineSel", { fg = nil, bg = pale_gray, bold = true }) +hi("TabLineFill", { fg = nil, bg = pale_gray }) +hi("WinBar", { fg = nil, bg = nil, bold = true }) +hi("VertSplit", { fg = shadow, bg = nil }) +hi("EndOfBuffer", { fg = shadow, bg = nil }) +hi("FoldColumn", { fg = nil, bg = nil }) +hi("SignColumn", { fg = nil, bg = nil }) +hi("ColorColumn", { fg = nil, bg = pale_red }) +hi("CursorColumn", { fg = nil, bg = beige }) +hi("WinSeparator", { link = "VertSplit" }) +hi("WinBarNC", { link = "WinBar" }) + +hi("WildMenu", { fg = pale_yellow, bg = cyan, bold = true }) +hi("Pmenu", { fg = nil, bg = pale_cyan }) +hi("PmenuSel", { fg = pale_yellow, bg = cyan, bold = true }) +hi("PmenuThumb", { fg = nil, bg = cyan }) +hi("PmenuSbar", { fg = nil, bg = pale_cyan }) +hi("PmenuKind", { link = "Pmenu" }) +hi("PmenuKindSel", { link = "PmenuSel" }) +hi("PmenuMatch", { link = "Pmenu" }) +hi("PmenuMatchSel", { link = "PmenuSel" }) +hi("PmenuExtra", { link = "Pmenu" }) +hi("PmenuExtraSel", { link = "PmenuSel" }) +hi("ComplHint", { link = "NonText" }) +hi("ComplHintMore", { link = "MoreMsg" }) +hi("PreInsert", { link = "Added" }) +hi("ComplMatchIns", {}) + +hi("QuickFixLine", { fg = nil, bg = pale_blue }) + +hi("NormalFloat", { fg = nil, bg = pale_gray }) +hi("FloatShadow", { fg = nil, bg = black, blend = 80 }) +hi("FloatShadowThrough", { fg = nil, bg = black, blend = 100 }) +hi("FloatBorder", { link = "WinSeparator" }) +hi("FloatTitle", { link = "Title" }) +hi("FloatFooter", { link = "Title" }) +hi("MsgSeparator", { link = "StatusLine" }) + +hi("LineNr", { fg = shadow, bg = nil }) +hi("CursorLine", { fg = nil, bg = beige }) +hi("CursorLineNr", { fg = nil, bg = beige, bold = true }) +hi("LineNrAbove", { link = "LineNr" }) +hi("LineNrBelow", { link = "LineNr" }) +hi("CursorLineSign", { bg = beige }) +hi("CursorLineFold", { bg = beige }) + +hi("Error", { fg = red, bg = nil }) +hi("Todo", { fg = blue, bg = nil, bold = true }) + +hi("Constant", { fg = nil, bg = nil }) +hi("Identifier", { fg = nil, bg = nil }) +hi("Ignore", { fg = nil, bg = nil }) +hi("Type", { fg = blue, bg = nil }) +hi("Statement", { fg = nil, bg = nil }) +hi("Keyword", { fg = nil, bg = nil, bold = true }) +hi("Function", { fg = nil, bg = nil }) +hi("Comment", { fg = brown, bg = nil, italic = true }) +hi("String", { fg = green, bg = nil }) +hi("Special", { fg = magenta, bg = nil }) +hi("SpecialComment", { fg = brown, bg = nil }) +hi("PreProc", { fg = nil, bg = nil }) +hi("Underlined", { fg = nil, bg = nil, underline = true }) +hi("MatchParen", { fg = nil, bg = pale_blue }) +hi("Delimiter", { fg = nil, bg = nil }) +hi("SpecialKey", { fg = cyan, bg = pale_cyan }) +hi("Conceal", { fg = nil, bg = nil }) +hi("Question", { fg = nil, bg = nil, bold = true }) +hi("Title", { fg = magenta, bg = nil }) +hi("Visual", { fg = nil, bg = yellow }) +hi("VisualNOS", { fg = nil, bg = nil, bold = true, underline = true }) +hi("Directory", { fg = blue, bg = nil, bold = true }) +hi("Folded", { fg = nil, bg = pale_gray }) + +hi("SpellBad", { fg = red, bg = nil, undercurl = true }) +hi("SpellCap", { fg = green, bg = nil, undercurl = true }) +hi("SpellRare", { fg = green, bg = nil, undercurl = true }) +hi("SpellLocal", { fg = green, bg = nil, undercurl = true }) + +hi("DiagnosticError", { fg = red }) +hi("DiagnosticWarn", { fg = mustard }) +hi("DiagnosticInfo", { fg = blue }) +hi("DiagnosticHint", { fg = shadow }) +hi("DiagnosticOk", { fg = green }) +hi("DiagnosticUnderlineError", { sp = red, underline = true }) +hi("DiagnosticUnderlineWarn", { sp = mustard, underline = true }) +hi("DiagnosticUnderlineInfo", { sp = pale_blue, underline = true }) +hi("DiagnosticUnderlineHint", { sp = shadow, underline = true }) +hi("DiagnosticUnderlineOk", { sp = green, underline = true }) +hi("DiagnosticVirtualTextError", { link = "DiagnosticError" }) +hi("DiagnosticVirtualTextWarn", { link = "DiagnosticWarn" }) +hi("DiagnosticVirtualTextInfo", { link = "DiagnosticInfo" }) +hi("DiagnosticVirtualTextHint", { link = "DiagnosticHint" }) +hi("DiagnosticVirtualTextOk", { link = "DiagnosticOk" }) +hi("DiagnosticFloatingError", { link = "DiagnosticError" }) +hi("DiagnosticFloatingWarn", { link = "DiagnosticWarn" }) +hi("DiagnosticFloatingInfo", { link = "DiagnosticInfo" }) +hi("DiagnosticFloatingHint", { link = "DiagnosticHint" }) +hi("DiagnosticFloatingOk", { link = "DiagnosticOk" }) +hi("DiagnosticSignError", { link = "DiagnosticError" }) +hi("DiagnosticSignWarn", { link = "DiagnosticWarn" }) +hi("DiagnosticSignInfo", { link = "DiagnosticInfo" }) +hi("DiagnosticSignHint", { link = "DiagnosticHint" }) +hi("DiagnosticSignOk", { link = "DiagnosticOk" }) +hi("DiagnosticDeprecated", { sp = red, strikethrough = true }) + +hi("DiagnosticUnnecessary", { link = "Comment" }) +hi("LspInlayHint", { link = "NonText" }) +hi("SnippetTabstop", { link = "Visual" }) +hi("SnippetTabstopActive", { link = "SnippetTabstop" }) + +-- Text +hi("@markup.raw", { link = "Comment" }) +hi("@markup.link", { link = "Identifier" }) +hi("@markup.heading", { link = "Title" }) +hi("@markup.link.url", { link = "Underlined" }) +hi("@markup.underline", { link = "Underlined" }) +hi("@comment.todo", { link = "Todo" }) + +-- Miscs +hi("@comment", { link = "Comment" }) +hi("@punctuation", { link = "Delimiter" }) + +-- Constants +hi("@constant", { link = "Constant" }) +hi("@constant.builtin", { link = "Special" }) +hi("@constant.macro", { link = "Define" }) +hi("@keyword.directive", { link = "Define" }) +hi("@string", { link = "String" }) +hi("@string.escape", { link = "SpecialChar" }) +hi("@string.special", { link = "SpecialChar" }) +hi("@character", { link = "Character" }) +hi("@character.special", { link = "SpecialChar" }) +hi("@number", { link = "Number" }) +hi("@boolean", { link = "Boolean" }) +hi("@number.float", { link = "Float" }) + +-- Functions +hi("@function", { link = "Function" }) +hi("@function.builtin", { link = "Special" }) +hi("@function.macro", { link = "Macro" }) +hi("@function.method", { link = "Function" }) +hi("@variable.parameter", { link = "Identifier" }) +hi("@variable.parameter.builtin", { link = "Special" }) +hi("@variable.member", { link = "Identifier" }) +hi("@property", { link = "Identifier" }) +hi("@attribute", { link = "Macro" }) +hi("@attribute.builtin", { link = "Special" }) +hi("@constructor", { link = "Special" }) + +-- Keywords +hi("@keyword.conditional", { link = "Conditional" }) +hi("@keyword.repeat", { link = "Repeat" }) +hi("@keyword.type", { link = "Structure" }) +hi("@label", { link = "Label" }) +hi("@operator", { link = "Operator" }) +hi("@keyword", { link = "Keyword" }) +hi("@keyword.exception", { link = "Exception" }) + +hi("@variable", { link = "Identifier" }) +hi("@type", { link = "Type" }) +hi("@type.definition", { link = "Typedef" }) +hi("@module", { link = "Identifier" }) +hi("@keyword.import", { link = "Include" }) +hi("@keyword.directive", { link = "PreProc" }) +hi("@keyword.debug", { link = "Debug" }) +hi("@tag", { link = "Tag" }) +hi("@tag.builtin", { link = "Special" }) + +-- LSP semantic tokens +hi("@lsp.type.class", { link = "Structure" }) +hi("@lsp.type.comment", { link = "Comment" }) +hi("@lsp.type.decorator", { link = "Function" }) +hi("@lsp.type.enum", { link = "Structure" }) +hi("@lsp.type.enumMember", { link = "Constant" }) +hi("@lsp.type.function", { link = "Function" }) +hi("@lsp.type.interface", { link = "Structure" }) +hi("@lsp.type.macro", { link = "Macro" }) +hi("@lsp.type.method", { link = "Function" }) +hi("@lsp.type.namespace", { link = "Structure" }) +hi("@lsp.type.parameter", { link = "Identifier" }) +hi("@lsp.type.property", { link = "Identifier" }) +hi("@lsp.type.struct", { link = "Structure" }) +hi("@lsp.type.type", { link = "Type" }) +hi("@lsp.type.typeParameter", { link = "TypeDef" }) +hi("@lsp.type.variable", { link = "Identifier" }) + +-- Vimtex +hi("texCmd", { link = "Type" }) +-- stylua: ignore end -- cgit v1.2.3-71-gdd5e