2021-04-17 19:22:55 +00:00
|
|
|
local util = require("tokyonight.util")
|
2021-04-20 11:39:38 +00:00
|
|
|
|
|
|
|
local M = {}
|
|
|
|
|
|
|
|
---@param config Config
|
|
|
|
---@return ColorScheme
|
|
|
|
function M.setup(config)
|
|
|
|
config = config or require("tokyonight.config")
|
|
|
|
|
|
|
|
-- Color Palette
|
|
|
|
---@class ColorScheme
|
2021-04-20 23:04:52 +00:00
|
|
|
local colors = {}
|
|
|
|
|
|
|
|
if config.style == "day" then
|
|
|
|
colors = {
|
|
|
|
none = "NONE",
|
|
|
|
bg_dark = "#F3F4F6",
|
|
|
|
bg = "#ffffff",
|
|
|
|
bg_highlight = "#F9FAFB",
|
|
|
|
terminal_black = "#414868",
|
|
|
|
fg = "#4B5563",
|
|
|
|
fg_dark = "#374151",
|
|
|
|
fg_gutter = "#D1D5DB",
|
|
|
|
dark3 = "#545c7e",
|
|
|
|
comment = "#9CA3AF",
|
|
|
|
dark5 = "#737aa2",
|
|
|
|
blue0 = "#90CAF9",
|
|
|
|
blue = "#3B82F6",
|
|
|
|
cyan = "#00B0FF",
|
|
|
|
blue1 = "#10B981",
|
|
|
|
blue5 = "#80D8FF",
|
|
|
|
blue6 = "#B4F9F8",
|
|
|
|
magenta = "#8B5CF6",
|
|
|
|
purple = "#A78BFA",
|
|
|
|
orange = "#F57F17",
|
|
|
|
yellow = "#FBBF24",
|
|
|
|
green = "#9CCC65",
|
|
|
|
green1 = "#00BFA5",
|
|
|
|
teal = "#1abc9c",
|
|
|
|
red = "#f7768e",
|
|
|
|
red1 = "#db4b4b",
|
|
|
|
diff = { change = "#394b70", add = "#164846", delete = "#823c41" },
|
|
|
|
git = { change = "#6183bb", add = "#449dab", delete = "#914c54" },
|
|
|
|
}
|
|
|
|
else
|
|
|
|
colors = {
|
|
|
|
none = "NONE",
|
|
|
|
bg_dark = "#1f2335",
|
|
|
|
bg = "#24283b",
|
|
|
|
bg_highlight = "#292e42",
|
|
|
|
terminal_black = "#414868",
|
|
|
|
fg = "#c0caf5",
|
|
|
|
fg_dark = "#a9b1d6",
|
|
|
|
fg_gutter = "#3b4261",
|
|
|
|
dark3 = "#545c7e",
|
|
|
|
comment = "#565f89",
|
|
|
|
dark5 = "#737aa2",
|
|
|
|
blue0 = "#3d59a1",
|
|
|
|
blue = "#7aa2f7",
|
|
|
|
cyan = "#7dcfff",
|
|
|
|
blue1 = "#2ac3de",
|
|
|
|
blue5 = "#89ddff",
|
|
|
|
blue6 = "#B4F9F8",
|
|
|
|
magenta = "#bb9af7",
|
|
|
|
purple = "#9d7cd8",
|
|
|
|
orange = "#ff9e64",
|
|
|
|
yellow = "#e0af68",
|
|
|
|
green = "#9ece6a",
|
|
|
|
green1 = "#73daca",
|
|
|
|
teal = "#1abc9c",
|
|
|
|
red = "#f7768e",
|
|
|
|
red1 = "#db4b4b",
|
|
|
|
diff = { change = "#394b70", add = "#164846", delete = "#823c41" },
|
2021-04-21 06:21:31 +00:00
|
|
|
git = { change = "#6183bb", add = "#449dab", delete = "#f7768e" },
|
2021-04-20 23:04:52 +00:00
|
|
|
}
|
|
|
|
if config.style == "night" then colors.bg = "#1a1b26" end
|
|
|
|
end
|
2021-04-20 11:39:38 +00:00
|
|
|
|
|
|
|
util.bg = colors.bg
|
|
|
|
colors.git.ignore = colors.dark3
|
|
|
|
colors.black = util.darken(colors.bg, 0.8, "#000000")
|
|
|
|
colors.border_highlight = colors.blue0
|
|
|
|
colors.border = colors.black
|
|
|
|
|
2021-04-20 20:43:54 +00:00
|
|
|
-- Popups and statusline always get a dark background
|
2021-04-20 11:39:38 +00:00
|
|
|
colors.bg_popup = colors.bg_dark
|
|
|
|
colors.bg_statusline = colors.bg_dark
|
2021-04-20 20:43:54 +00:00
|
|
|
|
|
|
|
-- Sidebar and Floats are configurable
|
|
|
|
colors.bg_sidebar = config.darkFloat and colors.bg_dark or colors.bg
|
|
|
|
colors.bg_float = config.darkFloat and colors.bg_dark or colors.bg
|
|
|
|
|
2021-04-20 11:39:38 +00:00
|
|
|
colors.bg_visual = util.darken(colors.blue0, 0.7)
|
|
|
|
colors.bg_search = colors.blue0
|
|
|
|
colors.fg_sidebar = colors.fg_dark
|
|
|
|
|
|
|
|
colors.error = colors.red1
|
|
|
|
colors.warning = colors.yellow
|
|
|
|
colors.info = colors.teal
|
|
|
|
colors.hint = colors.info
|
|
|
|
return colors
|
|
|
|
end
|
|
|
|
|
|
|
|
return M
|
2021-04-17 19:22:55 +00:00
|
|
|
|