mirror of
https://github.com/basecamp/omarchy.git
synced 2025-07-27 12:19:24 +00:00
Merge pull request #333 from tahayvr/matteblack-plugin
matteblack.nvim is now a neovim colorscheme
This commit is contained in:
@ -1,192 +1,9 @@
|
|||||||
return {
|
return {
|
||||||
"EdenEast/nightfox.nvim",
|
{ "tahayvr/matteblack.nvim", lazy = false, priority = 1000 },
|
||||||
lazy = false,
|
{
|
||||||
priority = 1000,
|
"LazyVim/LazyVim",
|
||||||
dependencies = {
|
opts = {
|
||||||
"folke/snacks.nvim",
|
colorscheme = "matteblack",
|
||||||
"nvim-tree/nvim-web-devicons",
|
|
||||||
"nvim-lualine/lualine.nvim",
|
|
||||||
},
|
|
||||||
|
|
||||||
config = function()
|
|
||||||
local nightfox = require('nightfox')
|
|
||||||
local Shade = require('nightfox.lib.shade')
|
|
||||||
local c = require('nightfox.lib.color')
|
|
||||||
|
|
||||||
local matte_black_palette = {
|
|
||||||
-- Base "Matte Black" Palette Overrides
|
|
||||||
bg0 = "#0D0D0D", bg1 = "#121212", bg2 = "#1E1E1E", bg3 = "#2C2C2C", bg4 = "#333333",
|
|
||||||
fg0 = "#FFFFFF", fg1 = "#EAEAEA", fg2 = "#BEBEBE", fg3 = "#8A8A8D",
|
|
||||||
sel0 = "#2C2C2C",
|
|
||||||
sel1 = c.from_hex("#2C2C2C"):blend(c.from_hex("#F59E0B"), 0.2):to_css(),
|
|
||||||
comment = "#8A8A8D",
|
|
||||||
red = Shade.new("#D35F5F", c.from_hex("#D35F5F"):lighten(8):to_css(), "#B91C1C"),
|
|
||||||
orange = Shade.new("#F59E0B", "#FFC107", c.from_hex("#F59E0B"):lighten(-8):to_css()),
|
|
||||||
yellow = Shade.new("#FFC107", c.from_hex("#FFC107"):lighten(10):to_css(), "#F59E0B"),
|
|
||||||
white = Shade.new("#EAEAEA", "#FFFFFF", "#BEBEBE"),
|
|
||||||
black = Shade.new("#333333", "#8A8A8D", "#1E1E1E"),
|
|
||||||
green = Shade.new("#8A9A7B", "#A5B799", "#6F7C62"),
|
|
||||||
cyan = Shade.new("#88AABB", "#A2C4D3", "#6E8A99"),
|
|
||||||
blue = Shade.new("#8A9FBE", "#A4BBDD", "#7084A1"),
|
|
||||||
magenta = Shade.new("#C1A1C1", "#D9B9D9", "#A989A9"),
|
|
||||||
pink = Shade.new("#D398A7", "#EBC0CB", "#B97E8D"),
|
|
||||||
|
|
||||||
-- Lualine Palette Extensions
|
|
||||||
lualine_normal_bg = "#F59E0B",
|
|
||||||
lualine_insert_bg = "#B91C1C",
|
|
||||||
lualine_visual_bg = "#C1A1C1",
|
|
||||||
lualine_command_bg = "#F59E0B",
|
|
||||||
lualine_inactive_bg = c.from_hex("#121212"):lighten(5):to_css(),
|
|
||||||
|
|
||||||
-- Treesitter Palette Extensions
|
|
||||||
ts_parameter = "#D398A7",
|
|
||||||
ts_property = "#EAEAEA",
|
|
||||||
}
|
|
||||||
|
|
||||||
local final_palettes = {
|
|
||||||
carbonfox = require('nightfox.lib.collect').deep_extend(
|
|
||||||
require('nightfox.palette').load('carbonfox'),
|
|
||||||
matte_black_palette
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
local specs = {
|
|
||||||
carbonfox = {
|
|
||||||
syntax = {
|
|
||||||
keyword = "red", -- "local", "function", "if"
|
|
||||||
conditional = "red",
|
|
||||||
statement = "red",
|
|
||||||
func = "orange",
|
|
||||||
string = "orange.dim",
|
|
||||||
number = "orange",
|
|
||||||
operator = "yellow",
|
|
||||||
variable = "white",
|
|
||||||
ident = "white.dim",
|
|
||||||
const = "white",
|
|
||||||
type = "white",
|
|
||||||
field = "white.dim",
|
|
||||||
comment = "comment",
|
|
||||||
},
|
|
||||||
diag = {
|
|
||||||
error = "red",
|
|
||||||
warn = "red",
|
|
||||||
info = "cyan",
|
|
||||||
hint = "magenta",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
local groups = {
|
|
||||||
all = {
|
|
||||||
-- Base Groups
|
|
||||||
Whitespace = { fg = "palette.black.bright" },
|
|
||||||
NonText = { fg = "palette.black.bright" },
|
|
||||||
IncSearch = { bg = "palette.sel1" },
|
|
||||||
CursorLine = { bg = "palette.bg2" },
|
|
||||||
Normal = { fg = "palette.fg1" },
|
|
||||||
|
|
||||||
-- Noice Cmdline Overrides
|
|
||||||
NoiceCmdlinePopupBorder = { fg = "palette.fg3" },
|
|
||||||
NoiceCmdlinePopupTitle = { fg = "palette.fg3", style = "bold" },
|
|
||||||
NoiceCmdlinePopupBorderSearch = { fg = "palette.fg3" },
|
|
||||||
NoiceCmdlinePopupTitleSearch = { fg = "palette.fg3", style = "bold" },
|
|
||||||
NoiceCmdLineIcon = { fg = "palette.red" },
|
|
||||||
|
|
||||||
-- Neo-tree overrides
|
|
||||||
NeoTreeNormal = { bg = "palette.bg0" },
|
|
||||||
NeoTreeNormalNC = { link = "NeoTreeNormal" },
|
|
||||||
NeoTreeDirectoryName = { fg = "palette.fg3" },
|
|
||||||
NeoTreeDirectoryIcon = { fg = "palette.fg3" },
|
|
||||||
NeoTreeRootName = { fg = "palette.orange", style = "bold" },
|
|
||||||
NeoTreeGitAdded = { fg = "palette.green" },
|
|
||||||
NeoTreeGitModified = { fg = "palette.yellow" },
|
|
||||||
NeoTreeGitDeleted = { fg = "palette.red" },
|
|
||||||
NeoTreeGitIgnored = { fg = "palette.comment" },
|
|
||||||
NeoTreeC = { fg = "palette.orange", bg = "palette.sel0" },
|
|
||||||
|
|
||||||
-- Dashboard overrides
|
|
||||||
SnacksDashboardHeader = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardIcon = { fg = "palette.fg1" },
|
|
||||||
SnacksDashboardDir = { fg = "palette.orange" },
|
|
||||||
SnacksDashboardFile = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardFooter = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardKey = { fg = "palette.orange" },
|
|
||||||
SnacksDashboardDesc = { fg = "palette.fg1" },
|
|
||||||
SnacksDashboardSpecial = { fg = "palette.fg1" },
|
|
||||||
|
|
||||||
-- Treesitter overrides
|
|
||||||
["@comment"] = { fg = "palette.comment", style = "italic" },
|
|
||||||
["@keyword"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@keyword.function"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@keyword.operator"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@function"] = { fg = "palette.orange", style = "bold" },
|
|
||||||
["@function.builtin"] = { fg = "palette.orange", style = "bold" },
|
|
||||||
["@function.call"] = { fg = "palette.orange" },
|
|
||||||
["@string"] = { fg = "palette.orange" },
|
|
||||||
["@number"] = { fg = "palette.orange" },
|
|
||||||
["@operator"] = { fg = "palette.yellow" },
|
|
||||||
["@variable"] = { fg = "palette.white" },
|
|
||||||
["@constant"] = { fg = "palette.white" },
|
|
||||||
["@type"] = { fg = "palette.white.dim" },
|
|
||||||
["@variable.parameter"] = { fg = "palette.ts_parameter", style = "italic" },
|
|
||||||
["@property"] = { fg = "palette.ts_property" },
|
|
||||||
["@field"] = { fg = "palette.ts_property" },
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
nightfox.setup({
|
|
||||||
options = {
|
|
||||||
style = "carbonfox",
|
|
||||||
terminal_colors = true,
|
|
||||||
dim_inactive = true,
|
|
||||||
styles = { comments = "italic", functions = "bold", keywords = "bold" },
|
|
||||||
modules = {
|
|
||||||
neotree = true,
|
|
||||||
treesitter = true,
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
palettes = final_palettes,
|
|
||||||
specs = specs,
|
|
||||||
groups = groups
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.cmd("colorscheme carbonfox")
|
|
||||||
|
|
||||||
-- Lualine overrides
|
|
||||||
local lualine_theme = {
|
|
||||||
normal = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_normal_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
insert = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_insert_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
visual = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_visual_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
command = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_command_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
inactive = {
|
|
||||||
a = { fg = matte_black_palette.fg3, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
b = { fg = matte_black_palette.fg3, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.comment, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
require('lualine').setup({
|
|
||||||
options = {
|
|
||||||
theme = lualine_theme,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
end,
|
|
||||||
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user