├── .gitignore
├── .github
└── FUNDING.yml
├── assets
├── logo
│ ├── logo.png
│ └── logo.xcf
├── misc
│ └── transparent.png
├── palette
│ ├── circles
│ │ ├── cyan.png
│ │ ├── cyan.psd
│ │ ├── green.png
│ │ ├── green.psd
│ │ ├── pink.png
│ │ ├── pink.psd
│ │ ├── red.png
│ │ ├── red.psd
│ │ ├── comment.png
│ │ ├── comment.psd
│ │ ├── orange.png
│ │ ├── orange.psd
│ │ ├── purple.png
│ │ ├── purple.psd
│ │ ├── yellow.png
│ │ ├── yellow.psd
│ │ ├── background.png
│ │ ├── background.psd
│ │ ├── foreground.png
│ │ ├── foreground.psd
│ │ ├── currentline.png
│ │ └── currentline.psd
│ └── photoshop-swatches.aco
└── colors.css
├── LICENSE
├── SPEC.md
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | **/.DS_Store
2 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | ko_fi: neonvoidx
2 |
--------------------------------------------------------------------------------
/assets/logo/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/logo/logo.png
--------------------------------------------------------------------------------
/assets/logo/logo.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/logo/logo.xcf
--------------------------------------------------------------------------------
/assets/misc/transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/misc/transparent.png
--------------------------------------------------------------------------------
/assets/palette/circles/cyan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/cyan.png
--------------------------------------------------------------------------------
/assets/palette/circles/cyan.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/cyan.psd
--------------------------------------------------------------------------------
/assets/palette/circles/green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/green.png
--------------------------------------------------------------------------------
/assets/palette/circles/green.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/green.psd
--------------------------------------------------------------------------------
/assets/palette/circles/pink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/pink.png
--------------------------------------------------------------------------------
/assets/palette/circles/pink.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/pink.psd
--------------------------------------------------------------------------------
/assets/palette/circles/red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/red.png
--------------------------------------------------------------------------------
/assets/palette/circles/red.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/red.psd
--------------------------------------------------------------------------------
/assets/palette/circles/comment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/comment.png
--------------------------------------------------------------------------------
/assets/palette/circles/comment.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/comment.psd
--------------------------------------------------------------------------------
/assets/palette/circles/orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/orange.png
--------------------------------------------------------------------------------
/assets/palette/circles/orange.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/orange.psd
--------------------------------------------------------------------------------
/assets/palette/circles/purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/purple.png
--------------------------------------------------------------------------------
/assets/palette/circles/purple.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/purple.psd
--------------------------------------------------------------------------------
/assets/palette/circles/yellow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/yellow.png
--------------------------------------------------------------------------------
/assets/palette/circles/yellow.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/yellow.psd
--------------------------------------------------------------------------------
/assets/palette/circles/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/background.png
--------------------------------------------------------------------------------
/assets/palette/circles/background.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/background.psd
--------------------------------------------------------------------------------
/assets/palette/circles/foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/foreground.png
--------------------------------------------------------------------------------
/assets/palette/circles/foreground.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/foreground.psd
--------------------------------------------------------------------------------
/assets/palette/photoshop-swatches.aco:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/photoshop-swatches.aco
--------------------------------------------------------------------------------
/assets/palette/circles/currentline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/currentline.png
--------------------------------------------------------------------------------
/assets/palette/circles/currentline.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eldritch-theme/eldritch/HEAD/assets/palette/circles/currentline.psd
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Eldritch
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/assets/colors.css:
--------------------------------------------------------------------------------
1 | @define-color background #212338;
2 | @define-color currentline #323449;
3 | @define-color foreground #ebfafa;
4 | @define-color comment #7081d0;
5 | @define-color cyan #04d1f9;
6 | @define-color green #37f499;
7 | @define-color orange #f7c67f;
8 | @define-color pink #f265b5;
9 | @define-color purple #a48cf2;
10 | @define-color red #f16c75;
11 | @define-color yellow #f1fc79;
12 | @define-color g_dark #171928;
13 | @define-color bg_highlight #292e42;
14 | @define-color terminal_black #414868;
15 | @define-color fg_dark #ABB4DA;
16 | @define-color fg_gutter #3b4261;
17 | @define-color dark3 #6473B7;
18 | @define-color comment #7081d0;
19 | @define-color dark5 #5866A2;
20 | @define-color visual #76639e;
21 | @define-color dark_cyan #10A1BD;
22 | @define-color magenta2 #bf4f8e;
23 | @define-color magenta3 #722f55;
24 | @define-color dark_yellow #c0c95f;
25 | @define-color dark_green #33C57F;
26 | @define-color bright_red #f0313e;
27 |
--------------------------------------------------------------------------------
/SPEC.md:
--------------------------------------------------------------------------------
1 | ### Eldritch Color Specification
2 |
3 | #### 1. Color Palette
4 |
5 | ##### 1.1 Base Colors (Default Palette)
6 |
7 | **Background Colors:**
8 | - `bg`: #212337 - Main background
9 | - `bg_dark`: #171928 - Darker background variant (popups, statusline)
10 | - `bg_highlight`: #292e42 - Highlighted background (current line)
11 | - `terminal_black`: #414868 - Terminal black color
12 |
13 | **Foreground Colors:**
14 | - `fg`: #ebfafa - Main foreground text
15 | - `fg_dark`: #ABB4DA - Dimmed foreground
16 | - `fg_gutter`: #3b4261 - Gutter foreground (line numbers)
17 | - `fg_gutter_light`: #7081d0 - Lighter gutter variant
18 |
19 | **Primary Colors:**
20 | - `cyan`: #04d1f9 - Primary cyan
21 | - `bright_cyan`: #39DDFD - Bright cyan variant
22 | - `dark_cyan`: #10A1BD - Dark cyan variant
23 | - `green`: #37f499 - Primary green
24 | - `bright_green`: #00FA82 - Bright green variant
25 | - `dark_green`: #33C57F - Dark green variant
26 | - `magenta`: #a48cf2 - Primary magenta/purple
27 | - `purple`: #a48cf2 - Alias for magenta
28 | - `magenta2`: #bf4f8e - Secondary magenta
29 | - `magenta3`: #722f55 - Tertiary magenta
30 | - `pink`: #f265b5 - Pink color
31 | - `orange`: #f7c67f - Orange color
32 | - `yellow`: #f1fc79 - Primary yellow
33 | - `dark_yellow`: #c0c95f - Dark yellow variant
34 | - `red`: #f16c75 - Primary red
35 | - `bright_red`: #f0313e - Bright red variant
36 |
37 | **UI Colors:**
38 | - `visual`: #76639e - Visual selection
39 | - `bg_visual`: #76639e - Visual selection background
40 | - `comment`: #7081d0 - Comments and secondary text
41 | - `dark3`: #6473B7 - Dark blue tone 3
42 | - `dark5`: #5866A2 - Dark blue tone 5
43 | - `none`: NONE - Transparent
44 |
45 | ##### 1.2 Computed Colors
46 |
47 | These colors are dynamically generated based on the base palette:
48 |
49 | - `black`: Darkened version of `bg` (80% darker, min #000000)
50 | - `border`: Same as `black`
51 | - `border_highlight`: Darkened version of `comment` (80% darker)
52 | - `bg_popup`: Same as `bg_dark`
53 | - `bg_statusline`: Same as `bg_dark`
54 | - `bg_sidebar`: Configurable (transparent/dark/normal)
55 | - `bg_float`: Configurable (transparent/dark/normal)
56 | - `bg_search`: Same as `comment`
57 | - `fg_sidebar`: Same as `fg_dark`
58 | - `fg_float`: Same as `fg`
59 |
60 | **Semantic Colors:**
61 | - `error`: Same as `red` (#f16c75)
62 | - `warning`: Same as `yellow` (#f1fc79)
63 | - `info`: Same as `comment` (#7081d0)
64 | - `hint`: Same as `dark_green` (#33C57F)
65 | - `todo`: Same as `green` (#37f499)
66 |
67 | ##### 1.3 Git Colors
68 |
69 | - `git.add`: #37f499 (green)
70 | - `git.change`: #7081d0 (comment)
71 | - `git.delete`: #f16c75 (red)
72 | - `git.ignore`: #6473B7 (dark3)
73 |
74 | - `gitSigns.add`: #37f499 (green)
75 | - `gitSigns.change`: #7081d0 (comment)
76 | - `gitSigns.delete`: #f16c75 (red)
77 |
78 | ##### 1.4 Diff Colors
79 |
80 | - `diff.add`: Darkened green (15% darker)
81 | - `diff.delete`: Darkened red (15% darker)
82 | - `diff.change`: Darkened yellow (15% darker)
83 | - `diff.text`: Same as `cyan` (#04d1f9)
84 |
85 | - `delta.add`: Darkened green (45% darker)
86 | - `delta.delete`: Darkened red (45% darker)
87 |
88 | #### 2. Highlight Group Mappings
89 |
90 | ##### 2.1 Base Vim Highlights
91 |
92 | **Editor UI:**
93 | - `Normal`: fg → Main foreground, bg → Main background
94 | - `NormalFloat`: fg → Main foreground, bg → Main background
95 | - `SignColumn`: bg → Main background
96 | - `Cursor`: Reversed colors
97 | - `CursorLineNr`: fg → Green, bold
98 | - `CursorLine`: bg → Selection color
99 | - `ColorColumn`: bg → Selection color
100 | - `LineNr`: fg → Comment color
101 | - `VertSplit` / `WinSeparator`: fg → Black
102 | - `Folded`: fg → Comment color
103 |
104 | **Menus & Popups:**
105 | - `Pmenu`: fg → White, bg → Menu color
106 | - `PmenuSel`: fg → White, bg → Selection color
107 | - `PmenuSbar`: bg → Main background
108 | - `PmenuThumb`: bg → Selection color
109 | - `FloatBorder`: fg → Green
110 |
111 | **Comments & Strings:**
112 | - `Comment`: fg → Comment color (italic configurable)
113 | - `String`: fg → Yellow
114 | - `Character`: fg → Pink
115 | - `Number`: fg → Orange
116 | - `Boolean`: fg → Cyan
117 | - `Float`: fg → Orange
118 |
119 | **Keywords & Functions:**
120 | - `Keyword`: fg → Cyan
121 | - `Function`: fg → Yellow
122 | - `Operator`: fg → Green
123 | - `Identifier`: fg → Cyan
124 | - `Statement`: fg → Green
125 | - `Conditional`: fg → Purple
126 | - `Repeat`: fg → Purple
127 | - `Exception`: fg → Green
128 |
129 | **Types & Preprocessor:**
130 | - `Type`: fg → Orange
131 | - `StorageClass`: fg → Purple
132 | - `Structure`: fg → Yellow
133 | - `PreProc`: fg → Yellow
134 | - `Include`: fg → Green
135 | - `Define`: fg → Green
136 | - `Macro`: fg → Green
137 |
138 | **Special Elements:**
139 | - `Special`: fg → Pink, italic
140 | - `SpecialComment`: fg → Comment, italic
141 | - `Title`: fg → Cyan
142 | - `Label`: fg → Cyan
143 | - `Todo`: fg → Green, bold, italic
144 | - `Error`: fg → Bright red
145 | - `Underlined`: fg → Cyan, underlined
146 |
147 | **Search & Selection:**
148 | - `Search`: fg → Black, bg → Orange
149 | - `IncSearch`: fg → Orange, bg → Comment
150 | - `Visual`: bg → Visual color
151 | - `VisualNOS`: fg → Visual color
152 |
153 | **Status & Messages:**
154 | - `StatusLine`: fg → White, bg → Black
155 | - `StatusLineNC`: fg → Comment
156 | - `ErrorMsg`: fg → Bright red
157 | - `WarningMsg`: fg → Yellow
158 | - `Question`: fg → Green
159 |
160 | **Diff:**
161 | - `DiffAdd`: fg → Background, bg → Pink
162 | - `DiffChange`: fg → Orange
163 | - `DiffDelete`: fg → Red
164 | - `DiffText`: fg → Comment
165 |
166 | **Misc:**
167 | - `Directory`: fg → Cyan
168 | - `NonText`: fg → Nontext color
169 | - `MatchParen`: fg → Foreground, underlined
170 | - `Conceal`: fg → Comment
171 |
172 | ##### 2.2 TreeSitter Highlights
173 |
174 | **Basic Elements:**
175 | - `@error`: fg → Bright red
176 | - `@punctuation.delimiter`: fg → Foreground
177 | - `@punctuation.bracket`: fg → Foreground
178 | - `@markup.list`: fg → Cyan
179 |
180 | **Constants:**
181 | - `@constant`: fg → Bright cyan
182 | - `@constant.builtin`: fg → Bright cyan
183 | - `@constant.macro`: fg → Cyan
184 | - `@markup.link.label.symbol`: fg → Bright cyan
185 |
186 | **Strings:**
187 | - `@string`: fg → Yellow
188 | - `@string.regexp`: fg → Yellow
189 | - `@string.escape`: fg → Cyan
190 | - `@string.special.symbol`: fg → Green
191 | - `@character`: fg → Pink
192 | - `@number`: fg → Green
193 | - `@boolean`: fg → Green
194 | - `@number.float`: fg → Pink
195 |
196 | **Functions:**
197 | - `@function`: fg → Purple
198 | - `@function.builtin`: fg → Cyan
199 | - `@function.macro`: fg → Purple
200 | - `@function.method`: fg → Purple
201 |
202 | **Variables:**
203 | - `@variable`: fg → Red
204 | - `@variable.builtin`: fg → Green
205 | - `@variable.parameter`: fg → Orange
206 | - `@variable.parameter.reference`: fg → Orange
207 | - `@variable.member`: fg → Orange
208 | - `@property`: fg → Bright green
209 |
210 | **Keywords:**
211 | - `@keyword`: fg → Green
212 | - `@keyword.function`: fg → Cyan
213 | - `@keyword.function.ruby`: fg → Purple
214 | - `@keyword.operator`: fg → Purple
215 | - `@keyword.conditional`: fg → Purple
216 | - `@keyword.repeat`: fg → Purple
217 | - `@keyword.exception`: fg → Green
218 | - `@keyword.include`: fg → Purple
219 |
220 | **Types:**
221 | - `@type`: fg → Bright purple
222 | - `@type.builtin`: fg → Cyan, italic
223 | - `@type.qualifier`: fg → Purple
224 | - `@type.def`: fg → Yellow
225 | - `@constructor`: fg → Cyan
226 |
227 | **Other:**
228 | - `@annotation`: fg → Yellow
229 | - `@attribute`: fg → Cyan
230 | - `@module`: fg → Orange
231 | - `@operator`: fg → Purple
232 | - `@label`: fg → Cyan
233 | - `@structure`: fg → Green
234 |
235 | **Markup:**
236 | - `@markup`: fg → Orange
237 | - `@markup.strong`: fg → Orange, bold
238 | - `@markup.emphasis`: fg → Yellow, italic
239 | - `@markup.underline`: fg → Orange
240 | - `@markup.heading`: fg → Purple, bold
241 | - `@markup.raw`: fg → Yellow
242 | - `@markup.link.url`: fg → Yellow, italic
243 | - `@markup.link`: fg → Orange, bold
244 |
245 | **Tags:**
246 | - `@tag`: fg → Cyan
247 | - `@tag.attribute`: fg → Pink
248 | - `@tag.delimiter`: fg → Cyan
249 |
250 | **Semantic:**
251 | - `@class`: fg → Cyan
252 | - `@struct`: fg → Cyan
253 | - `@enum`: fg → Cyan
254 | - `@enumMember`: fg → Green
255 | - `@event`: fg → Cyan
256 | - `@interface`: fg → Cyan
257 | - `@modifier`: fg → Cyan
258 | - `@regexp`: fg → Yellow
259 | - `@typeParameter`: fg → Cyan
260 | - `@decorator`: fg → Cyan
261 |
262 | ##### 2.3 Plugin-Specific Highlights
263 |
264 | **Git Signs:**
265 | - `GitSignsAdd`: fg → Bright cyan
266 | - `GitSignsChange`: fg → Cyan
267 | - `GitSignsDelete`: fg → Bright red
268 | - `GitSignsAddLn`: fg → Black, bg → Bright cyan
269 | - `GitSignsChangeLn`: fg → Black, bg → Cyan
270 | - `GitSignsDeleteLn`: fg → Black, bg → Bright red
271 | - `GitSignsCurrentLineBlame`: fg → White
272 |
273 | **Telescope:**
274 | - `TelescopePromptBorder`: fg → Cyan
275 | - `TelescopeResultsBorder`: fg → Green
276 | - `TelescopePreviewBorder`: fg → Green
277 | - `TelescopeSelection`: fg → White, bg → Selection
278 | - `TelescopeMultiSelection`: fg → Green, bg → Selection
279 | - `TelescopeNormal`: fg → Foreground, bg → Background (or transparent)
280 | - `TelescopeMatching`: fg → Pink
281 | - `TelescopePromptPrefix`: fg → Green
282 | - `TelescopeResultsDiffDelete`: fg → Red
283 | - `TelescopeResultsDiffChange`: fg → Cyan
284 | - `TelescopeResultsDiffAdd`: fg → Pink
285 |
286 | **Flash:**
287 | - `FlashLabel`: bg → Red, fg → Bright white
288 |
289 | **Oil-Git:**
290 | - `OilGitAdded`: fg → Green
291 | - `OilGitModified`: fg → Yellow
292 | - `OilGitRenamed`: fg → Purple
293 | - `OilGitUntracked`: fg → Cyan
294 | - `OilGitIgnored`: fg → Comment
295 |
296 | **NvimTree:**
297 | - `NvimTreeNormal`: fg → Foreground, bg → Menu
298 | - `NvimTreeVertSplit`: fg → Background, bg → Background
299 | - `NvimTreeRootFolder`: fg → Foreground, bold
300 | - `NvimTreeGitDirty`: fg → Yellow
301 | - `NvimTreeGitNew`: fg → Bright cyan
302 | - `NvimTreeImageFile`: fg → Purple
303 | - `NvimTreeFolderIcon`: fg → Green
304 | - `NvimTreeIndentMarker`: fg → Nontext
305 | - `NvimTreeEmptyFolderName`: fg → Comment
306 | - `NvimTreeFolderName`: fg → Foreground
307 | - `NvimTreeSpecialFile`: fg → Purple, underlined
308 | - `NvimTreeOpenedFolderName`: fg → Foreground
309 | - `NvimTreeCursorLine`: bg → Selection
310 |
311 | **NeoTree:**
312 | - `NeoTreeNormal`: fg → Foreground, bg → Menu
313 | - `NeoTreeNormalNC`: fg → Foreground, bg → Menu
314 | - `NeoTreeDirectoryName`: fg → Foreground
315 | - `NeoTreeGitUnstaged`: fg → Bright magenta
316 | - `NeoTreeGitModified`: fg → Bright magenta
317 | - `NeoTreeGitUntracked`: fg → Bright cyan
318 | - `NeoTreeDirectoryIcon`: fg → Green
319 | - `NeoTreeIndentMarker`: fg → Nontext
320 | - `NeoTreeDotfile`: fg → Comment
321 |
322 | **Bufferline:**
323 | - `BufferLineIndicatorSelected`: fg → Green
324 | - `BufferLineFill`: bg → Background
325 | - `BufferLineBufferSelected`: bg → Background
326 | - `BufferLineSeparator`: fg → Black
327 |
328 | **LSP Diagnostics:**
329 | - `DiagnosticError`: fg → Red
330 | - `DiagnosticWarn`: fg → Yellow
331 | - `DiagnosticInfo`: fg → Cyan
332 | - `DiagnosticHint`: fg → Cyan
333 | - `DiagnosticSign*`: Same as Diagnostic* variants
334 | - `DiagnosticFloating*`: Same as Diagnostic* variants
335 | - `DiagnosticVirtualText*`: Same as Diagnostic* variants
336 | - `LspReferenceText`: fg → Orange
337 | - `LspReferenceRead`: fg → Orange
338 | - `LspReferenceWrite`: fg → Orange
339 | - `LspCodeLens`: fg → Cyan
340 | - `LspInlayHint`: fg → #969696, bg → #2f3146
341 |
342 | **LSP Saga:**
343 | - All borders: fg → Green
344 | - `LspSagaBorderTitle`: fg → Cyan
345 | - `CodeActionNumber`: fg → Cyan
346 |
347 | **Completion (Cmp):**
348 | - `CmpItemAbbrDeprecated`: fg → White, bg → Background
349 | - `CmpItemAbbrMatch`: fg → Cyan, bg → Background
350 | - `CmpItemAbbr`: fg → White, bg → Background
351 | - `CmpItemKind`: fg → White, bg → Background
352 | - Various `CmpItemKind*` link to corresponding treesitter groups
353 |
354 | **Dashboard:**
355 | - `DashboardShortCut`: fg → Cyan
356 | - `DashboardHeader`: fg → Green
357 | - `DashboardCenter`: fg → Foreground
358 | - `DashboardFooter`: fg → Green, italic
359 | - `DashboardKey`: fg → Orange
360 | - `DashboardDesc`: fg → Cyan
361 | - `DashboardIcon`: fg → Cyan, bold
362 |
363 | **Alpha:**
364 | - `AlphaHeader`: fg → Green
365 | - `AlphaButtons`: fg → Cyan
366 | - `AlphaShortcut`: fg → Orange
367 | - `AlphaFooter`: fg → Green, italic
368 |
369 | **DAP UI:**
370 | - `DapUIPlayPause`: fg → Bright cyan
371 | - `DapUIRestart`: fg → Pink
372 | - `DapUIStop`: fg → Red
373 | - `DapUIStepOver`: fg → Cyan
374 | - `DapUIStepInto`: fg → Cyan
375 | - `DapUIStepOut`: fg → Cyan
376 | - `DapUIStepBack`: fg → Cyan
377 | - `DapUIType`: fg → Bright blue
378 | - `DapUIScope`: fg → Bright purple
379 | - `DapUIModifiedValue`: fg → Bright purple, bold
380 | - `DapUIDecoration`: fg → Bright purple
381 | - `DapUIThread`: fg → Bright cyan
382 | - `DapUIStoppedThread`: fg → Bright purple
383 | - `DapUISource`: fg → Bright blue
384 | - `DapUILineNumber`: fg → Bright purple
385 | - `DapUIFloatBorder`: fg → Green
386 | - `DapUIWatchesEmpty`: fg → Purple
387 | - `DapUIWatchesValue`: fg → Bright cyan
388 | - `DapUIWatchesError`: fg → Purple
389 | - `DapUIBreakpointsPath`: fg → Bright purple
390 | - `DapUIBreakpointsInfo`: fg → Bright cyan
391 | - `DapUIBreakpointsCurrentLine`: fg → Bright cyan, bold
392 | - `DapUIWinSelect`: fg → Bright purple, bold
393 |
394 | **Notify:**
395 | - `NotifyInfoIcon`: fg → Pink
396 | - `NotifyInfoTitle`: fg → Pink
397 | - `NotifyInfoBorder`: fg → Green
398 | - `NotifyErrorIcon`: fg → Red
399 | - `NotifyErrorTitle`: fg → Red
400 | - `NotifyErrorBorder`: fg → #DD6E6B
401 | - `NotifyWarnIcon`: fg → Orange
402 | - `NotifyWarnTitle`: fg → Orange
403 | - `NotifyWarnBorder`: fg → Yellow
404 |
405 | **Other:**
406 | - `IndentBlanklineContextChar`: fg → Bright red, nocombine
407 | - `MiniIndentscopeSymbol`: fg → #B5629B
408 | - `MiniIndentscopeSymbolOff`: fg → #B5629B
409 | - Rainbow delimiters: Various foreground colors cycling through palette
410 |
411 | #### 3. Missing Color Definitions
412 |
413 | The following colors are referenced in `groups.lua` but are **not defined** in `colors.lua` base palettes. These need to be computed or added:
414 |
415 | - `bright_blue` - Used in DAP UI
416 | - `bright_magenta` - Used in NeoTree git status
417 | - `bright_purple` - Used in @type and DAP UI
418 | - `bright_white` - Used in FlashLabel
419 | - `menu` - Used in NvimTree, NeoTree, and debug highlights
420 | - `nontext` - Used for NonText, SpecialKey, indent markers
421 | - `selection` - Used for CursorLine, ColorColumn, and various selections
422 | - `white` - Used in StatusLine, Terminal, and menus
423 |
424 | #### 4. Implementation Notes
425 |
426 | - **Transparency**: Set `bg` to "NONE" for transparent background mode
427 | - **Sidebar Styles**: Can be "transparent", "dark", or "normal"
428 | - **Float Styles**: Can be "transparent", "dark", or "normal"
429 | - **Style Options**: Comments, keywords, functions, and variables support italic/bold configuration
430 | - **Computed Colors**: Many colors are dynamically darkened/lightened using util functions
431 | - **LSP Semantic Tokens**: Most link to corresponding TreeSitter or base highlight groups
432 | - **Plugin Support**: Extensive plugin integrations included
433 |
434 | #### 5. Color Usage Summary
435 |
436 | **Most Common Foreground Colors:**
437 | 1. Green (#37f499) - Keywords, operators, statements, borders
438 | 2. Cyan (#04d1f9) - Keywords, identifiers, labels, tags
439 | 3. Yellow (#f1fc79) - Strings, functions, preprocessor
440 | 4. Purple (#a48cf2) - Conditionals, repeats, functions
441 | 5. Pink (#f265b5) - Characters, special elements, attributes
442 | 6. Orange (#f7c67f) - Numbers, types, modules
443 | 7. Red (#f16c75) - Variables, errors, deletions
444 | 8. Comment (#7081d0) - Comments, secondary UI elements
445 |
446 | **Typical Background Uses:**
447 | - Main background: #212337
448 | - Highlight/selection: #292e42 or #76639e
449 | - Dark UI: #171928
450 | - Gutter: #3b4261
451 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | 
3 |
4 | Eldritch Theme
5 |
6 |
7 |
8 |
15 |
16 |
17 | Eldritch is a community-driven dark theme inspired by Lovecraftian horror. With tones from the dark abyss and an emphasis on green and blue, it caters to those who appreciate the darker side of life.
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | This repo serves as a repository for all the links to Eldritch theme ports as well as the general documentation and contribution guidelines. The theme is available for a variety of applications and is constantly being updated, expanded, and improved.
28 |
29 |
30 | ### 🎨 Palette
31 |
32 |
33 |
34 | | |
35 | Labels |
36 | Descriptor |
37 | Hex |
38 | RGB |
39 | HSL |
40 | CMYK |
41 | Ansi16 |
42 | Ansi256 |
43 |
44 |
45 |  |
46 | Sunken Depths Grey |
47 | Background |
48 | #212337 |
49 | rgb(33, 35, 55) |
50 | hsl(234.55 deg, 25%, 17.25%) |
51 | cmyk(40, 36, 0, 78) |
52 | 0 |
53 | 236
54 | |
55 |
56 |  |
57 | Shallow Depths Grey |
58 | Current Line |
59 | #323449 |
60 | rgb(50, 52, 73) |
61 | hsl(234.78 deg, 18.7%, 24.12%) |
62 | cmyk(32, 42, 0, 5) |
63 | 8 |
64 | 59
65 | |
66 |
67 |  |
68 | Lighthouse White |
69 | Foreground |
70 | #ebfafa |
71 | rgb(235, 250, 250) |
72 | hsl(180 deg, 60%, 95.1%) |
73 | cmyk(6, 0, 0, 2) |
74 | 15 |
75 | 231
76 | |
77 |
78 |  |
79 | The Old One Purple |
80 | Comment |
81 | #7081d0 |
82 | rgb(112, 129, 208) |
83 | hsl(229.38 deg, 50.53%, 62.75%) |
84 | cmyk(46, 38, 0, 18) |
85 | 4 |
86 | 105 |
87 |
88 |
89 |  |
90 | Watery Tomb Blue |
91 | Secondary (Cyan) |
92 | #04d1f9 |
93 | rgb(4, 209, 249) |
94 | hsl(189.8 deg, 96.84%, 49.61%) |
95 | cmyk(98, 16, 0, 2) |
96 | 14 |
97 | 81
98 | |
99 |
100 |  |
101 | Great Old One Green |
102 | Primary (Green) |
103 | #37f499 |
104 | rgb(55, 244, 153) |
105 | hsl(151.11 deg, 89.57%, 58.63%) |
106 | cmyk(40, 36, 0, 78) |
107 | 10 |
108 | 120
109 | |
110 |
111 |  |
112 | Dreaming Orange |
113 | Orange |
114 | #f7c67f |
115 | rgb(247, 198, 127) |
116 | hsl(35.5 deg, 88.24%, 73.33%) |
117 | cmyk(0, 20, 49, 3) |
118 | 11 |
119 | 222 |
120 |
121 |
122 |  |
123 | Pustule Pink |
124 | Pink |
125 | #f265b5 |
126 | rgb(242, 101, 181) |
127 | hsl(325.96 deg, 84.43%, 67.25%) |
128 | cmyk(0, 58, 25, 5) |
129 | 13 |
130 | 205 |
131 |
132 |
133 |  |
134 | Lovecraft Purple |
135 | Purple (Accent) |
136 | #a48cf2 |
137 | rgb(164,140,242) |
138 | hsl(254.12 deg, 79.69%, 74.9%) |
139 | cmyk(32,42,0,5) |
140 | 5 |
141 | 63 |
142 |
143 |
144 |  |
145 | R'lyeh' Red |
146 | Red (Error) |
147 | #f16c75 |
148 | rgb(241, 108, 117) |
149 | hsl(355.94 deg, 82.61%, 68.43%) |
150 | cmyk(0,55,51,5) |
151 | 9 |
152 | 203 |
153 |
154 |
155 |  |
156 | Gold of Yuggoth |
157 | Yellow |
158 | #f1fc79 |
159 | rgb(241, 252, 121) |
160 | hsl(65.04 deg, 95.62%, 73.14%) |
161 | cmyk(4, 0, 52, 1) |
162 | 11 |
163 | 227 |
164 |
165 |
166 |
167 | ### 🧵 Ports
168 |
169 |
170 | 🌲 Environments
171 |
172 |
173 |
174 | | Environment |
175 | Theme Repository |
176 | Description |
177 |
178 |
179 | | Omarchy |
180 | omarchy |
181 | Beautiful, Modern & Opinionated Linux by DHH |
182 |
183 |
184 |
185 |
186 |
187 | 🗒️ IDEs
188 |
189 |
190 |
191 | | Application |
192 | Theme Repository |
193 | Description |
194 |
195 |
196 | | Visual Studio Code |
197 | vscode |
198 | A highly popular Electron based IDE by Microsoft |
199 |
200 |
201 | | NeoVim |
202 | eldritch.nvim |
203 | NeoVim is a hyperextensible Vim-based text editor |
204 |
205 |
206 | | Emacs |
207 | eldritch.emacs |
208 | An extensible, customizable, free/libre text editor — and more. |
209 |
210 |
211 | | Helix |
212 | eldritch-helix |
213 | A post-modern modal text editor. |
214 |
215 |
216 |
217 |
218 |
219 | 🖥️ Terminals
220 |
221 |
222 |
223 | | Application |
224 | Theme Repository |
225 | Description |
226 |
227 |
228 | | Windows Terminal |
229 | windows-terminal |
230 | The Windows Terminal is a modern, fast, efficient, powerful, and productive terminal application for users of command-line tools and shells
231 | |
232 |
233 |
234 | | Wezterm |
235 | wezterm |
236 | WezTerm is a powerful cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
237 | |
238 |
239 |
240 | | Kitty |
241 | kitty |
242 | The fast, feature-rich, GPU based terminal emulator |
243 |
244 |
245 | | Ghostty |
246 | ghostty |
247 | Ghostty is a fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration. |
248 |
249 |
250 | | Warp |
251 | warp |
252 | Warp is the terminal reimagined with AI and collaborative tools for better productivity |
253 |
254 |
255 | | iTerm2 |
256 | iTerm2 |
257 | iTerm2 is a replacement for Terminal and the successor to iTerm. It works on Macs with macOS 10.14 or newer. iTerm2 brings the terminal into the modern age with features you never knew you always wanted. |
258 |
259 |
260 | | Alacritty |
261 | Alacritty |
262 | Alacritty - A fast, cross-platform, OpenGL terminal emulator. |
263 |
264 |
265 | | Termux |
266 | eldritch-termux |
267 | Termux is a terminal emulator and GNU/Linux environment application for Android OS. |
268 |
269 |
270 | | Ptyxis |
271 | ptyxis |
272 | Ptyxis is GTK4 terminal emulator and the default terminal for the fedora workstation |
273 |
274 |
275 |
276 |
277 |
278 | 🌐 Browsers
279 |
280 |
281 |
282 | | Application |
283 | Theme Repository |
284 | Description |
285 |
286 |
287 | | Vivaldi |
288 | vivaldi |
289 | A Chromium based browser focused on security and high levels of customization. |
290 |
291 |
292 | | Firefox |
293 | firefox |
294 | No shady privacy policies or back doors for advertisers. Just a lightning fast browser that doesn’t sell you out. |
295 |
296 |
297 | | Zen |
298 | zen |
299 | Firefox based browser with a focus on privacy and customization. |
300 |
301 |
302 | 🙊 UserJS scripts & Browser Extensions
303 |
304 |
305 | | Site |
306 | Theme Repository |
307 | Description |
308 |
309 |
310 | | DuckDuckGo |
311 | duckduckgo |
312 | A search engine focused on privacy |
313 |
314 |
315 | | Tridactyl |
316 | tridactyl |
317 | Replace Firefox's default control mechanism with one modelled on the one true editor, Vim. |
318 |
319 |
320 |
321 |
322 |
323 | 🗒️ Note Taking
324 |
325 |
326 |
327 | | Application |
328 | Theme Repository |
329 | Description |
330 |
331 |
332 | | Obsidian |
333 | obsidian |
334 | Obsidian is the private and flexible writing app that adapts to the way you think. |
335 |
336 |
337 |
338 |
339 |
340 | 🐚 Shell & CLI Applications
341 |
342 |
343 |
344 | | Application |
345 | Theme Repository |
346 | Description |
347 |
348 |
349 | | Fish Shell |
350 | fish |
351 | The user-friendly command line shell. |
352 |
353 | | Pure Prompt |
354 | pure-prompt |
355 | Pure ZSH prompt |
356 |
357 |
358 | | Spaceship Prompt |
359 | spaceship |
360 | Minimalistic, powerful and extremely customizable Zsh prompt |
361 |
362 |
363 | | FZF |
364 | fzf |
365 | Fuzzy Finder |
366 |
367 |
368 | | Cava |
369 | cava |
370 | Cross-platform Audio Visualizer |
371 |
372 |
373 | | Bat |
374 | bat |
375 | A cat clone with syntax highlighting and git integration |
376 |
377 |
378 | | LSD |
379 | lsd |
380 | A rewrite of GNU ls with lots of added features like colors, icons, tree-view, more formatting options etc.
381 | |
382 |
383 |
384 | | btop |
385 | btop |
386 | Resource monitor that shows usage and stats for processor, memory, disks, network and processes |
387 |
388 |
389 | | neofetch |
390 | neofetch |
391 | Neofetch displays information about your operating system, software and hardware in an aesthetic and visually
392 | pleasing way.This repo has been archived. Recommend using fastfetch |
393 |
394 |
395 | | fastfetch |
396 | fastfetch |
397 | Fastfetch is a neofetch-like tool for fetching system information and displaying them in a pretty way. It is written mainly in C, with performance and customizability in mind. |
398 |
399 |
400 | | starship |
401 | starship |
402 | The minimal, blazing-fast, and infinitely customizable prompt for any shell! |
403 |
404 |
405 | | noctalia-shell |
406 | noctalia |
407 | A beautiful, minimal desktop shell for Wayland that actually gets out of your way. Built on Quickshell with a warm lavender aesthetic that you can easily customize to match your vibe. |
408 |
409 |
410 | | opencode |
411 | opencode |
412 | The open source AI coding agent. |
413 |
414 |
415 |
416 |
417 |
418 | 🥾 Boot Managers / Loaders
419 |
420 |
421 |
422 | | Application |
423 | Theme Repository |
424 |
425 |
426 | | rEFInd |
427 | refind |
428 | rEFInd is a popular boot manager for UEFI and EFI based machines. It is a fork of the no longer maintained, rEFIt boot manager. |
429 |
430 |
431 | | Grub |
432 | grub |
433 | GNU GRUB is a Multiboot boot loader. It was derived from GRUB, the GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn. |
434 |
435 |
436 |
437 |
438 |
439 | 💬 Communication
440 |
441 |
442 |
443 | | Application |
444 | Theme Repository |
445 | Description |
446 |
447 |
448 | | Slack |
449 | slack |
450 | Slack is a messaging app for business that connects people to the information they need. |
451 |
452 |
453 | | BetterDiscord |
454 | betterdiscord |
455 | BetterDiscord extends the functionality of DiscordApp by enhancing it with new features. |
456 |
457 |
458 | | Thunderbird |
459 | thunderbird |
460 | Meet Thunderbird, the email and productivity app that maximizes your freedoms. |
461 |
462 |
463 |
464 |
465 |
466 | 🎧 Music
467 |
468 |
469 |
470 | | Application |
471 | Theme Repository |
472 | Description |
473 |
474 |
475 | | Spicetify |
476 | spicetify |
477 | Powerful CLI tool to take control of the Spotify client. |
478 |
479 |
480 | | Kagi |
481 | kagi |
482 | Kagi is a paid service because we want to show you high quality, unbiased search results that are in your best interest. |
483 |
484 |
485 |
486 |
487 |
488 | 🤷 Misc
489 |
490 |
491 |
492 | | Application |
493 | Theme Repository |
494 | Description |
495 |
496 |
497 | | GitHub Readme Stats |
498 | github-readme-stats |
499 | GitHub stat badges for your profile README. |
500 |
501 |
502 | | Hyprpanel |
503 | DWarez/eldritch-hyprpanel |
504 | Hyprpanel theme |
505 |
506 |
507 | | Walker |
508 | walker |
509 | Walker is a highly extendable application launcher that doesn't hold back on features and usability. Fast. Unclutters your brain. Improves your workflow. |
510 |
511 | Wallpapers |
512 | wallpapers |
513 | Eldritch wallpapers |
514 |
515 |
516 |
517 |
518 | ### Contributing
519 |
520 | 1. Clone [template repo](https://github.com/eldritch-theme/eldritch-repo-template).
521 |
522 | ```
523 | git clone https://github.com/eldritch-theme/eldritch-repo-template your-port-name
524 | cd your-port-name && rm -rf .git
525 | ```
526 |
527 | 2. Add anything you need, replacing things in README.md as needed.
528 | 3. Be sure to checkout the [SPEC.md](https://github.com/eldritch-theme/eldritch/blob/master/SPEC.md) for more info on color usage.
529 | 4. You can choose to either host the repo on your own account or you can request to be a contributor to the [eldritch-theme](https://github.com/eldritch-theme) and I will approve you so you can maintain the repo along with other under the organization account.
530 | 5. Create a pull request to update README.md in this repo to link to the newly created repo.
531 |
--------------------------------------------------------------------------------