My most minimal NixOS configuration.
1local g = vim.g
2local highlight = vim.api.nvim_set_hl
3
4local none = "NONE"
5-- Background and foreground
6local black = "#080808"
7local white = "#c6c6c6"
8local bg = black
9if g.moonflyTransparent then
10 bg = none
11end
12-- Variations of charcoal-grey
13local grey0 = "#323437"
14local grey1 = "#373c4d"
15local grey254 = "#e4e4e4"
16local grey249 = "#b2b2b2"
17local grey247 = "#9e9e9e"
18local grey246 = "#949494"
19local grey244 = "#808080"
20local grey241 = "#626262"
21local grey239 = "#4e4e4e"
22local grey238 = "#444444"
23local grey237 = "#3a3a3a"
24local grey236 = "#303030"
25local grey235 = "#262626"
26local grey234 = "#1c1c1c"
27local grey233 = "#121212"
28-- Core theme colors
29local khaki = "#c2c292"
30local yellow = "#e3c78a"
31local orange = "#de935f"
32local coral = "#f09479"
33local orchid = "#e196a2"
34local lime = "#85dc85"
35local green = "#8cc85f"
36local emerald = "#36c692"
37local blue = "#80a0ff"
38local sky = "#74b2ff"
39local turquoise = "#79dac8"
40local purple = "#ae81ff"
41local cranberry = "#e65e72"
42local violet = "#cf87e8"
43local crimson = "#ff5189"
44local red = "#ff5454"
45-- Extra colors
46local spring = "#00875f"
47
48local M = {}
49
50M.palette = {
51 black = black,
52 white = white,
53 bg = bg,
54 grey0 = grey0,
55 grey1 = grey1,
56 grey254 = grey254,
57 grey249 = grey249,
58 grey247 = grey247,
59 grey246 = grey246,
60 grey244 = grey244,
61 grey241 = grey241,
62 grey239 = grey239,
63 grey238 = grey238,
64 grey237 = grey237,
65 grey236 = grey236,
66 grey235 = grey235,
67 grey234 = grey234,
68 grey233 = grey233,
69 khaki = khaki,
70 yellow = yellow,
71 orange = orange,
72 coral = coral,
73 orchid = orchid,
74 lime = lime,
75 green = green,
76 emerald = emerald,
77 blue = blue,
78 sky = sky,
79 turquoise = turquoise,
80 purple = purple,
81 cranberry = cranberry,
82 violet = violet,
83 crimson = crimson,
84 red = red,
85 spring = spring,
86}
87
88M.style = function()
89 -------------------------------------------------------------------------
90 -- Custom styling groups
91 -------------------------------------------------------------------------
92
93 highlight(0, "MoonflyVisual", { bg = grey0 })
94 highlight(0, "MoonflyWhite", { fg = white })
95 highlight(0, "MoonflyGrey0", { fg = grey0 })
96 highlight(0, "MoonflyGrey254", { fg = grey254 })
97 highlight(0, "MoonflyGrey249", { fg = grey249 })
98 highlight(0, "MoonflyGrey247", { fg = grey247 })
99 highlight(0, "MoonflyGrey246", { fg = grey246 })
100 highlight(0, "MoonflyGrey241", { fg = grey241 })
101 highlight(0, "MoonflyGrey239", { fg = grey239 })
102 highlight(0, "MoonflyGrey238", { fg = grey238 })
103 highlight(0, "MoonflyGrey237", { fg = grey237 })
104 highlight(0, "MoonflyGrey236", { fg = grey236 })
105 highlight(0, "MoonflyGrey235", { fg = grey235 })
106 highlight(0, "MoonflyKhaki", { fg = khaki })
107 highlight(0, "MoonflyYellow", { fg = yellow })
108 highlight(0, "MoonflyOrange", { fg = orange })
109 highlight(0, "MoonflyCoral", { fg = coral })
110 highlight(0, "MoonflyOrchid", { fg = orchid })
111 highlight(0, "MoonflyLime", { fg = lime })
112 highlight(0, "MoonflyGreen", { fg = green })
113 highlight(0, "MoonflyEmerald", { fg = emerald })
114 highlight(0, "MoonflyBlue", { fg = blue })
115 highlight(0, "MoonflySky", { fg = sky })
116 highlight(0, "MoonflyTurquoise", { fg = turquoise })
117 highlight(0, "MoonflyPurple", { fg = purple })
118 highlight(0, "MoonflyCranberry", { fg = cranberry })
119 highlight(0, "MoonflyViolet", { fg = violet })
120 highlight(0, "MoonflyCrimson", { fg = crimson })
121 highlight(0, "MoonflyRed", { fg = red })
122 -- Misc helpers
123 highlight(0, "MoonflyUnderline", { underline = true })
124 highlight(0, "MoonflyNoCombine", { nocombine = true })
125 -- Statusline helper colors
126 highlight(0, "MoonflyBlueMode", { bg = blue, fg = grey234 })
127 highlight(0, "MoonflyEmeraldMode", { bg = emerald, fg = grey234 })
128 highlight(0, "MoonflyPurpleMode", { bg = purple, fg = grey234 })
129 highlight(0, "MoonflyCrimsonMode", { bg = crimson, fg = grey234 })
130 highlight(0, "MoonflyYellowMode", { bg = yellow, fg = grey234 })
131 highlight(0, "MoonflyTurquoiseMode", { bg = turquoise, fg = grey234 })
132 -- Generic line helper colors
133 highlight(0, "MoonflyCrimsonLine", { bg = grey236, fg = crimson })
134 highlight(0, "MoonflyEmeraldLine", { bg = grey236, fg = emerald })
135 highlight(0, "MoonflyGrey246Line", { bg = grey234, fg = grey246 })
136 highlight(0, "MoonflyYellowLine", { bg = grey234, fg = yellow })
137 highlight(0, "MoonflyBlueLineActive", { bg = grey238, fg = blue })
138 highlight(0, "MoonflyRedLineActive", { bg = grey238, fg = red })
139 highlight(0, "MoonflyWhiteLineActive", { bg = grey238, fg = grey254 })
140 highlight(0, "MoonflyYellowLineActive", { bg = grey238, fg = yellow })
141 -- Diagnostic helper colors
142 highlight(0, "MoonflyDiagnosticUndercurlError", { undercurl = true, sp = red })
143 highlight(0, "MoonflyDiagnosticUndercurlWarn", { undercurl = true, sp = yellow })
144 highlight(0, "MoonflyDiagnosticUndercurlInfo", { undercurl = true, sp = sky })
145 highlight(0, "MoonflyDiagnosticUndercurlHint", { undercurl = true, sp = white })
146 highlight(0, "MoonflyDiagnosticUnderlineError", { underline = true, sp = red })
147 highlight(0, "MoonflyDiagnosticUnderlineWarn", { underline = true, sp = yellow })
148 highlight(0, "MoonflyDiagnosticUnderlineInfo", { underline = true, sp = sky })
149 highlight(0, "MoonflyDiagnosticUnderlineHint", { underline = true, sp = white })
150 highlight(0, "MoonflyDiagnosticVirtualTextError", { bg = grey234, fg = red })
151 highlight(0, "MoonflyDiagnosticVirtualTextWarn", { bg = grey234, fg = yellow })
152 highlight(0, "MoonflyDiagnosticVirtualTextInfo", { bg = grey234, fg = sky })
153 highlight(0, "MoonflyDiagnosticVirtualTextHint", { bg = grey234, fg = white })
154
155 -------------------------------------------------------------------------
156 -- Standard styling
157 -------------------------------------------------------------------------
158
159 -- Specify the colors used by the inbuilt terminal
160 if g.moonflyTerminalColors then
161 g.terminal_color_0 = grey0
162 g.terminal_color_1 = red
163 g.terminal_color_2 = green
164 g.terminal_color_3 = yellow
165 g.terminal_color_4 = blue
166 g.terminal_color_5 = violet
167 g.terminal_color_6 = turquoise
168 g.terminal_color_7 = white
169 g.terminal_color_8 = grey246
170 g.terminal_color_9 = crimson
171 g.terminal_color_10 = emerald
172 g.terminal_color_11 = khaki
173 g.terminal_color_12 = sky
174 g.terminal_color_13 = purple
175 g.terminal_color_14 = lime
176 g.terminal_color_15 = grey254
177 end
178
179 -- Background and text
180 highlight(0, "Normal", { bg = bg, fg = white })
181
182 -- Color of mode text, -- INSERT --
183 highlight(0, "ModeMsg", { fg = grey247 })
184
185 -- Comments
186 if g.moonflyItalics then
187 highlight(0, "Comment", { fg = grey246, italic = true })
188 else
189 highlight(0, "Comment", { link = "MoonflyGrey246" })
190 end
191
192 -- Functions
193 highlight(0, "Function", { link = "MoonflySky" })
194
195 -- Strings
196 highlight(0, "String", { link = "MoonflyKhaki" })
197
198 -- Booleans
199 highlight(0, "Boolean", { link = "MoonflyCranberry" })
200
201 -- Identifiers
202 highlight(0, "Identifier", { link = "MoonflyTurquoise" })
203
204 -- Color of titles
205 highlight(0, "Title", { fg = orange })
206
207 -- const, static
208 highlight(0, "StorageClass", { link = "MoonflyCoral" })
209
210 -- void, intptr_t
211 highlight(0, "Type", { fg = emerald })
212
213 -- Numbers
214 highlight(0, "Constant", { link = "MoonflyOrange" })
215
216 -- Character constants
217 highlight(0, "Character", { link = "MoonflyPurple" })
218
219 -- Exceptions
220 highlight(0, "Exception", { link = "MoonflyCrimson" })
221
222 -- ifdef/endif
223 highlight(0, "PreProc", { link = "MoonflyCranberry" })
224
225 -- case in switch statement
226 highlight(0, "Label", { link = "MoonflyTurquoise" })
227
228 -- end-of-line '$', end-of-file '~'
229 highlight(0, "NonText", { fg = grey241 })
230
231 -- sizeof
232 highlight(0, "Operator", { link = "MoonflyCranberry" })
233
234 -- for, while
235 highlight(0, "Repeat", { link = "MoonflyViolet" })
236
237 -- Search
238 highlight(0, "Search", { bg = grey1, fg = grey254 })
239 highlight(0, "CurSearch", { bg = coral, fg = black })
240 highlight(0, "IncSearch", { bg = yellow, fg = black })
241
242 -- '\n' sequences
243 highlight(0, "Special", { link = "MoonflyCranberry" })
244
245 -- if, else
246 highlight(0, "Statement", { fg = violet })
247
248 -- struct, union, enum, typedef
249 highlight(0, "Structure", { link = "MoonflyBlue" })
250
251 -- Status, split and tab lines
252 highlight(0, "StatusLine", { bg = grey236, fg = white })
253 highlight(0, "StatusLineNC", { bg = grey236, fg = grey247 })
254 highlight(0, "Tabline", { bg = grey236, fg = grey247 })
255 highlight(0, "TablineSel", { bg = grey234, fg = blue })
256 highlight(0, "TablineSelSymbol", { bg = grey234, fg = emerald })
257 highlight(0, "TablineFill", { bg = grey236, fg = grey236 })
258 highlight(0, "StatusLineTerm", { bg = grey236, fg = white })
259 highlight(0, "StatusLineTermNC", { bg = grey236, fg = grey247 })
260 if g.moonflyWinSeparator == 0 then
261 highlight(0, "VertSplit", { bg = black, fg = black })
262 elseif g.moonflyWinSeparator == 1 then
263 highlight(0, "VertSplit", { bg = grey236, fg = grey236 })
264 else
265 highlight(0, "VertSplit", { bg = none, fg = grey236 })
266 end
267
268 -- Visual selection
269 highlight(0, "Visual", { link = "MoonflyVisual" })
270 highlight(0, "VisualNOS", { bg = grey0, fg = white })
271 highlight(0, "VisualInDiff", { bg = grey0, fg = white })
272
273 -- Errors, warnings and whitespace-eol
274 highlight(0, "Error", { bg = bg, fg = red })
275 highlight(0, "ErrorMsg", { bg = bg, fg = red })
276 highlight(0, "WarningMsg", { bg = bg, fg = orange })
277
278 -- Auto-text-completion menu
279 highlight(0, "Pmenu", { bg = grey235, fg = white })
280 highlight(0, "PmenuSel", { bg = spring, fg = grey254 })
281 highlight(0, "PmenuSbar", { bg = grey235 })
282 highlight(0, "PmenuThumb", { bg = grey244 })
283 highlight(0, "WildMenu", { bg = spring, fg = grey254 })
284
285 -- Spelling errors
286 if g.moonflyUndercurls then
287 highlight(0, "SpellBad", { bg = none, undercurl = true, sp = red })
288 highlight(0, "SpellCap", { bg = none, undercurl = true, sp = blue })
289 highlight(0, "SpellRare", { bg = none, undercurl = true, sp = yellow })
290 highlight(0, "SpellLocal", { bg = none, undercurl = true, sp = sky })
291 else
292 highlight(0, "SpellBad", { bg = none, fg = red, underline = true, sp = red })
293 highlight(0, "SpellCap", { bg = none, fg = blue, underline = true, sp = blue })
294 highlight(0, "SpellRare", { bg = none, fg = yellow, underline = true, sp = yellow })
295 highlight(0, "SpellLocal", { bg = none, fg = sky, underline = true, sp = sky })
296 end
297
298 -- Misc
299 highlight(0, "Question", { fg = lime })
300 highlight(0, "MoreMsg", { fg = red })
301 highlight(0, "LineNr", { bg = bg, fg = grey241 })
302 if g.moonflyCursorColor then
303 highlight(0, "Cursor", { fg = bg, bg = blue })
304 else
305 highlight(0, "Cursor", { fg = bg, bg = grey247 })
306 end
307 highlight(0, "lCursor", { fg = bg, bg = grey247 })
308 highlight(0, "CursorLineNr", { bg = grey234, fg = blue })
309 highlight(0, "CursorColumn", { bg = grey234 })
310 highlight(0, "CursorLine", { bg = grey234 })
311 highlight(0, "Folded", { bg = grey234, fg = lime })
312 highlight(0, "FoldColumn", { bg = grey236, fg = lime })
313 highlight(0, "SignColumn", { bg = bg, fg = lime })
314 highlight(0, "Todo", { bg = grey235, fg = yellow })
315 highlight(0, "SpecialKey", { bg = bg, fg = sky })
316 if g.moonflyUnderlineMatchParen then
317 highlight(0, "MatchParen", { bg = bg, underline = true })
318 else
319 highlight(0, "MatchParen", { link = "MoonflyVisual" })
320 end
321 highlight(0, "Ignore", { link = "MoonflySky" })
322 highlight(0, "Underlined", { fg = emerald })
323 highlight(0, "QuickFixLine", { bg = grey237 })
324 highlight(0, "Delimiter", { link = "MoonflyWhite" })
325 highlight(0, "qfFileName", { link = "MoonflyEmerald" })
326
327 -- Color column (after line 80)
328 highlight(0, "ColorColumn", { bg = grey233 })
329
330 -- Conceal color
331 highlight(0, "Conceal", { bg = none, fg = grey249 })
332
333 -- nvim -d
334 highlight(0, "DiffAdd", { bg = emerald, fg = black })
335 highlight(0, "DiffChange", { bg = grey236 })
336 highlight(0, "DiffDelete", { bg = grey236, fg = grey241 })
337 highlight(0, "DiffText", { bg = blue, fg = black })
338
339 -------------------------------------------------------------------------
340 -- Neovim standard styling
341 -------------------------------------------------------------------------
342
343 highlight(0, "Whitespace", { fg = grey0 })
344 highlight(0, "TermCursor", { bg = grey247, fg = black })
345 if g.moonflyNormalFloat then
346 highlight(0, "NormalFloat", { bg = bg, fg = grey249 })
347 else
348 highlight(0, "NormalFloat", { bg = grey234, fg = white })
349 end
350 highlight(0, "FloatBorder", { bg = bg, fg = grey236 })
351 highlight(0, "WinBar", { bg = grey235, fg = white })
352 highlight(0, "WinBarNC", { bg = grey235, fg = grey247 })
353 highlight(0, "WinSeparator", { link = "VertSplit" })
354
355 -- Neovim check-health
356 highlight(0, "healthSuccess", { link = "DiffAdd" })
357 highlight(0, "healthHeadingChar", { link = "MoonflyBlue" })
358 highlight(0, "helpHeader", { link = "MoonflyTurquoise" })
359
360 -- Neovim Tree-sitter
361 highlight(0, "@annotation", { link = "MoonflyViolet" })
362 highlight(0, "@attribute", { link = "MoonflySky" })
363 highlight(0, "@constant", { link = "MoonflyTurquoise" })
364 highlight(0, "@constant.builtin", { link = "MoonflyGreen" })
365 highlight(0, "@constant.macro", { link = "MoonflyViolet" })
366 highlight(0, "@constructor", { link = "MoonflyEmerald" })
367 highlight(0, "@danger", { link = "Todo" })
368 highlight(0, "@error", { link = "MoonflyRed" })
369 highlight(0, "@exception", { link = "MoonflyViolet" })
370 highlight(0, "@function.builtin", { link = "MoonflySky" })
371 highlight(0, "@function.call", { link = "MoonflySky" })
372 highlight(0, "@function.macro", { link = "MoonflySky" })
373 highlight(0, "@include", { link = "MoonflyCranberry" })
374 highlight(0, "@keyword.operator", { link = "MoonflyViolet" })
375 highlight(0, "@namespace", { link = "MoonflyTurquoise" })
376 highlight(0, "@none", {})
377 highlight(0, "@parameter", { link = "MoonflyOrchid" })
378 highlight(0, "@property", { link = "MoonflyTurquoise" })
379 highlight(0, "@punctuation.special", { link = "MoonflyCranberry" })
380 highlight(0, "@string.regex", { link = "MoonflyTurquoise" })
381 highlight(0, "@symbol", { link = "MoonflyPurple" })
382 highlight(0, "@tag", { link = "MoonflyBlue" })
383 highlight(0, "@tag.attribute", { link = "MoonflyTurquoise" })
384 highlight(0, "@tag.delimiter", { link = "MoonflyLime" })
385 highlight(0, "@text.danger", { link = "MoonflyRed" })
386 highlight(0, "@text.diff.add", { link = "DiffAdd" })
387 highlight(0, "@text.diff.delete", { link = "DiffDelete" })
388 highlight(0, "@text.emphasis", { fg = orchid, italic = true })
389 highlight(0, "@text.environment", { link = "MoonflyCranberry" })
390 highlight(0, "@text.environment.name", { link = "MoonflyEmerald" })
391 highlight(0, "@text.literal", { link = "String" })
392 highlight(0, "@text.math", { link = "MoonflyCranberry" })
393 highlight(0, "@text.note", { link = "MoonflyGrey246" })
394 highlight(0, "@text.reference", { link = "MoonflyGreen" })
395 highlight(0, "@text.strike", { strikethrough = true })
396 highlight(0, "@text.strong", { link = "MoonflyOrchid" })
397 highlight(0, "@text.title", { link = "MoonflyBlue" })
398 highlight(0, "@text.todo", { link = "Todo" })
399 highlight(0, "@text.underline", { underline = true })
400 highlight(0, "@text.uri", { link = "MoonflyPurple" })
401 highlight(0, "@text.warning", { link = "MoonflyYellow" })
402 highlight(0, "@type.builtin", { link = "MoonflyEmerald" })
403 highlight(0, "@type.qualifier", { link = "MoonflyViolet" })
404 highlight(0, "@variable", { link = "MoonflyWhite" })
405 highlight(0, "@variable.builtin", { link = "MoonflyLime" })
406 -- Language specific Tree-sitter overrides.
407 highlight(0, "@field.yaml", { link = "MoonflyBlue" })
408 highlight(0, "@keyword.gitcommit", { link = "MoonflySky" })
409 highlight(0, "@parameter.bash", { link = "MoonflyTurquoise" })
410 highlight(0, "@punctuation.delimiter.astro", { link = "MoonflyCranberry" })
411 highlight(0, "@punctuation.delimiter.css", { link = "MoonflyCranberry" })
412 highlight(0, "@punctuation.delimiter.scss", { link = "MoonflyCranberry" })
413 highlight(0, "@punctuation.delimiter.yaml", { link = "MoonflyCranberry" })
414 highlight(0, "@storageclass.rust", { link = "MoonflyViolet" })
415 highlight(0, "@text.reference.gitcommit", { link = "MoonflyBlue" })
416 highlight(0, "@text.title.astro", { link = "MoonflyViolet" })
417 highlight(0, "@text.title.gitcommit", { link = "MoonflyViolet" })
418 highlight(0, "@text.title.help", { link = "MoonflySky" })
419 highlight(0, "@text.title.html", { link = "MoonflyViolet" })
420 highlight(0, "@text.title.svelte", { link = "MoonflyViolet" })
421 highlight(0, "@text.title.vue", { link = "MoonflyViolet" })
422 highlight(0, "@text.uri.gitcommit", { link = "MoonflyEmerald" })
423 if g.moonflyItalics then
424 highlight(0, "@text.uri.astro", { fg = violet, italic = true })
425 highlight(0, "@text.uri.html", { fg = violet, italic = true })
426 highlight(0, "@text.uri.svelte", { fg = violet, italic = true })
427 highlight(0, "@text.uri.vue", { fg = violet, italic = true })
428 else
429 highlight(0, "@text.uri.astro", { link = "MoonflyViolet" })
430 highlight(0, "@text.uri.html", { link = "MoonflyViolet" })
431 highlight(0, "@text.uri.svelte", { link = "MoonflyViolet" })
432 highlight(0, "@text.uri.vue", { link = "MoonflyViolet" })
433 end
434 highlight(0, "@variable.scss", { link = "MoonflyTurquoise" })
435 highlight(0, "@variable.vim", { link = "MoonflyTurquoise" })
436 highlight(0, "@variable.builtin.vim", { link = "MoonflyEmerald" })
437
438 -- Neovim LSP semantic highlights.
439 highlight(0, "@lsp.mod.deprecated", { link = "@constant" })
440 highlight(0, "@lsp.mod.readonly", { link = "@constant" })
441 highlight(0, "@lsp.mod.typeHint", { link = "@type" })
442 highlight(0, "@lsp.type.boolean", { link = "@boolean" })
443 highlight(0, "@lsp.type.builtinConstant", { link = "@constant.builtin" })
444 highlight(0, "@lsp.type.builtinType", { link = "@type.builtin" })
445 highlight(0, "@lsp.type.class", { link = "@type" })
446 highlight(0, "@lsp.type.enum", { link = "@type" })
447 highlight(0, "@lsp.type.enumMember", { link = "@property" })
448 highlight(0, "@lsp.type.escapeSequence", { link = "@string.escape" })
449 highlight(0, "@lsp.type.formatSpecifier", { link = "@punctuation.special" })
450 highlight(0, "@lsp.type.interface", { link = "@type" })
451 highlight(0, "@lsp.type.keyword", { link = "@keyword" })
452 highlight(0, "@lsp.type.magicFunction", { link = "@function.builtin" })
453 highlight(0, "@lsp.type.namespace", { link = "@namespace" })
454 highlight(0, "@lsp.type.number", { link = "@number" })
455 highlight(0, "@lsp.type.operator", { link = "@operator" })
456 highlight(0, "@lsp.type.parameter", { link = "@parameter" })
457 highlight(0, "@lsp.type.property", { link = "@property" })
458 highlight(0, "@lsp.type.selfKeyword", { link = "@variable.builtin" })
459 highlight(0, "@lsp.type.selfParameter", { link = "@variable.builtin" })
460 highlight(0, "@lsp.type.struct", { link = "@type" })
461 highlight(0, "@lsp.type.typeAlias", { link = "@type.definition" })
462 highlight(0, "@lsp.type.unresolvedReference", { link = "@error" })
463 highlight(0, "@lsp.type.variable", { link = "@variable" })
464 highlight(0, "@lsp.typemod.class.defaultLibrary", { link = "@type.builtin" })
465 highlight(0, "@lsp.typemod.enum.defaultLibrary", { link = "@type" })
466 highlight(0, "@lsp.typemod.enumMember.defaultLibrary", { link = "@constant.builtin" })
467 highlight(0, "@lsp.typemod.function.defaultLibrary", { link = "@function.builtin" })
468 highlight(0, "@lsp.typemod.keyword.async", { link = "@keyword" })
469 highlight(0, "@lsp.typemod.method.defaultLibrary", { link = "@function.builtin" })
470 highlight(0, "@lsp.typemod.operator.injected", { link = "@operator" })
471 highlight(0, "@lsp.typemod.string.injected", { link = "@string" })
472 highlight(0, "@lsp.typemod.variable.defaultLibrary", { link = "@variable.builtin" })
473 highlight(0, "@lsp.typemod.variable.global", { link = "@constant" })
474 highlight(0, "@lsp.typemod.variable.injected", { link = "@variable" })
475 highlight(0, "@lsp.typemod.variable.readonly", { link = "@constant" })
476 highlight(0, "@lsp.typemod.variable.static", { link = "@constant" })
477 -- Language specific LSP semantic overrides.
478 highlight(0, "@lsp.type.macro.rust", { link = "@function" })
479 highlight(0, "@lsp.type.parameter.dockerfile", { link = "@property" })
480 highlight(0, "@lsp.type.variable.dockerfile", { link = "@function" })
481
482 -- Neovim Diagnostic
483 highlight(0, "DiagnosticError", { link = "MoonflyRed" })
484 highlight(0, "DiagnosticWarn", { link = "MoonflyYellow" })
485 highlight(0, "DiagnosticInfo", { link = "MoonflySky" })
486 highlight(0, "DiagnosticHint", { link = "MoonflyWhite" })
487 if g.moonflyUndercurls then
488 highlight(0, "DiagnosticUnderlineError", { link = "MoonflyDiagnosticUndercurlError" })
489 highlight(0, "DiagnosticUnderlineWarn", { link = "MoonflyDiagnosticUndercurlWarn" })
490 highlight(0, "DiagnosticUnderlineInfo", { link = "MoonflyDiagnosticUndercurlInfo" })
491 highlight(0, "DiagnosticUnderlineHint", { link = "MoonflyDiagnosticUndercurlHint" })
492 else
493 highlight(0, "DiagnosticUnderlineError", { link = "MoonflyDiagnosticUnderlineError" })
494 highlight(0, "DiagnosticUnderlineWarn", { link = "MoonflyDiagnosticUnderlineWarn" })
495 highlight(0, "DiagnosticUnderlineInfo", { link = "MoonflyDiagnosticUnderlineInfo" })
496 highlight(0, "DiagnosticUnderlineHint", { link = "MoonflyDiagnosticUnderlineHint" })
497 end
498 if g.moonflyVirtualTextColor then
499 highlight(0, "DiagnosticVirtualTextError", { link = "MoonflyDiagnosticVirtualTextError" })
500 highlight(0, "DiagnosticVirtualTextWarn", { link = "MoonflyDiagnosticVirtualTextWarn" })
501 highlight(0, "DiagnosticVirtualTextInfo", { link = "MoonflyDiagnosticVirtualTextInfo" })
502 highlight(0, "DiagnosticVirtualTextHint", { link = "MoonflyDiagnosticVirtualTextHint" })
503 else
504 highlight(0, "DiagnosticVirtualTextError", { link = "MoonflyGrey241" })
505 highlight(0, "DiagnosticVirtualTextWarn", { link = "MoonflyGrey241" })
506 highlight(0, "DiagnosticVirtualTextInfo", { link = "MoonflyGrey241" })
507 highlight(0, "DiagnosticVirtualTextHint", { link = "MoonflyGrey241" })
508 end
509 highlight(0, "DiagnosticSignError", { link = "MoonflyRed" })
510 highlight(0, "DiagnosticSignWarn", { link = "MoonflyYellow" })
511 highlight(0, "DiagnosticSignInfo", { link = "MoonflySky" })
512 highlight(0, "DiagnosticSignHint", { link = "MoonflyWhite" })
513 highlight(0, "DiagnosticFloatingError", { link = "MoonflyRed" })
514 highlight(0, "DiagnosticFloatingWarn", { link = "MoonflyYellow" })
515 highlight(0, "DiagnosticFloatingInfo", { link = "MoonflySky" })
516 highlight(0, "DiagnosticFloatingHint", { link = "MoonflyWhite" })
517
518 -- Neovim LSP
519 highlight(0, "LspCodeLens", { link = "MoonflyGrey241" })
520 highlight(0, "LspCodeLensSeparator", { link = "MoonflyGrey241" })
521 highlight(0, "LspInfoBorder", { link = "FloatBorder" })
522 highlight(0, "LspInlayHint", { bg = grey234, fg = grey246 })
523 highlight(0, "LspReferenceText", { link = "MoonflyVisual" })
524 highlight(0, "LspReferenceRead", { link = "MoonflyVisual" })
525 highlight(0, "LspReferenceWrite", { link = "MoonflyVisual" })
526 highlight(0, "LspSignatureActiveParameter", { bg = grey236 })
527
528 -------------------------------------------------------------------------
529 -- Legacy language styling
530 -------------------------------------------------------------------------
531
532 -- Markdown, 'tpope/vim-markdown' plugin
533 highlight(0, "markdownBold", { link = "MoonflyYellow" })
534 highlight(0, "markdownCode", { link = "MoonflyKhaki" })
535 highlight(0, "markdownCodeDelimiter", { link = "MoonflyKhaki" })
536 highlight(0, "markdownError", { link = "NormalNC" })
537 highlight(0, "markdownH1", { link = "MoonflyBlue" })
538 highlight(0, "markdownH2", { link = "MoonflyBlue" })
539 highlight(0, "markdownHeadingRule", { link = "MoonflyCranberry" })
540 highlight(0, "markdownItalic", { link = "MoonflyOrchid" })
541 highlight(0, "markdownUrl", { link = "MoonflyPurple" })
542
543 -- Markdown, 'plasticboy/vim-markdown' plugin
544 highlight(0, "mkdDelimiter", { link = "MoonflyWhite" })
545 highlight(0, "mkdLineBreak", { link = "NormalNC" })
546 highlight(0, "mkdListItem", { link = "MoonflyBlue" })
547 highlight(0, "mkdURL", { link = "MoonflyPurple" })
548
549 -- Shell
550 highlight(0, "shAlias", { link = "MoonflyTurquoise" })
551 highlight(0, "shCommandSub", { link = "MoonflyWhite" })
552 highlight(0, "shCtrlSeq", { link = "MoonflyKhaki" })
553 highlight(0, "shLoop", { link = "MoonflyViolet" })
554 highlight(0, "shRange", { link = "MoonflyWhite" })
555 highlight(0, "shSetList", { link = "MoonflyTurquoise" })
556 highlight(0, "shShellVariables", { link = "MoonflyTurquoise" })
557 highlight(0, "shVariable", { link = "MoonflyTurquoise" })
558
559 -- XML
560 highlight(0, "xmlAttrib", { link = "MoonflyLime" })
561 highlight(0, "xmlEndTag", { link = "MoonflyBlue" })
562 highlight(0, "xmlTag", { link = "MoonflyLime" })
563 highlight(0, "xmlTagName", { link = "MoonflyBlue" })
564
565 -------------------------------------------------------------------------
566 -- Legacy plugin styling
567 -------------------------------------------------------------------------
568
569 -- Git commits
570 highlight(0, "gitCommitBranch", { link = "MoonflySky" })
571 highlight(0, "gitCommitDiscardedFile", { link = "MoonflyCrimson" })
572 highlight(0, "gitCommitDiscardedType", { link = "MoonflySky" })
573 highlight(0, "gitCommitHeader", { link = "MoonflyPurple" })
574 highlight(0, "gitCommitSelectedFile", { link = "MoonflyEmerald" })
575 highlight(0, "gitCommitSelectedType", { link = "MoonflySky" })
576 highlight(0, "gitCommitUntrackedFile", { link = "MoonflyCranberry" })
577 highlight(0, "gitEmail", { link = "MoonflyBlue" })
578
579 -- Git commit diffs
580 highlight(0, "diffAdded", { link = "MoonflyGreen" })
581 highlight(0, "diffChanged", { link = "MoonflyCrimson" })
582 highlight(0, "diffIndexLine", { link = "MoonflyCrimson" })
583 highlight(0, "diffLine", { link = "MoonflySky" })
584 highlight(0, "diffRemoved", { link = "MoonflyRed" })
585 highlight(0, "diffSubname", { link = "MoonflySky" })
586
587 -- Tagbar plugin
588 highlight(0, "TagbarFoldIcon", { link = "MoonflyGrey247" })
589 highlight(0, "TagbarVisibilityPublic", { link = "MoonflyLime" })
590 highlight(0, "TagbarVisibilityProtected", { link = "MoonflyLime" })
591 highlight(0, "TagbarVisibilityPrivate", { link = "MoonflyLime" })
592 highlight(0, "TagbarKind", { link = "MoonflyEmerald" })
593
594 -- fern.vim plugin
595 highlight(0, "FernBranchSymbol", { link = "MoonflyGrey246" })
596 highlight(0, "FernLeafSymbol", { link = "MoonflyBlue" })
597 highlight(0, "FernLeaderSymbol", { link = "MoonflyGrey237" })
598 highlight(0, "FernBranchText", { link = "MoonflyBlue" })
599 highlight(0, "FernMarkedLine", { link = "MoonflyVisual" })
600 highlight(0, "FernMarkedText", { link = "MoonflyCrimson" })
601 highlight(0, "FernRootSymbol", { link = "MoonflyPurple" })
602 highlight(0, "FernRootText", { link = "MoonflyPurple" })
603
604 -- fern-git-status.vim plugin
605 highlight(0, "FernGitStatusBracket", { link = "MoonflyGrey246" })
606 highlight(0, "FernGitStatusIndex", { link = "MoonflyEmerald" })
607 highlight(0, "FernGitStatusWorktree", { link = "MoonflyCrimson" })
608
609 -- Glyph palette
610 highlight(0, "GlyphPalette1", { link = "MoonflyCranberry" })
611 highlight(0, "GlyphPalette2", { link = "MoonflyEmerald" })
612 highlight(0, "GlyphPalette3", { link = "MoonflyYellow" })
613 highlight(0, "GlyphPalette4", { link = "MoonflyBlue" })
614 highlight(0, "GlyphPalette6", { link = "MoonflyTurquoise" })
615 highlight(0, "GlyphPalette7", { link = "MoonflyWhite" })
616 highlight(0, "GlyphPalette9", { link = "MoonflyCrimson" })
617
618 -- Misc items
619 highlight(0, "bufExplorerHelp", { link = "MoonflyGrey247" })
620 highlight(0, "bufExplorerSortBy", { link = "MoonflyGrey247" })
621 highlight(0, "CleverFDefaultLabel", { link = "MoonflyCrimson" })
622 highlight(0, "CtrlPMatch", { link = "MoonflyCoral" })
623 highlight(0, "Directory", { link = "MoonflyBlue" })
624 highlight(0, "erubyDelimiter", { link = "MoonflyCrimson" })
625 highlight(0, "helpHeadline", { link = "MoonflyBlue" })
626 highlight(0, "helpSectionDelim", { link = "MoonflyBlue" })
627 highlight(0, "jsonKeyword", { link = "MoonflySky" })
628 highlight(0, "jsonQuote", { link = "MoonflyWhite" })
629 highlight(0, "netrwClassify", { link = "MoonflyCranberry" })
630 highlight(0, "netrwDir", { link = "MoonflySky" })
631 highlight(0, "netrwExe", { link = "MoonflyKhaki" })
632 highlight(0, "tagName", { link = "MoonflyTurquoise" })
633 highlight(0, "Cheat40Header", { link = "MoonflyBlue" })
634 highlight(0, "yamlBlockMappingKey", { link = "MoonflySky" })
635 highlight(0, "yamlFlowMappingKey", { link = "MoonflySky" })
636 if g.moonflyUnderlineMatchParen then
637 highlight(0, "MatchWord", { underline = true, sp = coral })
638 else
639 highlight(0, "MatchWord", { link = "MoonflyCoral" })
640 end
641 highlight(0, "snipLeadingSpaces", { bg = bg, fg = white })
642 highlight(0, "MatchWordCur", { bg = bg })
643 highlight(0, "fishVariable", { link = "MoonflyTurquoise" })
644 highlight(0, "fishInnerVariable", { link = "MoonflyTurquoise" })
645
646 -- FZF plugin
647 highlight(0, "fzf1", { fg = crimson, bg = grey236 })
648 highlight(0, "fzf2", { fg = blue, bg = grey236 })
649 highlight(0, "fzf3", { fg = emerald, bg = grey236 })
650 highlight(0, "fzfNormal", { fg = grey249 })
651 highlight(0, "fzfFgPlus", { fg = grey254 })
652 highlight(0, "fzfBorder", { fg = grey236 })
653 highlight(0, "fzfSubstring", { fg = coral })
654 g.fzf_colors = {
655 ["fg"] = { "fg", "fzfNormal" },
656 ["bg"] = { "bg", "Normal" },
657 ["hl"] = { "fg", "fzfSubstring" },
658 ["fg+"] = { "fg", "fzfFgPlus" },
659 ["bg+"] = { "bg", "Pmenu" },
660 ["hl+"] = { "fg", "fzfSubstring" },
661 ["info"] = { "fg", "String" },
662 ["border"] = { "fg", "fzfBorder" },
663 ["prompt"] = { "fg", "fzf2" },
664 ["pointer"] = { "fg", "Exception" },
665 ["marker"] = { "fg", "StorageClass" },
666 ["spinner"] = { "fg", "Type" },
667 ["header"] = { "fg", "CursorLineNr" },
668 }
669
670 -- mistfly-statusline plugin
671 highlight(0, "MistflyNormal", { link = "MoonflyBlueMode" })
672 highlight(0, "MistflyInsert", { link = "MoonflyEmeraldMode" })
673 highlight(0, "MistflyVisual", { link = "MoonflyPurpleMode" })
674 highlight(0, "MistflyCommand", { link = "MoonflyYellowMode" })
675 highlight(0, "MistflyReplace", { link = "MoonflyCrimsonMode" })
676
677 -- Coc plugin (see issue: https://github.com/bluz71/vim-nightfly-colors/issues/31)
678 highlight(0, "CocUnusedHighlight", { link = "MoonflyGrey249" })
679
680 -------------------------------------------------------------------------
681 -- Neovim plugin styling
682 -------------------------------------------------------------------------
683
684 -- NvimTree plugin
685 highlight(0, "NvimTreeFolderIcon", { link = "MoonflyGrey246" })
686 highlight(0, "NvimTreeFolderName", { link = "MoonflyBlue" })
687 highlight(0, "NvimTreeIndentMarker", { link = "MoonflyGrey237" })
688 highlight(0, "NvimTreeOpenedFolderName", { link = "MoonflyBlue" })
689 highlight(0, "NvimTreeRootFolder", { link = "MoonflyPurple" })
690 highlight(0, "NvimTreeSpecialFile", { link = "MoonflyYellow" })
691 highlight(0, "NvimTreeWindowPicker", { link = "DiffChange" })
692 highlight(0, "NvimTreeCursorLine", { bg = grey235 })
693 highlight(0, "NvimTreeExecFile", { fg = green })
694 highlight(0, "NvimTreeImageFile", { fg = violet })
695 if g.moonflyTransparent ~= true and g.moonflyNormalFloat ~= true then
696 highlight(0, "NormalFloat", { bg = bg, fg = grey249 })
697 end
698 highlight(0, "NvimTreeOpenedFile", { fg = yellow })
699 highlight(0, "NvimTreeSymlink", { fg = turquoise })
700
701 -- Neo-tree plugin
702 highlight(0, "NeoTreeCursorLine", { bg = grey235 })
703 highlight(0, "NeoTreeDimText", { link = "MoonflyGrey239" })
704 highlight(0, "NeoTreeDirectoryIcon", { link = "MoonflyGrey246" })
705 highlight(0, "NeoTreeDotfile", { link = "MoonflyGrey246" })
706 highlight(0, "NeoTreeFloatTitle", { bg = grey236, fg = white })
707 highlight(0, "NeoTreeFilterTerm", { link = "MoonflyBlue" })
708 highlight(0, "NeoTreeGitAdded", { link = "MoonflyGreen" })
709 highlight(0, "NeoTreeGitConflict", { link = "MoonflyCrimson" })
710 highlight(0, "NeoTreeGitModified", { link = "MoonflyTurquoise" })
711 highlight(0, "NeoTreeGitUntracked", { link = "MoonflyOrchid" })
712 highlight(0, "NeoTreeIndentMarker", { link = "MoonflyGrey237" })
713 highlight(0, "NeoTreeMessage", { link = "MoonflyGrey247" })
714 highlight(0, "NeoTreeModified", { link = "MoonflyYellow" })
715 highlight(0, "NeoTreeRootName", { link = "MoonflyPurple" })
716 highlight(0, "NeoTreeTitleBar", { bg = grey236, fg = white })
717
718 -- Telescope plugin
719 highlight(0, "TelescopeBorder", { link = "FloatBorder" })
720 highlight(0, "TelescopeMatching", { link = "MoonflyCoral" })
721 highlight(0, "TelescopeMultiIcon", { link = "MoonflyCrimson" })
722 highlight(0, "TelescopeMultiSelection", { link = "MoonflyEmerald" })
723 highlight(0, "TelescopeNormal", { link = "MoonflyGrey249" })
724 highlight(0, "TelescopePreviewDate", { link = "MoonflyGrey246" })
725 highlight(0, "TelescopePreviewGroup", { link = "MoonflyGrey246" })
726 highlight(0, "TelescopePreviewLink", { link = "MoonflyTurquoise" })
727 highlight(0, "TelescopePreviewMatch", { link = "MoonflyVisual" })
728 highlight(0, "TelescopePreviewRead", { link = "MoonflyOrange" })
729 highlight(0, "TelescopePreviewSize", { link = "MoonflyEmerald" })
730 highlight(0, "TelescopePreviewUser", { link = "MoonflyGrey246" })
731 highlight(0, "TelescopePromptPrefix", { link = "MoonflyBlue" })
732 highlight(0, "TelescopeResultsDiffAdd", { link = "MoonflyGreen" })
733 highlight(0, "TelescopeResultsDiffChange", { link = "MoonflyRed" })
734 highlight(0, "TelescopeResultsDiffDelete", { link = "MoonflyCrimsonLine" })
735 highlight(0, "TelescopeResultsSpecialComment", { link = "MoonflyGrey241" })
736 highlight(0, "TelescopeSelectionCaret", { link = "MoonflyCrimson" })
737 highlight(0, "TelescopeTitle", { link = "MoonflyGrey241" })
738 highlight(0, "TelescopeSelection", { bg = grey0, fg = grey254 })
739
740 -- gitsigns.nvim plugin
741 -- sign column
742 highlight(0, "GitSignsAdd", { link = "MoonflyEmerald" })
743 highlight(0, "GitSignsChange", { link = "MoonflySky" })
744 highlight(0, "GitSignsChangeDelete", { link = "MoonflyCoral" })
745 highlight(0, "GitSignsDelete", { link = "MoonflyRed" })
746 highlight(0, "GitSignsUntracked", { link = "MoonflyGrey241" })
747 -- line highlights
748 highlight(0, "GitSignsAddLn", { bg = grey235 })
749 highlight(0, "GitSignsChangeLn", { bg = grey234 })
750 -- word diff
751 highlight(0, "GitSignsAddLnInline", { bg = grey1 })
752 highlight(0, "GitSignsChangeLnInline", { bg = grey1 })
753 -- word diff in preview
754 highlight(0, "GitSignsAddInline", { bg = green, fg = black })
755 highlight(0, "GitSignsChangeInline", { bg = yellow, fg = black })
756 highlight(0, "GitSignsDeleteInline", { bg = red, fg = black })
757 -- misc
758 highlight(0, "GitSignsAddPreview", { link = "MoonflyEmeraldLine" })
759 highlight(0, "GitSignsDeletePreview", { link = "MoonflyCrimsonLine" })
760 highlight(0, "GitSignsDeleteVirtLn", { link = "MoonflyCrimsonLine" })
761
762 -- Hop plugin
763 highlight(0, "HopCursor", { link = "IncSearch" })
764 highlight(0, "HopNextKey", { link = "MoonflyYellow" })
765 highlight(0, "HopNextKey1", { link = "MoonflyBlue" })
766 highlight(0, "HopNextKey2", { link = "MoonflyCrimson" })
767 highlight(0, "HopUnmatched", { link = "MoonflyGrey247" })
768
769 -- Barbar plugin
770 highlight(0, "BufferCurrent", { link = "MoonflyWhiteLineActive" })
771 highlight(0, "BufferCurrentIndex", { link = "MoonflyWhiteLineActive" })
772 highlight(0, "BufferCurrentMod", { link = "MoonflyYellowLineActive" })
773 highlight(0, "BufferCurrentSign", { link = "MoonflyBlueLineActive" })
774 highlight(0, "BufferCurrentERROR", { link = "MoonflyRedLineActive" })
775 highlight(0, "BufferCurrentWARN", { link = "MoonflyYellowLineActive" })
776 highlight(0, "BufferCurrentINFO", { link = "MoonflyBlueLineActive" })
777 highlight(0, "BufferCurrentHINT", { link = "MoonflyWhiteLineActive" })
778 highlight(0, "BufferTabpages", { bg = grey236, fg = blue })
779 highlight(0, "BufferVisible", { link = "MoonflyGrey246Line" })
780 highlight(0, "BufferVisibleIndex", { link = "MoonflyGrey246Line" })
781 highlight(0, "BufferVisibleMod", { link = "MoonflyYellowLine" })
782 highlight(0, "BufferVisibleSign", { link = "MoonflyGrey246Line" })
783 highlight(0, "BufferVisibleERROR", { bg = grey234, fg = red })
784 highlight(0, "BufferVisibleWARN", { bg = grey234, fg = yellow })
785 highlight(0, "BufferVisibleINFO", { bg = grey234, fg = blue })
786 highlight(0, "BufferVisibleHINT", { bg = grey234, fg = white })
787 highlight(0, "BufferInactive", { bg = grey236, fg = grey246 })
788 highlight(0, "BufferInactiveMod", { bg = grey236, fg = yellow })
789 highlight(0, "BufferInactiveSign", { bg = grey236, fg = grey247 })
790 highlight(0, "BufferInactiveERROR", { bg = grey236, fg = red })
791 highlight(0, "BufferInactiveWARN", { bg = grey236, fg = yellow })
792 highlight(0, "BufferInactiveINFO", { bg = grey236, fg = blue })
793 highlight(0, "BufferInactiveHINT", { bg = grey236, fg = white })
794 highlight(0, "BufferAlternate", { link = "BufferCurrent" })
795 highlight(0, "BufferAlternateIndex", { link = "BufferCurrentIndex" })
796 highlight(0, "BufferAlternateMod", { link = "BufferCurrentMod" })
797 highlight(0, "BufferAlternateSign", { link = "BufferCurrentSign" })
798 highlight(0, "BufferAlternateERROR", { link = "BufferCurrentERROR" })
799 highlight(0, "BufferAlternateWARN", { link = "BufferCurrentWARN" })
800 highlight(0, "BufferAlternateINFO", { link = "BufferCurrentINFO" })
801 highlight(0, "BufferAlternateHINT", { link = "BufferCurrentHINT" })
802
803 -- Bufferline plugin
804 highlight(0, "BufferLineTabSelected", { fg = blue })
805 highlight(0, "BufferLineIndicatorSelected", { fg = blue })
806
807 -- nvim-cmp plugin
808 highlight(0, "CmpItemAbbrMatch", { link = "MoonflyYellow" })
809 highlight(0, "CmpItemAbbrMatchFuzzy", { link = "MoonflyCoral" })
810 highlight(0, "CmpItemKind", { link = "MoonflyWhite" })
811 highlight(0, "CmpItemKindClass", { link = "MoonflyEmerald" })
812 highlight(0, "CmpItemKindColor", { link = "MoonflyTurquoise" })
813 highlight(0, "CmpItemKindConstant", { link = "MoonflyPurple" })
814 highlight(0, "CmpItemKindConstructor", { link = "MoonflySky" })
815 highlight(0, "CmpItemKindEnum", { link = "MoonflyViolet" })
816 highlight(0, "CmpItemKindEnumMember", { link = "MoonflyTurquoise" })
817 highlight(0, "CmpItemKindEvent", { link = "MoonflyViolet" })
818 highlight(0, "CmpItemKindField", { link = "MoonflyTurquoise" })
819 highlight(0, "CmpItemKindFile", { link = "MoonflyBlue" })
820 highlight(0, "CmpItemKindFolder", { link = "MoonflyBlue" })
821 highlight(0, "CmpItemKindFunction", { link = "MoonflySky" })
822 highlight(0, "CmpItemKindInterface", { link = "MoonflyEmerald" })
823 highlight(0, "CmpItemKindKeyword", { link = "MoonflyViolet" })
824 highlight(0, "CmpItemKindMethod", { link = "MoonflySky" })
825 highlight(0, "CmpItemKindModule", { link = "MoonflyEmerald" })
826 highlight(0, "CmpItemKindOperator", { link = "MoonflyViolet" })
827 highlight(0, "CmpItemKindProperty", { link = "MoonflyTurquoise" })
828 highlight(0, "CmpItemKindReference", { link = "MoonflyTurquoise" })
829 highlight(0, "CmpItemKindSnippet", { link = "MoonflyGreen" })
830 highlight(0, "CmpItemKindStruct", { link = "MoonflyEmerald" })
831 highlight(0, "CmpItemKindText", { link = "MoonflyGrey249" })
832 highlight(0, "CmpItemKindTypeParameter", { link = "MoonflyEmerald" })
833 highlight(0, "CmpItemKindUnit", { link = "MoonflyTurquoise" })
834 highlight(0, "CmpItemKindValue", { link = "MoonflyTurquoise" })
835 highlight(0, "CmpItemKindVariable", { link = "MoonflyTurquoise" })
836 highlight(0, "CmpItemMenu", { link = "MoonflyGrey247" })
837
838 -- Indent Blankline plugin
839 highlight(0, "IndentBlanklineChar", { fg = grey235, nocombine = true })
840 highlight(0, "IndentBlanklineSpaceChar", { fg = grey235, nocombine = true })
841 highlight(0, "IndentBlanklineSpaceCharBlankline", { fg = grey235, nocombine = true })
842 highlight(0, "IndentBlanklineIndent6", { link = "MoonflyOrchid" })
843 highlight(0, "IndentBlanklineIndent5", { link = "MoonflyViolet" })
844 highlight(0, "IndentBlanklineIndent4", { link = "MoonflyBlue" })
845 highlight(0, "IndentBlanklineIndent3", { link = "MoonflyTurquoise" })
846 highlight(0, "IndentBlanklineIndent2", { link = "MoonflyYellow" })
847 highlight(0, "IndentBlanklineIndent1", { link = "MoonflyCrimson" })
848
849 -- Mini.nvim plugin
850 highlight(0, "MiniCompletionActiveParameter", { link = "MoonflyVisual" })
851 highlight(0, "MiniCursorword", { link = "MoonflyUnderline" })
852 highlight(0, "MiniCursorwordCurrent", { link = "MoonflyUnderline" })
853 highlight(0, "MiniIndentscopePrefix", { link = "MoonflyNoCombine" })
854 highlight(0, "MiniIndentscopeSymbol", { link = "MoonflyWhite" })
855 highlight(0, "MiniJump", { link = "SpellRare" })
856 highlight(0, "MiniStarterCurrent", { link = "MoonflyNoCombine" })
857 highlight(0, "MiniStarterFooter", { link = "Title" })
858 highlight(0, "MiniStarterHeader", { link = "MoonflyViolet" })
859 highlight(0, "MiniStarterInactive", { link = "Comment" })
860 highlight(0, "MiniStarterItem", { link = "Normal" })
861 highlight(0, "MiniStarterItemBullet", { link = "Delimiter" })
862 highlight(0, "MiniStarterItemPrefix", { link = "MoonflyYellow" })
863 highlight(0, "MiniStarterQuery", { link = "MoonflySky" })
864 highlight(0, "MiniStarterSection", { link = "MoonflyCrimson" })
865 highlight(0, "MiniStatuslineModeCommand", { link = "MoonflyYellowMode" })
866 highlight(0, "MiniStatuslineModeInsert", { link = "MoonflyEmeraldMode" })
867 highlight(0, "MiniStatuslineModeNormal", { link = "MoonflyBlueMode" })
868 highlight(0, "MiniStatuslineModeOther", { link = "MoonflyTurquoiseMode" })
869 highlight(0, "MiniStatuslineModeReplace", { link = "MoonflyCrimsonMode" })
870 highlight(0, "MiniStatuslineModeVisual", { link = "MoonflyPurpleMode" })
871 highlight(0, "MiniSurround", { link = "IncSearch" })
872 highlight(0, "MiniTablineCurrent", { link = "MoonflyWhiteLineActive" })
873 highlight(0, "MiniTablineFill", { link = "TabLineFill" })
874 highlight(0, "MiniTablineModifiedCurrent", { link = "MoonflyYellowLineActive" })
875 highlight(0, "MiniTablineModifiedVisible", { link = "MoonflyYellowLine" })
876 highlight(0, "MiniTablineTabpagesection", { link = "MoonflyBlueMode" })
877 highlight(0, "MiniTablineVisible", { link = "MoonflyGrey246Line" })
878 highlight(0, "MiniTestEmphasis", { link = "MoonflyUnderline" })
879 highlight(0, "MiniTestFail", { link = "MoonflyRed" })
880 highlight(0, "MiniTestPass", { link = "MoonflyGreen" })
881 highlight(0, "MiniTrailspace", { link = "MoonflyCrimsonMode" })
882 highlight(0, "MiniJump2dSpot", { fg = yellow, underline = true, nocombine = true })
883 highlight(0, "MiniStatuslineDevinfo", { bg = grey241, fg = white })
884 highlight(0, "MiniStatuslineFileinfo", { bg = grey241, fg = white })
885 highlight(0, "MiniStatuslineFilename", { bg = grey236, fg = grey247 })
886 highlight(0, "MiniStatuslineInactive", { bg = grey236, fg = grey247 })
887 highlight(0, "MiniTablineHidden", { bg = grey236, fg = grey246 })
888 highlight(0, "MiniTablineModifiedHidden", { bg = grey236, fg = yellow })
889
890 -- Dashboard plugin
891 highlight(0, "DashboardCenter", { link = "MoonflyViolet" })
892 highlight(0, "DashboardFooter", { link = "MoonflyCoral" })
893 highlight(0, "DashboardHeader", { link = "MoonflyBlue" })
894 highlight(0, "DashboardShortCut", { link = "MoonflyTurquoise" })
895
896 -- nvim-notify plugin
897 highlight(0, "NotifyERRORBorder", { link = "FloatBorder" })
898 highlight(0, "NotifyWARNBorder", { link = "FloatBorder" })
899 highlight(0, "NotifyINFOBorder", { link = "FloatBorder" })
900 highlight(0, "NotifyDEBUGBorder", { link = "FloatBorder" })
901 highlight(0, "NotifyTRACEBorder", { link = "FloatBorder" })
902 highlight(0, "NotifyERRORIcon", { link = "MoonflyRed" })
903 highlight(0, "NotifyWARNIcon", { link = "MoonflyYellow" })
904 highlight(0, "NotifyINFOIcon", { link = "MoonflyBlue" })
905 highlight(0, "NotifyDEBUGIcon", { link = "MoonflyGrey246" })
906 highlight(0, "NotifyTRACEIcon", { link = "MoonflyPurple" })
907 highlight(0, "NotifyERRORTitle", { link = "MoonflyRed" })
908 highlight(0, "NotifyWARNTitle", { link = "MoonflyYellow" })
909 highlight(0, "NotifyINFOTitle", { link = "MoonflyBlue" })
910 highlight(0, "NotifyDEBUGTitle", { link = "MoonflyGrey246" })
911 highlight(0, "NotifyTRACETitle", { link = "MoonflyPurple" })
912
913 -- lazy.nvim plugin
914 highlight(0, "LazyCommit", { link = "MoonflyEmerald" })
915 highlight(0, "LazyCommitType", { link = "MoonflyViolet" })
916 highlight(0, "LazyH1", { link = "MoonflyBlueMode" })
917 highlight(0, "LazyProgressDone", { link = "MoonflyBlue" })
918 highlight(0, "LazyProgressTodo", { link = "MoonflyGrey0" })
919 highlight(0, "LazyReasonCmd", { link = "MoonflyGreen" })
920 highlight(0, "LazyReasonPlugin", { link = "MoonflyOrchid" })
921 highlight(0, "LazyReasonRuntime", { link = "MoonflyViolet" })
922 highlight(0, "LazySpecial", { link = "MoonflyBlue" })
923 highlight(0, "LazyButton", { bg = grey235, fg = white })
924 highlight(0, "LazyButtonActive", { bg = grey239, fg = grey254 })
925 if g.moonflyNormalFloat ~= true then
926 highlight(0, "LazyNormal", { bg = grey233, fg = white })
927 end
928
929 -- mason.nvim plugin
930 highlight(0, "MasonError", { link = "MoonflyRed" })
931 highlight(0, "MasonHeader", { link = "MoonflyBlueMode" })
932 highlight(0, "MasonHeaderSecondary", { link = "MoonflyBlueMode" })
933 highlight(0, "MasonHeading", { link = "MoonflyGrey254" })
934 highlight(0, "MasonHighlight", { link = "MoonflyBlue" })
935 highlight(0, "MasonHighlightBlock", { link = "MoonflyBlueMode" })
936 highlight(0, "MasonHighlightBlockBold", { link = "MoonflyBlueMode" })
937 highlight(0, "MasonHighlightBlockBoldSecondary", { link = "MoonflyEmeraldMode" })
938 highlight(0, "MasonHighlightBlockSecondary", { link = "MoonflyEmeraldMode" })
939 highlight(0, "MasonHighlightSecondary", { link = "MoonflyEmerald" })
940 highlight(0, "MasonLink", { link = "MoonflyPurple" })
941 highlight(0, "MasonMuted", { link = "MoonflyGrey241" })
942 highlight(0, "MasonMutedBlock", { bg = grey235, fg = white })
943 highlight(0, "MasonMutedBlockBold", { bg = grey235, fg = grey254 })
944
945 -- linefly plugin
946 highlight(0, "LineflyNormal", { link = "MoonflyBlueMode" })
947 highlight(0, "LineflyInsert", { link = "MoonflyEmeraldMode" })
948 highlight(0, "LineflyVisual", { link = "MoonflyPurpleMode" })
949 highlight(0, "LineflyCommand", { link = "MoonflyYellowMode" })
950 highlight(0, "LineflyReplace", { link = "MoonflyCrimsonMode" })
951
952 -- lspsaga.nvim plugin
953 highlight(0, "TitleString", { link = "MoonflyBlue" })
954 highlight(0, "TitleIcon", { link = "MoonflyBlue" })
955 highlight(0, "TitleSymbol", { link = "MoonflyBlue" })
956 highlight(0, "SagaBorder", { link = "FloatBorder" })
957 highlight(0, "SagaNormal", { link = "Normal" })
958 highlight(0, "SagaExpand", { link = "MoonflyCranberry" })
959 highlight(0, "SagaCollapse", { link = "MoonflyCranberry" })
960 highlight(0, "SagaBeacon", { link = "MoonflyPurpleMode" })
961 highlight(0, "ActionPreviewTitle", { link = "MoonflyBlue" })
962 highlight(0, "CodeActionText", { link = "MoonflyYellow" })
963 highlight(0, "CodeActionConceal", { link = "MoonflyGreen" })
964 highlight(0, "FinderSelection", { link = "MoonflyTurquoise" })
965 highlight(0, "FinderFName", { link = "MoonflyWhite" })
966 highlight(0, "FinderCode", { link = "MoonflyWhite" })
967 highlight(0, "FinderIcon", { link = "MoonflyTurquoise" })
968 highlight(0, "FinderType", { link = "MoonflyViolet" })
969 highlight(0, "FinderSpinnerTitle", { link = "MoonflyPurple" })
970 highlight(0, "FinderSpinner", { link = "MoonflyPurple" })
971 highlight(0, "RenameNormal", { link = "MoonflyOrange" })
972 highlight(0, "DiagnosticSource", { link = "MoonflyGrey241" })
973 highlight(0, "DiagnosticText", { link = "MoonflyRed" })
974 highlight(0, "CallHierarchyIcon", { link = "MoonflyViolet" })
975 highlight(0, "CallHierarchyTitle", { link = "MoonflyCranberry" })
976 highlight(0, "SagaShadow", { link = "Normal" })
977 highlight(0, "OutlineIndent", { link = "MoonflyPurple" })
978
979 -- Noice plugin
980 highlight(0, "NoiceCmdlinePopup", { link = "MoonflyGrey244" })
981 highlight(0, "NoiceCmdlinePopupBorder", { link = "MoonflyGrey238" })
982 highlight(0, "NoiceCmdlinePopupBorderSearch", { link = "MoonflyGrey238" })
983 highlight(0, "NoiceCmdlinePrompt", { link = "MoonflyBlue" })
984 highlight(0, "NoiceCompletionItemKindDefault", { link = "MoonflyTurquoise" })
985 highlight(0, "NoiceConfirmBorder", { link = "MoonflyBlue" })
986 highlight(0, "NoiceFormatTitle", { link = "MoonflyCranberry" })
987
988 -- nvim-navic plugin
989 highlight(0, "NavicText", { bg = grey236, fg = grey249 })
990 highlight(0, "NavicSeparator", { bg = grey236, fg = white })
991 highlight(0, "NavicIconsOperator", { bg = grey236, fg = cranberry })
992 highlight(0, "NavicIconsBoolean", { link = "NavicIconsOperator" })
993 highlight(0, "NavicIconsClass", { bg = grey236, fg = emerald })
994 highlight(0, "NavicIconsConstant", { bg = grey236, fg = orange })
995 highlight(0, "NavicIconsConstructor", { bg = grey236, fg = sky })
996 highlight(0, "NavicIconsEnum", { bg = grey236, fg = violet })
997 highlight(0, "NavicIconsEnumMember", { bg = grey236, fg = turquoise })
998 highlight(0, "NavicIconsEvent", { link = "NavicIconsConstant" })
999 highlight(0, "NavicIconsField", { link = "NavicIconsEnumMember" })
1000 highlight(0, "NavicIconsFile", { bg = grey236, fg = blue })
1001 highlight(0, "NavicIconsFunction", { link = "NavicIconsConstructor" })
1002 highlight(0, "NavicIconsInterface", { link = "NavicIconsEnum" })
1003 highlight(0, "NavicIconsKey", { link = "NavicIconsEnumMember" })
1004 highlight(0, "NavicIconsMethod", { link = "NavicIconsConstructor" })
1005 highlight(0, "NavicIconsModule", { link = "NavicIconsEnumMember" })
1006 highlight(0, "NavicIconsNamespace", { link = "NavicIconsEnumMember" })
1007 highlight(0, "NavicIconsNull", { bg = grey236, fg = green })
1008 highlight(0, "NavicIconsNumber", { link = "NavicIconsConstant" })
1009 highlight(0, "NavicIconsObject", { link = "NavicIconsEnumMember" })
1010 highlight(0, "NavicIconsPackage", { link = "NavicIconsEnumMember" })
1011 highlight(0, "NavicIconsProperty", { link = "NavicIconsEnumMember" })
1012 highlight(0, "NavicIconsString", { bg = grey236, fg = khaki })
1013 highlight(0, "NavicIconsStruct", { link = "NavicIconsClass" })
1014 highlight(0, "NavicIconsTypeParameter", { link = "NavicIconsEnumMember" })
1015 highlight(0, "NavicIconsVariable", { link = "NavicIconsEnumMember" })
1016
1017 -- Rainbow Delimiters plugin
1018 highlight(0, "RainbowDelimiterRed", { link = "MoonflyRed" })
1019 highlight(0, "RainbowDelimiterYellow", { link = "MoonflyYellow" })
1020 highlight(0, "RainbowDelimiterBlue", { link = "MoonflyBlue" })
1021 highlight(0, "RainbowDelimiterOrange", { link = "MoonflyOrange" })
1022 highlight(0, "RainbowDelimiterGreen", { link = "MoonflyGreen" })
1023 highlight(0, "RainbowDelimiterViolet", { link = "MoonflyViolet" })
1024 highlight(0, "RainbowDelimiterCyan", { link = "MoonflyTurquoise" })
1025
1026 -- Neogit plugin
1027 highlight(0, "NeogitBranch", { link = "MoonflySky" })
1028 highlight(0, "NeogitDiffAddHighlight", { link = "MoonflyEmeraldLine" })
1029 highlight(0, "NeogitDiffContextHighlight", { bg = grey234 })
1030 highlight(0, "NeogitDiffDeleteHighlight", { link = "MoonflyCrimsonLine" })
1031 highlight(0, "NeogitHunkHeader", { link = "Pmenu" })
1032 highlight(0, "NeogitHunkHeaderHighlight", { link = "MoonflyBlueLineActive" })
1033 highlight(0, "NeogitRemote", { link = "MoonflyPurple" })
1034
1035 -- nvim-window-picker plugin
1036 highlight(0, "WindowPickerStatusLine", { link = "WinBar" })
1037 highlight(0, "WindowPickerStatusLineNC", { link = "WinBar" })
1038 highlight(0, "WindowPickerWinBar", { link = "WinBar" })
1039 highlight(0, "WindowPickerWinBarNC", { link = "WinBar" })
1040end
1041
1042return M