added some emacs windows fluff to make it less crap

This commit is contained in:
2026-04-17 19:48:07 -04:00
parent edf5e7e57e
commit 4fa407f027
4 changed files with 665 additions and 6 deletions

View File

@@ -0,0 +1,202 @@
;;; aldricos-gruvbox-theme.el --- Aldrico's Gruvbox color theme
;; Based on "Aldrico's Gruvbox" VS Code theme
;; Ported to Emacs using fleury-theme.el as structural template
(deftheme aldricos-gruvbox "Aldrico's Gruvbox color theme")
(let ((bg "#000000")
(bg-soft "#1c1c1c")
(bg-hard "#32302f")
(bg-1 "#383432")
(bg-2 "#45403d")
(bg-3 "#504945")
(bg-4 "#5a524c")
(fg "#d4be98")
(fg-dim "#a89984")
(fg-dimmer "#928374")
(fg-faint "#7c6f64")
(red "#ea6962")
(red-dim "#b85651")
(orange "#e78a4e")
(yellow "#d8a657")
(green "#a9b665")
(green-dim "#8f9a52")
(aqua "#89b482")
(blue "#7daea3")
(purple "#d3869b")
(orange-dim "#c18f41")
(blue-dim "#68948a"))
(custom-theme-set-faces
'aldricos-gruvbox
;; UI Elements
`(default ((t (:background ,bg :foreground ,fg))))
`(cursor ((t (:background ,fg))))
`(region ((t (:background ,bg-3))))
`(highlight ((t (:background ,bg-1))))
`(hl-line ((t (:background ,bg-1))))
`(fringe ((t (:background ,bg :foreground ,fg-faint))))
`(vertical-border ((t (:foreground ,bg-4))))
`(minibuffer-prompt ((t (:foreground ,green :weight bold))))
`(link ((t (:foreground ,green :underline t))))
`(link-visited ((t (:foreground ,green-dim :underline t))))
`(trailing-whitespace ((t (:background ,red))))
`(secondary-selection ((t (:background ,bg-2))))
`(shadow ((t (:foreground ,fg-faint))))
`(tooltip ((t (:background ,bg-hard :foreground ,fg))))
;; Line Numbers
`(line-number ((t (:background ,bg :foreground ,fg-faint))))
`(line-number-current-line ((t (:background ,bg :foreground ,fg-dimmer))))
;; Mode Line
`(mode-line ((t (:background ,bg-2 :foreground ,fg-dim
:box (:line-width 1 :color ,bg-4 :style nil)))))
`(mode-line-inactive ((t (:background ,bg-1 :foreground ,fg-faint
:box (:line-width 1 :color ,bg-4 :style nil)))))
`(mode-line-buffer-id ((t (:foreground ,fg :weight bold))))
;; Font Lock Faces
`(font-lock-keyword-face ((t (:foreground ,red))))
`(font-lock-builtin-face ((t (:foreground ,aqua))))
`(font-lock-function-name-face ((t (:foreground ,green))))
`(font-lock-variable-name-face ((t (:foreground ,fg))))
`(font-lock-variable-use-face ((t (:foreground ,fg))))
`(font-lock-type-face ((t (:foreground ,blue))))
`(font-lock-constant-face ((t (:foreground ,purple))))
`(font-lock-number-face ((t (:foreground ,purple))))
`(font-lock-string-face ((t (:foreground ,yellow))))
`(font-lock-doc-face ((t (:foreground ,fg-dimmer :slant italic))))
`(font-lock-comment-face ((t (:foreground ,fg-dimmer :slant italic))))
`(font-lock-comment-delimiter-face ((t (:foreground ,fg-dimmer :slant italic))))
`(font-lock-preprocessor-face ((t (:foreground ,aqua))))
`(font-lock-warning-face ((t (:foreground ,orange-dim :weight bold))))
`(font-lock-operator-face ((t (:foreground ,orange))))
`(font-lock-negation-char-face ((t (:foreground ,orange))))
`(font-lock-regexp-grouping-backslash ((t (:foreground ,yellow))))
`(font-lock-regexp-grouping-construct ((t (:foreground ,yellow))))
;; Search
`(isearch ((t (:background ,orange-dim :foreground ,bg :weight bold))))
`(isearch-fail ((t (:background ,red-dim :foreground ,fg))))
`(lazy-highlight ((t (:background ,bg-3 :foreground ,green))))
;; Show Paren
`(show-paren-match ((t (:background ,bg-3 :foreground ,fg :weight bold))))
`(show-paren-mismatch ((t (:background ,red-dim :foreground ,fg :weight bold))))
;; Error / Warning / Success
`(error ((t (:foreground ,red :weight bold))))
`(warning ((t (:foreground ,orange-dim :weight bold))))
`(success ((t (:foreground ,green :weight bold))))
;; Compilation
`(compilation-error ((t (:foreground ,red))))
`(compilation-warning ((t (:foreground ,yellow :weight bold))))
`(compilation-info ((t (:foreground ,blue))))
`(compilation-line-number ((t (:foreground ,green))))
`(compilation-column-number ((t (:foreground ,aqua))))
`(compilation-mode-line-exit ((t (:foreground ,green :weight bold))))
`(compilation-mode-line-fail ((t (:foreground ,red :weight bold))))
`(compilation-mode-line-run ((t (:foreground ,yellow :weight bold))))
;; Flycheck
`(flycheck-error ((t (:underline (:color ,red :style wave)))))
`(flycheck-warning ((t (:underline (:color ,orange-dim :style wave)))))
`(flycheck-info ((t (:underline (:color ,blue-dim :style wave)))))
`(flycheck-fringe-error ((t (:foreground ,red))))
`(flycheck-fringe-warning ((t (:foreground ,orange-dim))))
`(flycheck-fringe-info ((t (:foreground ,blue-dim))))
;; Diff
`(diff-added ((t (:foreground ,green))))
`(diff-removed ((t (:foreground ,red))))
`(diff-changed ((t (:foreground ,blue))))
`(diff-header ((t (:foreground ,yellow))))
`(diff-file-header ((t (:foreground ,yellow :weight bold))))
`(diff-hunk-header ((t (:foreground ,orange))))
;; Dired
`(dired-directory ((t (:foreground ,blue :weight bold))))
`(dired-flagged ((t (:foreground ,red))))
`(dired-ignored ((t (:foreground ,fg-faint))))
`(dired-mark ((t (:foreground ,yellow))))
`(dired-marked ((t (:foreground ,orange :weight bold))))
`(dired-symlink ((t (:foreground ,aqua))))
`(dired-warning ((t (:foreground ,orange-dim))))
;; Org Mode
`(org-level-1 ((t (:foreground ,red :weight bold))))
`(org-level-2 ((t (:foreground ,orange :weight bold))))
`(org-level-3 ((t (:foreground ,yellow :weight bold))))
`(org-level-4 ((t (:foreground ,green :weight bold))))
`(org-level-5 ((t (:foreground ,blue :weight bold))))
`(org-level-6 ((t (:foreground ,purple :weight bold))))
`(org-level-7 ((t (:foreground ,aqua :weight bold))))
`(org-level-8 ((t (:foreground ,fg-dim :weight bold))))
`(org-block ((t (:foreground ,fg :background ,bg-hard))))
`(org-block-begin-line ((t (:foreground ,fg-faint :background ,bg-hard))))
`(org-block-end-line ((t (:foreground ,fg-faint :background ,bg-hard))))
`(org-code ((t (:foreground ,green))))
`(org-verbatim ((t (:foreground ,yellow))))
`(org-link ((t (:foreground ,green :underline t))))
`(org-todo ((t (:foreground ,red :weight bold))))
`(org-done ((t (:foreground ,aqua :weight bold))))
`(org-table ((t (:foreground ,blue))))
`(org-date ((t (:foreground ,blue :underline t))))
`(org-special-keyword ((t (:foreground ,fg-faint))))
`(org-tag ((t (:foreground ,fg-faint :weight bold))))
;; Markdown
`(markdown-header-face-1 ((t (:foreground ,red :weight bold))))
`(markdown-header-face-2 ((t (:foreground ,orange :weight bold))))
`(markdown-header-face-3 ((t (:foreground ,yellow :weight bold))))
`(markdown-header-face-4 ((t (:foreground ,green :weight bold))))
`(markdown-header-face-5 ((t (:foreground ,blue :weight bold))))
`(markdown-header-face-6 ((t (:foreground ,purple :weight bold))))
`(markdown-code-face ((t (:foreground ,green :background ,bg-hard))))
`(markdown-inline-code-face ((t (:foreground ,green))))
`(markdown-link-face ((t (:foreground ,purple))))
`(markdown-url-face ((t (:foreground ,green :underline t))))
`(markdown-list-face ((t (:foreground ,red))))
`(markdown-bold-face ((t (:weight bold))))
`(markdown-italic-face ((t (:slant italic))))
;; Term / ansi colors
`(term-color-black ((t (:foreground ,bg-1 :background ,bg-1))))
`(term-color-red ((t (:foreground ,red :background ,red))))
`(term-color-green ((t (:foreground ,green :background ,green))))
`(term-color-yellow ((t (:foreground ,yellow :background ,yellow))))
`(term-color-blue ((t (:foreground ,blue :background ,blue))))
`(term-color-magenta ((t (:foreground ,purple :background ,purple))))
`(term-color-cyan ((t (:foreground ,aqua :background ,aqua))))
`(term-color-white ((t (:foreground ,fg :background ,fg))))
;; Eshell
`(eshell-prompt ((t (:foreground ,green :weight bold))))
`(eshell-ls-directory ((t (:foreground ,blue :weight bold))))
`(eshell-ls-executable ((t (:foreground ,green))))
`(eshell-ls-symlink ((t (:foreground ,aqua))))
`(eshell-ls-missing ((t (:foreground ,red))))
`(eshell-ls-archive ((t (:foreground ,orange))))
`(eshell-ls-readonly ((t (:foreground ,orange-dim))))
`(eshell-ls-unreadable ((t (:foreground ,red-dim))))
;; Whitespace
`(whitespace-trailing ((t (:background ,red-dim :foreground ,fg))))
`(whitespace-space ((t (:background ,bg :foreground ,bg-2))))
`(whitespace-tab ((t (:background ,bg :foreground ,bg-2))))
`(whitespace-newline ((t (:foreground ,bg-2))))))
(custom-theme-set-variables
'aldricos-gruvbox
'(ansi-color-names-vector
["#383432" "#ea6962" "#a9b665" "#d8a657" "#7daea3" "#d3869b" "#89b482" "#d4be98"]))
(provide-theme 'aldricos-gruvbox)
;;; aldricos-gruvbox-theme.el ends here

View File

@@ -0,0 +1,439 @@
;;; aldricos-gruvbox-theme.el --- Aldrico's Gruvbox colour theme for Emacs -*- lexical-binding: t -*-
;; Based on "Aldrico's Gruvbox" VS Code theme by Aldrico
;; Ported to Emacs using autothemer
;; Package-Requires: ((autothemer "0.2") (emacs "24.1"))
;;; Commentary:
;; A dark Gruvbox-based theme ported from the VS Code theme "Aldrico's Gruvbox".
;; Uses a pure black background with warm gruvbox accent colours.
;;; Code:
(eval-when-compile
(require 'cl-lib))
(require 'autothemer)
(autothemer-deftheme
aldricos-gruvbox
"Aldrico's Gruvbox — a dark Gruvbox theme with pure black background"
((((class color) (min-colors #xFFFFFF)) ; col 1 GUI/24bit
((class color) (min-colors #xFF))) ; col 2 Xterm/256
;; Background / surface colours
(ag-bg "#000000" "#000000")
(ag-bg-soft "#1c1c1c" "#1c1c1c")
(ag-bg-hard "#32302f" "#303030")
(ag-bg-1 "#383432" "#383432")
(ag-bg-2 "#45403d" "#3a3a3a")
(ag-bg-3 "#504945" "#4e4e4e")
(ag-bg-4 "#5a524c" "#626262")
;; Foreground colours
(ag-fg "#d4be98" "#dfaf87")
(ag-fg-dim "#a89984" "#a89984")
(ag-fg-dimmer "#928374" "#8a8a8a")
(ag-fg-faint "#7c6f64" "#767676")
;; Syntax accent colours
(ag-red "#ea6962" "#d75f5f")
(ag-red-dim "#b85651" "#af5f5f")
(ag-orange "#e78a4e" "#d7875f")
(ag-yellow "#d8a657" "#d7af5f")
(ag-green "#a9b665" "#afaf5f")
(ag-green-dim "#8f9a52" "#878700")
(ag-aqua "#89b482" "#87af87")
(ag-blue "#7daea3" "#5fafaf")
(ag-purple "#d3869b" "#d787af")
(ag-orange-dim "#c18f41" "#af8700")
(ag-blue-dim "#68948a" "#5f8787")
;; Diff / VCS
(ag-diff-add-bg "#72966c40" "#005f00")
(ag-diff-del-bg "#b8565140" "#5f0000")
(ag-diff-add-fg "#a9b665" "#afaf5f")
(ag-diff-del-fg "#ea6962" "#d75f5f")
;; Bracket colours
(ag-bracket-1 "#ea6962" "#d75f5f")
(ag-bracket-2 "#d8a657" "#d7af5f")
(ag-bracket-3 "#a9b665" "#afaf5f")
(ag-bracket-4 "#7daea3" "#5fafaf")
(ag-bracket-5 "#e78a4e" "#d7875f")
(ag-bracket-6 "#d3869b" "#d787af"))
;; -----------------------------------------------------------------------
;; Face specifications
;; -----------------------------------------------------------------------
;; Basic faces
(default (:foreground ag-fg :background ag-bg))
(cursor (:background ag-fg))
(fringe (:background ag-bg :foreground ag-fg-faint))
(region (:background ag-bg-3))
(secondary-selection (:background ag-bg-2))
(highlight (:background ag-bg-2 :foreground ag-fg))
(hl-line (:background ag-bg-1))
(match (:background ag-bg-3 :foreground ag-green))
(shadow (:foreground ag-fg-faint))
(vertical-border (:foreground ag-bg-4))
(window-divider (:foreground ag-bg-4))
(minibuffer-prompt (:foreground ag-green :weight 'bold))
(link (:foreground ag-green :underline t))
(link-visited (:foreground ag-green-dim :underline t))
(trailing-whitespace (:background ag-red))
(escape-glyph (:foreground ag-aqua))
(homoglyph (:foreground ag-aqua))
(nobreak-hyphen (:foreground ag-aqua))
(nobreak-space (:foreground ag-aqua :underline t))
;; Line numbers
(line-number (:foreground ag-fg-faint :background ag-bg))
(line-number-current-line (:foreground ag-fg-dimmer :background ag-bg))
(line-number-major-tick (:foreground ag-fg-dimmer :background ag-bg))
(line-number-minor-tick (:foreground ag-fg-faint :background ag-bg))
;; Mode line
(mode-line (:foreground ag-fg-dim :background ag-bg-2 :box nil))
(mode-line-inactive (:foreground ag-fg-faint :background ag-bg-1 :box nil))
(mode-line-buffer-id (:foreground ag-fg :weight 'bold))
(mode-line-highlight (:foreground ag-green))
(mode-line-emphasis (:foreground ag-fg :weight 'bold))
;; Font lock — core syntax
(font-lock-builtin-face (:foreground ag-aqua))
(font-lock-comment-face (:foreground ag-fg-dimmer :slant 'italic))
(font-lock-comment-delimiter-face (:foreground ag-fg-dimmer :slant 'italic))
(font-lock-constant-face (:foreground ag-purple))
(font-lock-doc-face (:foreground ag-fg-dimmer :slant 'italic))
(font-lock-function-name-face (:foreground ag-green))
(font-lock-keyword-face (:foreground ag-red))
(font-lock-negation-char-face (:foreground ag-orange))
(font-lock-number-face (:foreground ag-purple))
(font-lock-preprocessor-face (:foreground ag-aqua))
(font-lock-regexp-grouping-backslash (:foreground ag-yellow))
(font-lock-regexp-grouping-construct (:foreground ag-yellow))
(font-lock-string-face (:foreground ag-yellow))
(font-lock-type-face (:foreground ag-blue))
(font-lock-variable-name-face (:foreground ag-fg))
(font-lock-warning-face (:foreground ag-orange-dim :weight 'bold))
(font-lock-operator-face (:foreground ag-orange))
;; Search / isearch
(isearch (:background ag-orange-dim :foreground ag-bg :weight 'bold))
(isearch-fail (:background ag-red-dim :foreground ag-fg))
(lazy-highlight (:background ag-bg-3 :foreground ag-green))
(isearch-group-1 (:background ag-blue-dim :foreground ag-fg))
(isearch-group-2 (:background ag-blue :foreground ag-bg))
;; Completions
(completions-annotations (:foreground ag-fg-dimmer))
(completions-common-part (:foreground ag-green))
(completions-first-difference (:foreground ag-fg :weight 'bold))
;; Error / warning / success
(error (:foreground ag-red :weight 'bold))
(warning (:foreground ag-orange-dim :weight 'bold))
(success (:foreground ag-green :weight 'bold))
;; Compilation
(compilation-error (:foreground ag-red))
(compilation-warning (:foreground ag-yellow))
(compilation-info (:foreground ag-blue))
(compilation-line-number (:foreground ag-green))
(compilation-column-number (:foreground ag-aqua))
(compilation-mode-line-exit (:foreground ag-green))
(compilation-mode-line-fail (:foreground ag-red))
(compilation-mode-line-run (:foreground ag-yellow))
;; Dired
(dired-directory (:foreground ag-blue :weight 'bold))
(dired-flagged (:foreground ag-red))
(dired-header (:foreground ag-green :weight 'bold))
(dired-ignored (:foreground ag-fg-faint))
(dired-mark (:foreground ag-yellow))
(dired-marked (:foreground ag-orange :weight 'bold))
(dired-perm-write (:foreground ag-fg-dim))
(dired-symlink (:foreground ag-aqua))
(dired-warning (:foreground ag-orange-dim))
;; Diff / ediff
(diff-added (:foreground ag-green :background ag-bg))
(diff-changed (:foreground ag-blue :background ag-bg))
(diff-removed (:foreground ag-red :background ag-bg))
(diff-header (:foreground ag-yellow))
(diff-file-header (:foreground ag-yellow :weight 'bold))
(diff-hunk-header (:foreground ag-orange))
(diff-refine-added (:background ag-bg-3 :foreground ag-green))
(diff-refine-removed (:background ag-bg-3 :foreground ag-red))
(ediff-current-diff-A (:background "#4f2121"))
(ediff-current-diff-B (:background "#243c24"))
(ediff-current-diff-C (:background "#4f214f"))
(ediff-fine-diff-A (:background "#761919"))
(ediff-fine-diff-B (:background "#1c691c"))
(ediff-fine-diff-C (:background "#761976"))
;; Org mode
(org-level-1 (:foreground ag-red :weight 'bold))
(org-level-2 (:foreground ag-orange :weight 'bold))
(org-level-3 (:foreground ag-yellow :weight 'bold))
(org-level-4 (:foreground ag-green :weight 'bold))
(org-level-5 (:foreground ag-blue :weight 'bold))
(org-level-6 (:foreground ag-purple :weight 'bold))
(org-level-7 (:foreground ag-aqua :weight 'bold))
(org-level-8 (:foreground ag-fg-dim :weight 'bold))
(org-code (:foreground ag-green))
(org-verbatim (:foreground ag-yellow))
(org-block (:foreground ag-fg :background ag-bg-hard))
(org-block-begin-line (:foreground ag-fg-faint :background ag-bg-hard))
(org-block-end-line (:foreground ag-fg-faint :background ag-bg-hard))
(org-document-title (:foreground ag-fg :weight 'bold))
(org-document-info (:foreground ag-fg-dim))
(org-document-info-keyword (:foreground ag-fg-faint))
(org-date (:foreground ag-blue :underline t))
(org-footnote (:foreground ag-aqua :underline t))
(org-link (:foreground ag-green :underline t))
(org-special-keyword (:foreground ag-fg-faint))
(org-tag (:foreground ag-fg-faint :weight 'bold))
(org-table (:foreground ag-blue))
(org-todo (:foreground ag-red :weight 'bold))
(org-done (:foreground ag-aqua :weight 'bold))
(org-headline-done (:foreground ag-fg-faint))
(org-priority (:foreground ag-orange))
(org-checkbox (:foreground ag-blue))
(org-list-dt (:foreground ag-yellow))
(org-dispatcher-highlight (:foreground ag-red :weight 'bold))
;; Markdown
(markdown-header-face-1 (:foreground ag-red :weight 'bold))
(markdown-header-face-2 (:foreground ag-orange :weight 'bold))
(markdown-header-face-3 (:foreground ag-yellow :weight 'bold))
(markdown-header-face-4 (:foreground ag-green :weight 'bold))
(markdown-header-face-5 (:foreground ag-blue :weight 'bold))
(markdown-header-face-6 (:foreground ag-purple :weight 'bold))
(markdown-header-delimiter-face (:foreground ag-fg-dimmer))
(markdown-bold-face (:weight 'bold))
(markdown-italic-face (:slant 'italic))
(markdown-link-face (:foreground ag-purple))
(markdown-url-face (:foreground ag-green :underline t))
(markdown-code-face (:foreground ag-green :background ag-bg-hard))
(markdown-inline-code-face (:foreground ag-green))
(markdown-list-face (:foreground ag-red))
(markdown-language-keyword-face (:foreground ag-yellow))
(markdown-pre-face (:foreground ag-green))
(markdown-blockquote-face (:foreground ag-fg-dimmer :slant 'italic))
;; Magit
(magit-bisect-bad (:foreground ag-red))
(magit-bisect-good (:foreground ag-green))
(magit-bisect-skip (:foreground ag-yellow))
(magit-blame-date (:foreground ag-blue))
(magit-blame-heading (:foreground ag-fg-dim :background ag-bg-1))
(magit-branch-current (:foreground ag-blue :weight 'bold))
(magit-branch-local (:foreground ag-blue))
(magit-branch-remote (:foreground ag-green))
(magit-cherry-equivalent (:foreground ag-aqua))
(magit-cherry-unmatched (:foreground ag-purple))
(magit-diff-added (:foreground ag-green :background ag-bg))
(magit-diff-added-highlight (:foreground ag-green :background ag-bg-1))
(magit-diff-removed (:foreground ag-red :background ag-bg))
(magit-diff-removed-highlight (:foreground ag-red :background ag-bg-1))
(magit-diff-base (:foreground ag-yellow :background ag-bg))
(magit-diff-base-highlight (:foreground ag-yellow :background ag-bg-1))
(magit-diff-context (:foreground ag-fg-dim))
(magit-diff-context-highlight (:foreground ag-fg :background ag-bg-1))
(magit-diff-file-heading (:foreground ag-fg :weight 'bold))
(magit-diff-hunk-heading (:foreground ag-orange :background ag-bg-2))
(magit-diff-hunk-heading-highlight (:foreground ag-orange :background ag-bg-3))
(magit-hash (:foreground ag-fg-dimmer))
(magit-log-author (:foreground ag-green))
(magit-log-date (:foreground ag-blue))
(magit-log-graph (:foreground ag-fg-faint))
(magit-process-ng (:foreground ag-red :weight 'bold))
(magit-process-ok (:foreground ag-green :weight 'bold))
(magit-refname (:foreground ag-fg-dimmer))
(magit-section-heading (:foreground ag-yellow :weight 'bold))
(magit-section-highlight (:background ag-bg-1))
(magit-signature-bad (:foreground ag-red :weight 'bold))
(magit-signature-good (:foreground ag-green))
(magit-signature-untrusted (:foreground ag-yellow))
(magit-tag (:foreground ag-yellow))
;; Company
(company-tooltip (:foreground ag-fg :background ag-bg-1))
(company-tooltip-selection (:foreground ag-fg :background ag-bg-2))
(company-tooltip-annotation (:foreground ag-fg-dimmer))
(company-tooltip-common (:foreground ag-green))
(company-tooltip-common-selection (:foreground ag-green :background ag-bg-2))
(company-scrollbar-bg (:background ag-bg-1))
(company-scrollbar-fg (:background ag-fg-faint))
(company-preview (:foreground ag-fg-faint))
(company-preview-common (:foreground ag-fg-faint))
;; Corfu
(corfu-default (:foreground ag-fg :background ag-bg-1))
(corfu-current (:foreground ag-fg :background ag-bg-2))
(corfu-bar (:background ag-fg-faint))
(corfu-border (:background ag-bg-4))
(corfu-annotations (:foreground ag-fg-dimmer))
(corfu-deprecated (:foreground ag-fg-faint :strike-through t))
;; Flycheck / flymake
(flycheck-error (:underline (:style 'wave :color ag-red)))
(flycheck-warning (:underline (:style 'wave :color ag-orange-dim)))
(flycheck-info (:underline (:style 'wave :color ag-blue-dim)))
(flycheck-fringe-error (:foreground ag-red))
(flycheck-fringe-warning (:foreground ag-orange-dim))
(flycheck-fringe-info (:foreground ag-blue-dim))
(flymake-error (:underline (:style 'wave :color ag-red)))
(flymake-warning (:underline (:style 'wave :color ag-orange-dim)))
(flymake-note (:underline (:style 'wave :color ag-blue-dim)))
;; Eglot / LSP
(eglot-highlight-symbol-face (:background ag-bg-3))
(eglot-inlay-hint-face (:foreground ag-fg-faint :background ag-bg))
(eglot-parameter-hint-face (:foreground ag-fg-faint :background ag-bg))
(eglot-type-hint-face (:foreground ag-fg-faint :background ag-bg))
;; Treemacs / neotree
(treemacs-root-face (:foreground ag-green :weight 'bold))
(treemacs-file-face (:foreground ag-fg-dim))
(treemacs-directory-face (:foreground ag-blue))
(treemacs-git-added-face (:foreground ag-green))
(treemacs-git-modified-face (:foreground ag-blue))
(treemacs-git-renamed-face (:foreground ag-purple))
(treemacs-git-ignored-face (:foreground ag-fg-faint))
(treemacs-git-untracked-face (:foreground ag-yellow))
(treemacs-git-conflict-face (:foreground ag-red))
;; Rainbow delimiters
(rainbow-delimiters-depth-1-face (:foreground ag-bracket-1))
(rainbow-delimiters-depth-2-face (:foreground ag-bracket-2))
(rainbow-delimiters-depth-3-face (:foreground ag-bracket-3))
(rainbow-delimiters-depth-4-face (:foreground ag-bracket-4))
(rainbow-delimiters-depth-5-face (:foreground ag-bracket-5))
(rainbow-delimiters-depth-6-face (:foreground ag-bracket-6))
(rainbow-delimiters-depth-7-face (:foreground ag-bracket-1))
(rainbow-delimiters-depth-8-face (:foreground ag-bracket-2))
(rainbow-delimiters-depth-9-face (:foreground ag-bracket-3))
(rainbow-delimiters-unmatched-face (:foreground ag-fg-dimmer))
;; Whitespace mode
(whitespace-space (:background ag-bg :foreground ag-bg-2))
(whitespace-hspace (:background ag-bg :foreground ag-bg-2))
(whitespace-tab (:background ag-bg :foreground ag-bg-2))
(whitespace-newline (:foreground ag-bg-2))
(whitespace-trailing (:background ag-red-dim :foreground ag-fg))
(whitespace-line (:background ag-bg :foreground ag-orange-dim))
(whitespace-space-before-tab (:background ag-bg :foreground ag-bg-3))
(whitespace-indentation (:background ag-bg :foreground ag-bg-2))
(whitespace-empty (:background ag-bg-1))
(whitespace-space-after-tab (:background ag-bg :foreground ag-bg-3))
;; Vertico / selectrum / ivy
(vertico-current (:background ag-bg-2 :foreground ag-fg))
(ivy-current-match (:background ag-bg-2 :foreground ag-fg))
(ivy-minibuffer-match-face-1 (:foreground ag-fg-dim))
(ivy-minibuffer-match-face-2 (:foreground ag-green :weight 'bold))
(ivy-minibuffer-match-face-3 (:foreground ag-orange :weight 'bold))
(ivy-minibuffer-match-face-4 (:foreground ag-red :weight 'bold))
(ivy-virtual (:foreground ag-fg-dim))
(ivy-confirm-face (:foreground ag-green))
(ivy-match-required-face (:foreground ag-red))
;; Consult / orderless
(consult-file (:foreground ag-fg-dim))
(orderless-match-face-0 (:foreground ag-green :weight 'bold))
(orderless-match-face-1 (:foreground ag-orange :weight 'bold))
(orderless-match-face-2 (:foreground ag-blue :weight 'bold))
(orderless-match-face-3 (:foreground ag-red :weight 'bold))
;; Which-key
(which-key-key-face (:foreground ag-green))
(which-key-separator-face (:foreground ag-fg-dimmer))
(which-key-group-description-face (:foreground ag-yellow))
(which-key-command-description-face (:foreground ag-fg))
(which-key-local-map-description-face (:foreground ag-blue))
;; Term / vterm / eshell
(term-color-black (:foreground ag-bg-1 :background ag-bg-1))
(term-color-red (:foreground ag-red :background ag-red))
(term-color-green (:foreground ag-green :background ag-green))
(term-color-yellow (:foreground ag-yellow :background ag-yellow))
(term-color-blue (:foreground ag-blue :background ag-blue))
(term-color-magenta (:foreground ag-purple :background ag-purple))
(term-color-cyan (:foreground ag-aqua :background ag-aqua))
(term-color-white (:foreground ag-fg :background ag-fg))
(term-color-bright-black (:foreground ag-fg-dimmer :background ag-fg-dimmer))
(term-color-bright-red (:foreground ag-red :background ag-red))
(term-color-bright-green (:foreground ag-green-dim :background ag-green-dim))
(term-color-bright-yellow (:foreground ag-yellow :background ag-yellow))
(term-color-bright-blue (:foreground ag-blue :background ag-blue))
(term-color-bright-magenta (:foreground ag-purple :background ag-purple))
(term-color-bright-cyan (:foreground ag-aqua :background ag-aqua))
(term-color-bright-white (:foreground "#ddc7a1" :background "#ddc7a1"))
(ansi-color-black (:foreground ag-bg-1 :background ag-bg-1))
(ansi-color-red (:foreground ag-red :background ag-red))
(ansi-color-green (:foreground ag-green :background ag-green))
(ansi-color-yellow (:foreground ag-yellow :background ag-yellow))
(ansi-color-blue (:foreground ag-blue :background ag-blue))
(ansi-color-magenta (:foreground ag-purple :background ag-purple))
(ansi-color-cyan (:foreground ag-aqua :background ag-aqua))
(ansi-color-white (:foreground ag-fg :background ag-fg))
(eshell-prompt (:foreground ag-green :weight 'bold))
(eshell-ls-directory (:foreground ag-blue :weight 'bold))
(eshell-ls-executable (:foreground ag-green))
(eshell-ls-symlink (:foreground ag-aqua))
(eshell-ls-archive (:foreground ag-orange))
(eshell-ls-backup (:foreground ag-fg-faint))
(eshell-ls-clutter (:foreground ag-fg-faint))
(eshell-ls-missing (:foreground ag-red))
(eshell-ls-product (:foreground ag-yellow))
(eshell-ls-readonly (:foreground ag-orange-dim))
(eshell-ls-special (:foreground ag-purple))
(eshell-ls-unreadable (:foreground ag-red-dim))
;; Pulse / pulse highlight
(pulse-highlight-start-face (:background ag-bg-3))
;; Show-paren
(show-paren-match (:background ag-bg-3 :foreground ag-fg :weight 'bold))
(show-paren-mismatch (:background ag-red-dim :foreground ag-fg :weight 'bold))
;; Eldoc
(eldoc-highlight-function-argument (:foreground ag-orange :weight 'bold)))
;; -----------------------------------------------------------------------
;; Custom variables
;; -----------------------------------------------------------------------
(custom-theme-set-variables
'aldricos-gruvbox
`(ansi-color-names-vector
[,ag-bg-1
,ag-red
,ag-green
,ag-yellow
,ag-blue
,ag-purple
,ag-aqua
,ag-fg])))
;;;###autoload
(and load-file-name
(boundp 'custom-theme-load-path)
(add-to-list 'custom-theme-load-path
(file-name-as-directory
(file-name-directory load-file-name))))
(provide-theme 'aldricos-gruvbox)
;; Local Variables:
;; eval: (when (fboundp 'rainbow-mode) (rainbow-mode +1))
;; End:
;;; aldricos-gruvbox-theme.el ends here