Add .config/nvim/colors/helix.lua
Update .config/nvim/init.lua Update .config/nvim/lua/plugin/00_colorscheme.lua Add .config/nvim/lua/plugin/19_comments.lua
This commit is contained in:
parent
077d09392c
commit
dc03e13eae
4 changed files with 244 additions and 7 deletions
204
private_dot_config/nvim/colors/helix.lua
Normal file
204
private_dot_config/nvim/colors/helix.lua
Normal file
|
|
@ -0,0 +1,204 @@
|
||||||
|
-- stylua: ignore
|
||||||
|
local palette = {
|
||||||
|
none = "NONE",
|
||||||
|
bg = "#3b224c",
|
||||||
|
fg = "#a4a0e8",
|
||||||
|
white = "#ffffff",
|
||||||
|
lilac = "#dbbfef",
|
||||||
|
lavender = "#a4a0e8",
|
||||||
|
comet = "#5a5977",
|
||||||
|
bossanova = "#452859",
|
||||||
|
midnight = "#3b224c",
|
||||||
|
revolver = "#281733",
|
||||||
|
silver = "#cccccc",
|
||||||
|
sirocco = "#697C81",
|
||||||
|
mint = "#9ff28f",
|
||||||
|
almond = "#eccdba",
|
||||||
|
chamois = "#E8DCA0",
|
||||||
|
honey = "#efba5d",
|
||||||
|
apricot = "#f47868",
|
||||||
|
lightning = "#ffcd1c",
|
||||||
|
delta = "#6F44F0",
|
||||||
|
blue = "#61afef",
|
||||||
|
diff_plus = "#35bf86",
|
||||||
|
diff_minus = "#f22c86",
|
||||||
|
diff_delta = "#6f44f0",
|
||||||
|
selection = "#540099",
|
||||||
|
}
|
||||||
|
|
||||||
|
local function apply_highlights(highlights)
|
||||||
|
for name, value in pairs(highlights) do
|
||||||
|
vim.api.nvim_set_hl(0, name, value)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function load(opts)
|
||||||
|
if vim.fn.exists("syntax_on") == 1 then
|
||||||
|
vim.cmd("hi clear")
|
||||||
|
vim.cmd.syntax("reset")
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.o.background = "dark"
|
||||||
|
vim.o.termguicolors = true
|
||||||
|
vim.g.colors_name = "me"
|
||||||
|
|
||||||
|
local transparent = opts and opts.transparent
|
||||||
|
local normal_bg = transparent and palette.none or palette.bg
|
||||||
|
local float_bg = transparent and palette.none or palette.revolver
|
||||||
|
|
||||||
|
-- stylua: ignore
|
||||||
|
local highlights = {
|
||||||
|
Normal = { fg = palette.fg, bg = normal_bg },
|
||||||
|
NormalNC = { fg = palette.fg, bg = normal_bg },
|
||||||
|
NormalFloat = { fg = palette.fg, bg = float_bg },
|
||||||
|
Title = { fg = palette.white, bg = palette.none },
|
||||||
|
Cursor = { fg = palette.bg, bg = palette.white },
|
||||||
|
CursorIM = { link = "Cursor" },
|
||||||
|
lCursor = { link = "Cursor" },
|
||||||
|
ColorColumn = { fg = palette.none, bg = palette.bossanova },
|
||||||
|
CursorLineNr = { fg = palette.white, bg = palette.none },
|
||||||
|
Conceal = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
CursorColumn = { fg = palette.none, bg = palette.bossanova },
|
||||||
|
CursorLine = { fg = palette.none, bg = palette.bossanova },
|
||||||
|
Directory = { fg = palette.blue, bg = palette.none },
|
||||||
|
DiffAdd = { fg = palette.revolver, bg = palette.mint },
|
||||||
|
DiffChange = { fg = palette.lightning, bg = palette.none },
|
||||||
|
DiffDelete = { fg = palette.bossanova, bg = palette.apricot },
|
||||||
|
DiffText = { fg = palette.revolver, bg = palette.lightning },
|
||||||
|
DiffAdded = { fg = palette.mint },
|
||||||
|
DiffRemoved = { fg = palette.apricot },
|
||||||
|
DiffChanged = { fg = palette.blue },
|
||||||
|
DiffOldFile = { fg = palette.lightning },
|
||||||
|
DiffNewFile = { fg = palette.mint },
|
||||||
|
DiffFile = { fg = palette.blue },
|
||||||
|
DiffLine = { fg = palette.bossanova },
|
||||||
|
DiffIndexLine = { fg = palette.diff_plus },
|
||||||
|
ErrorMsg = { fg = palette.apricot, bg = palette.none },
|
||||||
|
WinSeparator = { fg = palette.bossanova, bg = palette.none },
|
||||||
|
Folded = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
FoldColumn = { fg = palette.none, bg = palette.none },
|
||||||
|
IncSearch = { fg = palette.lightning, bg = palette.sirocco },
|
||||||
|
CurSearch = { link = "IncSearch" },
|
||||||
|
LineNr = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
NonText = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
Pmenu = { fg = palette.white, bg = float_bg },
|
||||||
|
PmenuSel = { fg = palette.none, bg = palette.bossanova },
|
||||||
|
PmenuSbar = { fg = palette.none, bg = palette.revolver },
|
||||||
|
PmenuThumb = { fg = palette.none, bg = palette.white },
|
||||||
|
Question = { fg = palette.diff_delta, bg = palette.none },
|
||||||
|
QuickFixLine = { fg = palette.revolver, bg = palette.lightning },
|
||||||
|
Search = { fg = palette.revolver, bg = palette.lightning },
|
||||||
|
SignColumn = { fg = palette.none, bg = palette.none },
|
||||||
|
SpecialKey = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
SpellBad = { undercurl = true },
|
||||||
|
SpellCap = { undercurl = true },
|
||||||
|
SpellLocal = { undercurl = true },
|
||||||
|
SpellRare = { undercurl = true },
|
||||||
|
StatusLine = { fg = palette.white, bg = palette.bossanova },
|
||||||
|
StatusLineNC = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
StatusLineTerm = { fg = palette.white, bg = palette.bossanova },
|
||||||
|
StatusLineTermNC = { fg = palette.bossanova, bg = palette.none },
|
||||||
|
StatusInactive = { fg = palette.bossanova, bg = palette.bg },
|
||||||
|
StatusNormal = { fg = palette.bossanova, bg = palette.blue },
|
||||||
|
StatusInsert = { fg = palette.bossanova, bg = palette.mint },
|
||||||
|
StatusVisual = { fg = palette.bossanova, bg = palette.diff_delta },
|
||||||
|
StatusReplace = { fg = palette.bossanova, bg = palette.diff_minus },
|
||||||
|
StatusCommand = { fg = palette.bossanova, bg = palette.honey },
|
||||||
|
StatusTerminal = { link = "StatusInsert" },
|
||||||
|
WinBar = { fg = palette.lavender, bg = palette.bg },
|
||||||
|
WinBarNC = { fg = palette.sirocco, bg = palette.bg },
|
||||||
|
TabLine = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
TabLineSel = { fg = palette.white, bg = palette.none },
|
||||||
|
TabLineFill = { fg = palette.none, bg = palette.revolver },
|
||||||
|
Terminal = { fg = palette.white, bg = palette.revolver },
|
||||||
|
Visual = { fg = palette.none, bg = palette.selection },
|
||||||
|
VisualNOS = { fg = palette.fg, bg = palette.none },
|
||||||
|
WarningMsg = { fg = palette.lightning, bg = palette.none },
|
||||||
|
WildMenu = { fg = palette.revolver, bg = palette.blue },
|
||||||
|
EndOfBuffer = { fg = palette.bg, bg = palette.none },
|
||||||
|
FloatBorder = { fg = palette.fg, bg = palette.bg },
|
||||||
|
MatchParen = { fg = palette.none, bg = palette.fg },
|
||||||
|
-- Syntax
|
||||||
|
Comment = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
Constant = { fg = palette.white, bg = palette.none },
|
||||||
|
String = { fg = palette.silver, bg = palette.none },
|
||||||
|
Character = { fg = palette.honey, bg = palette.none },
|
||||||
|
Number = { fg = palette.chamois, bg = palette.none },
|
||||||
|
Boolean = { fg = palette.almond, bg = palette.none },
|
||||||
|
Float = { fg = palette.chamois, bg = palette.none },
|
||||||
|
Identifier = { fg = palette.lavender, bg = palette.none },
|
||||||
|
Function = { fg = palette.white, bg = palette.none },
|
||||||
|
Statement = { fg = palette.almond, bg = palette.none },
|
||||||
|
Conditional = { fg = palette.almond, bg = palette.none },
|
||||||
|
Repeat = { fg = palette.almond, bg = palette.none },
|
||||||
|
Label = { fg = palette.almond, bg = palette.none },
|
||||||
|
Operator = { fg = palette.lilac, bg = palette.none },
|
||||||
|
Keyword = { fg = palette.almond, bg = palette.none, bold = true },
|
||||||
|
Exception = { fg = palette.almond, bg = palette.none },
|
||||||
|
PreProc = { fg = palette.lilac, bg = palette.none },
|
||||||
|
Include = { fg = palette.almond, bg = palette.none },
|
||||||
|
Define = { fg = palette.almond, bg = palette.none },
|
||||||
|
Macro = { fg = palette.lilac, bg = palette.none },
|
||||||
|
PreCondit = { fg = palette.lilac, bg = palette.none },
|
||||||
|
Type = { fg = palette.white, bg = palette.none },
|
||||||
|
StorageClass = { fg = palette.white, bg = palette.none },
|
||||||
|
Structure = { fg = palette.white, bg = palette.none },
|
||||||
|
Typedef = { fg = palette.white, bg = palette.none },
|
||||||
|
Special = { fg = palette.honey, bg = palette.none },
|
||||||
|
SpecialChar = { fg = palette.honey, bg = palette.none },
|
||||||
|
Tag = { fg = palette.almond, bg = palette.none },
|
||||||
|
Delimiter = { fg = palette.lavender, bg = palette.none },
|
||||||
|
SpecialComment = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
Debug = { fg = "#634450", bg = palette.none },
|
||||||
|
Error = { fg = palette.apricot, bg = palette.none },
|
||||||
|
Ignore = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
Underlined = { fg = palette.white, bg = palette.none },
|
||||||
|
Todo = { fg = palette.sirocco, bg = palette.none },
|
||||||
|
-- LSP/Diagnostics
|
||||||
|
DiagnosticError = { fg = palette.apricot },
|
||||||
|
DiagnosticHint = { fg = palette.silver },
|
||||||
|
DiagnosticInfo = { fg = palette.delta },
|
||||||
|
DiagnosticWarn = { fg = palette.lightning },
|
||||||
|
DiagnosticInformation = { fg = palette.delta, bold = true },
|
||||||
|
DiagnosticTruncateLine = { fg = palette.fg, bold = true },
|
||||||
|
DiagnosticUnderlineError = { sp = palette.apricot, undercurl = true },
|
||||||
|
DiagnosticUnderlineHint = { sp = palette.apricot, undercurl = true },
|
||||||
|
DiagnosticUnderlineInfo = { sp = palette.apricot, undercurl = true },
|
||||||
|
DiagnosticUnderlineWarn = { sp = palette.apricot, undercurl = true },
|
||||||
|
LspCodeLens = { fg = palette.comet },
|
||||||
|
LspCodeLensSeparator = { fg = palette.comet },
|
||||||
|
LspDiagnosticsFloatingError = { fg = palette.apricot },
|
||||||
|
LspDiagnosticsFloatingHint = { fg = palette.silver },
|
||||||
|
LspDiagnosticsFloatingInfor = { fg = palette.delta },
|
||||||
|
LspDiagnosticsFloatingWarn = { fg = palette.lightning },
|
||||||
|
LspFloatWinBorder = { fg = palette.revolver },
|
||||||
|
LspFloatWinNormal = { fg = palette.lavender, bg = palette.revolver },
|
||||||
|
LspInlayHint = { link = "Comment" },
|
||||||
|
LspReferenceRead = { fg = palette.none, bg = palette.bg },
|
||||||
|
LspReferenceText = { fg = palette.none, bg = palette.bg },
|
||||||
|
LspReferenceWrite = { fg = palette.none, bg = palette.bg },
|
||||||
|
ProviderTruncateLine = { fg = palette.fg },
|
||||||
|
["@lsp.type.builtinType"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.type.keyword"] = { link = "Keyword" },
|
||||||
|
["@lsp.type.operator"] = { link = "Operator" },
|
||||||
|
["@lsp.type.parameter"] = { fg = palette.lavender, bg = palette.none },
|
||||||
|
["@lsp.type.property"] = { link = "@property" },
|
||||||
|
["@lsp.type.variable"] = { link = "@lsp.type.variable" },
|
||||||
|
["@lsp.typemod.enumMember.defaultLibrary"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.typemod.function.defaultLibrary"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.typemod.function.global"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.typemod.method.defaultLibrary"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.typemod.method.reference"] = { link = "Function" },
|
||||||
|
["@lsp.typemod.method.trait"] = { link = "Function" },
|
||||||
|
["@lsp.typemod.selfKeyword.defaultLibrary"] = { fg = palette.mint, bg = palette.none },
|
||||||
|
["@lsp.typemod.variable.defaultLibrary"] = { fg = palette.white, bg = palette.none },
|
||||||
|
["@lsp.typemod.variable.readonly"] = { link = "Constant" },
|
||||||
|
["@lsp.type.macro"] = { fg = palette.lilac, bg = palette.none },
|
||||||
|
}
|
||||||
|
|
||||||
|
apply_highlights(highlights)
|
||||||
|
end
|
||||||
|
|
||||||
|
load()
|
||||||
|
|
||||||
|
return load
|
||||||
|
|
@ -36,3 +36,5 @@ require("config.10_opts")
|
||||||
require("config.20_keymaps")
|
require("config.20_keymaps")
|
||||||
require("config.30_autocmds")
|
require("config.30_autocmds")
|
||||||
require("config.40_statusline")
|
require("config.40_statusline")
|
||||||
|
|
||||||
|
vim.cmd.colorscheme("helix")
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,4 @@
|
||||||
return {
|
return {
|
||||||
{
|
|
||||||
"oneslash/helix-nvim",
|
|
||||||
vsersion = "*",
|
|
||||||
config = function()
|
|
||||||
vim.cmd.colorscheme("helix")
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"catgoose/nvim-colorizer.lua",
|
"catgoose/nvim-colorizer.lua",
|
||||||
event = "BufReadPre",
|
event = "BufReadPre",
|
||||||
|
|
|
||||||
38
private_dot_config/nvim/lua/plugin/19_comments.lua
Normal file
38
private_dot_config/nvim/lua/plugin/19_comments.lua
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
-- comment.lua
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"LudoPinelli/comment-box.nvim",
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>cd",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
"<Cmd>CBd<CR>",
|
||||||
|
desc = "delete comment style",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cc",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
"<Cmd>CBcatalog<CR>",
|
||||||
|
desc = "view comment style catalog",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cb",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
"<Cmd>CBllbox2<CR>",
|
||||||
|
desc = "left-aligned box",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>ca",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
"<Cmd>CBlabox2<CR>",
|
||||||
|
desc = "left-aligned box (alt)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cq",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
"<Cmd>CBllbox11<CR>",
|
||||||
|
desc = "left-aligned quote",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue