├── .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 | Logo
3 | 4 | Eldritch Theme 5 | 6 |

7 | 8 |
9 | Palette 10 | · 11 | Ports 12 | · 13 | Contributing 14 |
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 | Stargazers 22 | Issues
23 | Discord 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 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 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 |
   LabelsDescriptorHexRGBHSLCMYKAnsi16Ansi256
Sunken Depths GreyBackground#212337rgb(33, 35, 55)hsl(234.55 deg, 25%, 17.25%)cmyk(40, 36, 0, 78)0236 54 |
Shallow Depths GreyCurrent Line#323449rgb(50, 52, 73)hsl(234.78 deg, 18.7%, 24.12%)cmyk(32, 42, 0, 5)859 65 |
Lighthouse WhiteForeground#ebfafargb(235, 250, 250)hsl(180 deg, 60%, 95.1%)cmyk(6, 0, 0, 2)15231 76 |
The Old One PurpleComment#7081d0rgb(112, 129, 208)hsl(229.38 deg, 50.53%, 62.75%)cmyk(46, 38, 0, 18)4105
Watery Tomb BlueSecondary (Cyan)#04d1f9rgb(4, 209, 249)hsl(189.8 deg, 96.84%, 49.61%)cmyk(98, 16, 0, 2)1481 98 |
Great Old One GreenPrimary (Green)#37f499rgb(55, 244, 153)hsl(151.11 deg, 89.57%, 58.63%)cmyk(40, 36, 0, 78)10120 109 |
Dreaming OrangeOrange#f7c67frgb(247, 198, 127)hsl(35.5 deg, 88.24%, 73.33%)cmyk(0, 20, 49, 3)11222
Pustule PinkPink#f265b5rgb(242, 101, 181)hsl(325.96 deg, 84.43%, 67.25%)cmyk(0, 58, 25, 5)13205
Lovecraft PurplePurple (Accent)#a48cf2rgb(164,140,242)hsl(254.12 deg, 79.69%, 74.9%)cmyk(32,42,0,5)563
R'lyeh' RedRed (Error)#f16c75rgb(241, 108, 117)hsl(355.94 deg, 82.61%, 68.43%)cmyk(0,55,51,5)9203
Gold of YuggothYellow#f1fc79rgb(241, 252, 121)hsl(65.04 deg, 95.62%, 73.14%)cmyk(4, 0, 52, 1)11227
166 | 167 | ### 🧵 Ports 168 | 169 |
170 | 🌲 Environments 171 |   172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 |
EnvironmentTheme RepositoryDescription
OmarchyomarchyBeautiful, Modern & Opinionated Linux by DHH
184 |
185 | 186 |
187 | 🗒️ IDEs 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 |
ApplicationTheme RepositoryDescription
Visual Studio CodevscodeA highly popular Electron based IDE by Microsoft
NeoVimeldritch.nvimNeoVim is a hyperextensible Vim-based text editor
Emacseldritch.emacsAn extensible, customizable, free/libre text editor — and more.
Helixeldritch-helix A post-modern modal text editor.
216 |
217 | 218 |
219 | 🖥️ Terminals 220 |   221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 232 | 233 | 234 | 235 | 236 | 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 |
ApplicationTheme RepositoryDescription
Windows Terminalwindows-terminalThe Windows Terminal is a modern, fast, efficient, powerful, and productive terminal application for users of command-line tools and shells 231 |
WeztermweztermWezTerm is a powerful cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust 237 |
KittykittyThe fast, feature-rich, GPU based terminal emulator
GhosttyghosttyGhostty is a fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration.
WarpwarpWarp is the terminal reimagined with AI and collaborative tools for better productivity
iTerm2iTerm2iTerm2 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.
AlacrittyAlacrittyAlacritty - A fast, cross-platform, OpenGL terminal emulator.
Termuxeldritch-termuxTermux is a terminal emulator and GNU/Linux environment application for Android OS.
PtyxisptyxisPtyxis is GTK4 terminal emulator and the default terminal for the fedora workstation
275 |
276 | 277 |
278 | 🌐 Browsers 279 |   280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 |
ApplicationTheme RepositoryDescription
VivaldivivaldiA Chromium based browser focused on security and high levels of customization.
FirefoxfirefoxNo shady privacy policies or back doors for advertisers. Just a lightning fast browser that doesn’t sell you out.
ZenzenFirefox based browser with a focus on privacy and customization.
302 | 🙊 UserJS scripts & Browser Extensions 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 |
SiteTheme RepositoryDescription
DuckDuckGoduckduckgoA search engine focused on privacy
TridactyltridactylReplace Firefox's default control mechanism with one modelled on the one true editor, Vim.
320 |
321 | 322 |
323 | 🗒️ Note Taking 324 |   325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 |
ApplicationTheme RepositoryDescription
ObsidianobsidianObsidian is the private and flexible writing app that adapts to the way you think.
337 |
338 | 339 |
340 | 🐚 Shell & CLI Applications 341 |   342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | 373 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 |
ApplicationTheme RepositoryDescription
Fish ShellfishThe user-friendly command line shell.
Pure Promptpure-promptPure ZSH prompt
Spaceship PromptspaceshipMinimalistic, powerful and extremely customizable Zsh prompt
FZFfzfFuzzy Finder
CavacavaCross-platform Audio Visualizer
BatbatA cat clone with syntax highlighting and git integration
LSDlsdA rewrite of GNU ls with lots of added features like colors, icons, tree-view, more formatting options etc. 381 |
btopbtopResource monitor that shows usage and stats for processor, memory, disks, network and processes
neofetchneofetchNeofetch 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
fastfetchfastfetchFastfetch 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.
starshipstarshipThe minimal, blazing-fast, and infinitely customizable prompt for any shell!
noctalia-shellnoctaliaA 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.
opencodeopencodeThe open source AI coding agent.
415 |
416 | 417 |
418 | 🥾 Boot Managers / Loaders 419 |   420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | 432 | 433 | 434 | 435 |
ApplicationTheme Repository
rEFIndrefindrEFInd is a popular boot manager for UEFI and EFI based machines. It is a fork of the no longer maintained, rEFIt boot manager.
GrubgrubGNU 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.
436 |
437 | 438 |
439 | 💬 Communication 440 |   441 | 442 | 443 | 444 | 445 | 446 | 447 | 448 | 449 | 450 | 451 | 452 | 453 | 454 | 455 | 456 | 457 | 458 | 459 | 460 | 461 | 462 |
ApplicationTheme RepositoryDescription
SlackslackSlack is a messaging app for business that connects people to the information they need.
BetterDiscordbetterdiscordBetterDiscord extends the functionality of DiscordApp by enhancing it with new features.
ThunderbirdthunderbirdMeet Thunderbird, the email and productivity app that maximizes your freedoms.
463 |
464 | 465 |
466 | 🎧 Music 467 |   468 | 469 | 470 | 471 | 472 | 473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | 481 | 482 | 483 | 484 |
ApplicationTheme RepositoryDescription
SpicetifyspicetifyPowerful CLI tool to take control of the Spotify client.
KagikagiKagi is a paid service because we want to show you high quality, unbiased search results that are in your best interest.
485 |
486 | 487 |
488 | 🤷 Misc 489 |   490 | 491 | 492 | 493 | 494 | 495 | 496 | 497 | 498 | 499 | 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 509 | 510 | 511 | 512 | 513 | 514 | 515 |
ApplicationTheme RepositoryDescription
GitHub Readme Statsgithub-readme-statsGitHub stat badges for your profile README.
HyprpanelDWarez/eldritch-hyprpanelHyprpanel theme
WalkerwalkerWalker is a highly extendable application launcher that doesn't hold back on features and usability. Fast. Unclutters your brain. Improves your workflow.
WallpaperswallpapersEldritch wallpapers
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 | --------------------------------------------------------------------------------