1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
|
-- Took from this repo https://github.com/rcarriga/dotfiles/blob/master/.config/nvim/init.lua
local c = {
transparent = "NONE",
grey1 = "#262626",
grey2 = "#424242",
grey3 = "#8B8B8B",
grey4 = "#bdbdbd",
grey5 = "#F8F8F8",
violet = "#D484FF",
blue = "#2f628e",
cyan = "#00f1f5",
green = "#A9FF68",
dark_green = "#142818",
yellow = "#FFF59D",
orange = "#F79000",
red = "#F70067",
dark_red = "#3F0001",
float_background = "#132434",
background = "NONE",
}
c.normal = c.grey5
c.border = c.grey3
c.decoration = c.orange
c.hidden = c.grey3
c.built_in = c.red
c.var_name = c.grey5
c.func_name = c.cyan
c.type_name = c.violet
c.key = c.cyan
c.val = c.violet
c.parameter = c.green
c.string = c.yellow
c.operator = c.orange
c.success = c.green
c.warning = c.orange
c.info = c.cyan
c.error = c.red
local highlights = {
Normal = { fg = c.normal },
NormalFloat = { fg = c.normal },
Border = { fg = c.border },
FloatBorder = { fg = c.border },
Decoration = { fg = c.orange },
Hidden = { fg = c.grey3 },
Path = { fg = c.blue },
BuiltIn = { fg = c.red },
VarName = { fg = c.grey5, bold = true },
FuncName = { fg = c.cyan },
TypeName = { fg = c.violet },
Key = { fg = c.cyan },
Val = { fg = c.violet },
String = { fg = c.yellow },
Operator = { fg = c.orange },
Success = { fg = c.green },
Warning = { fg = c.yellow },
Info = { fg = c.cyan },
Error = { fg = c.red },
User1 = { fg = c.success, bg = c.float_background },
User2 = { fg = c.warning, bg = c.float_background },
User3 = { fg = c.error, bg = c.float_background },
User4 = { fg = c.grey1, bg = c.info },
-- Vim
Cursor = { fg = c.grey1, bg = c.red },
CursorLine = { fg = c.transparent, bg = c.grey1 },
CursorColumn = { fg = c.transparent, bg = c.grey1 },
ColorColumn = { fg = c.transparent, bg = c.grey1 },
LineNr = { fg = c.hidden },
CursorLineNr = { fg = c.success, bold = true },
VertSplit = { fg = c.hidden },
MatchParen = { fg = c.key, underline = true },
StatusLine = { fg = c.normal },
StatusLineNC = { fg = c.hidden },
WinBar = { fg = c.normal },
WinBarNC = { fg = c.normal },
WinBarSep = { fg = c.decoration, bg = c.grey1 },
WinBarPath = { fg = c.grey5, bg = c.grey1 },
IncSearch = { fg = c.green, bold = true, underline = true },
Search = { fg = c.green, bold = true, underline = true },
Directory = { fg = c.cyan },
Folded = { fg = c.grey3 },
WildMenu = { fg = c.cyan },
VisualNOS = { fg = c.grey3, bg = c.yellow },
ModeMsg = { fg = c.yellow },
FoldColumn = { fg = c.grey4 },
MoreMsg = { fg = c.yellow },
cursorim = { fg = c.violet },
Pmenu = { fg = c.grey4 },
PmenuSel = { fg = c.transparent, bg = c.grey2, bold = true },
PMenuSbar = { fg = c.transparent },
PMenuThumb = { fg = c.transparent, bg = c.grey4 },
Visual = { fg = c.transparent, bg = c.grey1, bold = true, underline = true },
EndOfBuffer = { fg = c.grey1 },
Underlined = { fg = c.transparent, underline = true },
SpellBad = { fg = c.transparent, undercurl = true },
SpellCap = { fg = c.transparent, undercurl = true },
SpellLocal = { fg = c.transparent, undercurl = true },
SignColumn = { fg = c.key },
Question = { fg = c.info },
TabLineFill = { fg = c.grey3 },
NotificationInfo = { fg = c.normal, bg = c.float_background },
NotificationError = { fg = c.error, bg = c.float_background },
NotificationWarning = { fg = c.warning, bg = c.float_background },
WinSeparator = { fg = c.grey2 },
-- General
Boolean = { fg = c.val },
Character = { fg = c.val },
Comment = { fg = c.hidden },
Conditional = { fg = c.built_in },
Constant = { fg = c.var_name },
Define = { fg = c.built_in },
DiffAdd = { fg = c.background, bg = c.dark_green },
DiffChange = { fg = c.background, bg = c.grey1 },
DiffDelete = { fg = c.background, bg = c.dark_red },
DiffText = { fg = c.background, bg = c.dark_red },
ErrorMsg = { fg = c.error },
WarningMsg = { fg = c.warning },
Float = { fg = c.val },
Function = { fg = c.func_name },
Identifier = { fg = c.var_name },
Keyword = { fg = c.built_in },
Label = { fg = c.key },
NonText = { fg = c.hidden },
Number = { fg = c.val },
PreProc = { fg = c.key },
Special = { fg = c.cyan },
SpecialKey = { fg = c.built_in },
Statement = { fg = c.built_in },
Tag = { fg = c.key },
Title = { fg = c.normal, bold = true },
Todo = { fg = c.normal, bold = true },
Type = { fg = c.type_name },
SpecialComment = { fg = c.info, bold = true },
Typedef = { fg = c.type_name },
PreCondit = { fg = c.built_in },
Include = { fg = c.built_in },
Ignore = { fg = c.built_in },
Delimiter = { fg = c.decoration },
Conceal = { fg = c.transparent, bold = true },
-- gitsigns
GitSignsAdd = { fg = c.success, bold = true },
GitSignsDelete = { fg = c.error, bold = true },
GitSignsChange = { fg = c.yellow, bold = true },
--ini
dosiniLabel = { fg = c.key },
dosiniValue = { fg = c.val },
dosiniHeader = { fg = c.built_in },
-- TreeSitter
["@error"] = { fg = c.error },
["@comment"] = { fg = c.hidden },
["@punct.delimiter"] = { fg = c.decoration },
["@punct.bracket"] = { fg = c.decoration },
["@punct.special"] = { fg = c.decoration },
["@constant"] = { fg = c.var_name },
["@const.builtin"] = { fg = c.built_in },
["@const.macro"] = { fg = c.built_in },
["@string"] = { fg = c.string },
["@string.regex"] = { fg = c.operator },
["@string.escape"] = { fg = c.operator },
["@character"] = { fg = c.val },
["@number"] = { fg = c.val },
["@boolean"] = { fg = c.val },
["@float"] = { fg = c.val },
["@function"] = { fg = c.func_name },
["@func.builtin"] = { fg = c.built_in },
["@func.macro"] = { fg = c.built_in },
["@parameter"] = { fg = c.green },
["@parameter.reference"] = { fg = c.green },
["@method"] = { fg = c.func_name },
["@field"] = { fg = c.func_name },
["@property"] = { fg = c.parameter },
["@tag"] = { fg = c.func_name },
["@constructor"] = { fg = c.type_name },
["@conditional"] = { fg = c.built_in },
["@repeat"] = { fg = c.built_in },
["@label"] = { fg = c.key },
["@operator"] = { fg = c.operator },
["@keyword"] = { fg = c.built_in },
["@keyword.function"] = { fg = c.built_in },
["@exception"] = { fg = c.error },
["@type"] = { fg = c.type_name },
["@type.builtin"] = { fg = c.type_name },
["@structure"] = { fg = c.error },
["@include"] = { fg = c.built_in },
["@annotation"] = { fg = c.string },
["@text"] = { fg = c.string },
["@strong"] = { fg = c.transparent, bold = true },
["@emphasis"] = { fg = c.transparent, bold = true, underline = true },
["@underline"] = { fg = c.transparent, underline = true },
["@title"] = { fg = c.key, bold = true },
["@literal"] = { fg = c.decoration },
["@uri"] = { fg = c.info },
["@variable"] = { fg = c.var_name },
["@variable.builtin"] = { fg = c.built_in },
["@definition"] = { fg = c.transparent, bold = true },
["@definition.usage"] = { fg = c.transparent, bold = true, underline = true },
["@current.scope"] = { fg = c.transparent, bold = true },
["@text.reference"] = { fg = c.normal, bold = true, underline = true },
-- Golang
goFunctionCall = { fg = c.func_name },
goVarDefs = { fg = c.var_name },
-- Telescope
TelescopeBorder = { fg = c.border },
-- LSP
LspReferenceText = { fg = c.background, bold = true, underline = true },
LspReferenceRead = { fg = c.background, bold = true, underline = true },
LspReferenceWrite = { fg = c.background, bold = true, underline = true },
DiagnosticTruncateLine = { fg = c.hidden },
DiagnosticError = { fg = c.error },
DiagnosticWarn = { fg = c.warning },
DiagnosticInfo = { fg = c.info },
DiagnosticHint = { fg = c.info },
LspCodeLens = { fg = c.type_name, italic = true },
IblIndent = { fg = c.grey2 },
["@lsp.type.property.lua"] = { fg = c.key },
["@lsp.mod.defaultLibrary.lua"] = { fg = c.built_in },
["@lsp.type.parameter.python"] = { fg = c.parameter },
-- LSP Signature
LspSelectedParam = { fg = c.normal, bold = true, underline = true },
--lsp-inlayhints.nvim
LspInlayHint = { fg = c.type_name, italic = true },
--nvim-cmp
CmpItemAbbr = { fg = c.normal },
CmpDocumentationBorder = { fg = c.border },
CmpItemAbbrMatch = { fg = c.normal, bold = true },
CmpItemAbbrMatchFuzzy = { fg = c.normal, bold = true, underline = true },
CmpItemAbbrDeprecated = { fg = c.normal, bold = true },
CmpItemKindVariable = { fg = c.var_name, bold = true },
CmpItemKindInterface = { fg = c.type_name, bold = true },
CmpItemKindText = { fg = c.normal, bold = true },
CmpItemKindFunction = { fg = c.func_name, bold = true },
CmpItemKindMethod = { fg = c.func_name, bold = true },
CmpItemKindKeyword = { fg = c.built_in, bold = true },
CmpItemKindProperty = { fg = c.key, bold = true },
CmpItemKindUnit = { fg = c.yellow, bold = true },
CmpItemKindCopilt = { fg = c.green, bold = true },
CmpBorderedWindow_FloatBorder = { fg = c.border },
--neorg
["@neorg.headings.1.title"] = { fg = c.red, bold = true },
["@neorg.headings.2.title"] = { fg = c.orange, bold = true },
["@neorg.headings.3.title"] = { fg = c.cyan, bold = true },
["@neorg.headings.4.title"] = { fg = c.green, bold = true },
["@neorg.headings.5.title"] = { fg = c.yellow, bold = true },
["@neorg.headings.6.title"] = { fg = c.grey3, bold = true },
["@neorg.headings.1.prefix"] = { fg = c.red, bold = true },
["@neorg.headings.2.prefix"] = { fg = c.orange, bold = true },
["@neorg.headings.3.prefix"] = { fg = c.cyan, bold = true },
["@neorg.headings.4.prefix"] = { fg = c.green, bold = true },
["@neorg.headings.5.prefix"] = { fg = c.yellow, bold = true },
["@neorg.headings.6.prefix"] = { fg = c.grey3, bold = true },
["@neorg.todo_items.done.1"] = { fg = c.success },
["@neorg.todo_items.done.2"] = { fg = c.success },
["@neorg.todo_items.done.3"] = { fg = c.success },
["@neorg.todo_items.done.4"] = { fg = c.success },
["@neorg.todo_items.done.5"] = { fg = c.success },
["@neorg.todo_items.done.6"] = { fg = c.success },
["@neorg.todo_items.undone.1"] = { fg = c.cyan },
["@neorg.todo_items.undone.2"] = { fg = c.cyan },
["@neorg.todo_items.undone.3"] = { fg = c.cyan },
["@neorg.todo_items.undone.4"] = { fg = c.cyan },
["@neorg.todo_items.undone.5"] = { fg = c.cyan },
["@neorg.todo_items.undone.6"] = { fg = c.cyan },
["@neorg.todo_items.pending.1"] = { fg = c.yellow },
["@neorg.todo_items.pending.2"] = { fg = c.yellow },
["@neorg.todo_items.pending.3"] = { fg = c.yellow },
["@neorg.todo_items.pending.4"] = { fg = c.yellow },
["@neorg.todo_items.pending.5"] = { fg = c.yellow },
["@neorg.todo_items.pending.6"] = { fg = c.yellow },
logDate = { fg = c.info },
logLevelDebug = { fg = c.grey3 },
logLevelInfo = { fg = c.info },
MiniMapNormal = { fg = c.hidden },
MiniMapSymbolCount = { fg = c.info },
MiniMapSymbolLine = { fg = c.cyan },
MiniMapSymbolView = { fg = c.hidden },
NeogitDiffAddHighlight = { fg = "#859900" },
NeogitDiffDeleteHighlight = { fg = "#dc322f" },
NeogitDiffContextHighlight = { fg = "#b2b2b2" },
NeogitHunkHeader = { fg = "#cccccc" },
NeogitHunkHeaderHighlight = { fg = "#cccccc" },
FzfLuaBorder = { fg = c.border },
NeotestPassedWinBar = { fg = c.success, bg = c.grey1 },
NeotestFailedWinBar = { fg = c.error, bg = c.grey1 },
NeotestRunningWinBar = { fg = c.yellow, bg = c.grey1 },
NeotestSkippedWinBar = { fg = c.cyan, bg = c.grey1 },
AerialVariableIcon = { fg = c.green },
}
local M = {}
function M.set()
for group, args in pairs(highlights) do
vim.api.nvim_set_hl(0, group, args)
end
end
return M
|