.emacs.d

the most bloated Emacs config on this planet
git clone https://git.trogloxene.org/.emacs.d.git
Log | Files | Refs

my-theme.el (10619B)


      1 ;;; my-theme.el --- my theme -*- lexical-binding: t -*-
      2 
      3 ;;; Commentary:
      4 
      5 ;;; Code:
      6 
      7 (require 'solarized)
      8 
      9 (defun my-solarized-reload-fix ()
     10   (load-file (concat user-lisp-directory "my-theme.el")))
     11 (advice-add #'solarized-reload :before #'my-solarized-reload-fix)
     12 
     13 (defmacro my-themes--custom-faces ()
     14   ''((custom-theme-set-faces
     15       theme-name
     16 
     17       `(font-lock-doc-face ((,class (:foreground ,green :slant normal))))
     18       `(font-lock-string-face ((,class (:foreground ,green))))
     19       `(font-lock-regexp-grouping-backslash ((,class (:foreground ,cyan :weight bold))))
     20 
     21       `(italic ((,class (:slant italic))))
     22       `(line-number ((,class (:foreground ,base01 :weight light))))
     23       `(button ((,class (:foreground ,yellow :underline t))))
     24       `(bookmark-face ((,class (:foreground ,yellow))))
     25       `(display-time-date-and-time ((,class (:foreground ,base1 :bold t))))
     26       `(minibuffer-nonselected ((,class (:inverse-video t))))
     27 
     28       `(comint-highlight-prompt ((,class (:foreground ,yellow :weight bold))))
     29       `(comint-highlight-input ((,class (:inherit bold))))
     30 
     31       `(eshell-ls-readonly ((,class (:inherit error))))
     32 
     33       `(trailing-whitespace ((,class (:foreground ,orange-lc :inverse-video t))))
     34 
     35       `(vcursor ((,class (:foreground ,cyan :underline t :inverse-video t))))
     36 
     37       `(outline-1 ((,class (:foreground ,orange :height 1.0 :weight normal))))
     38       `(outline-2 ((,class (:foreground ,blue :height 1.0 :weight normal))))
     39       `(outline-3 ((,class (:foreground ,green :height 1.0 :weight normal))))
     40       `(outline-4 ((,class (:foreground ,yellow :height 1.0 :weight normal))))
     41       `(outline-5 ((,class (:foreground ,cyan :height 1.0 :weight normal))))
     42       `(outline-6 ((,class (:foreground ,blue :height 1.0 :weight normal))))
     43       `(outline-7 ((,class (:foreground ,green :height 1.0 :weight normal))))
     44       `(outline-8 ((,class (:foreground ,yellow :height 1.0 :weight normal))))
     45 
     46       `(org-level-1 ((,class (:inherit outline-1))))
     47       `(org-level-2 ((,class (:inherit outline-2))))
     48       `(org-level-3 ((,class (:inherit outline-3))))
     49       `(org-level-4 ((,class (:inherit outline-4))))
     50       `(org-level-5 ((,class (:inherit outline-5))))
     51       `(org-level-6 ((,class (:inherit outline-6))))
     52       `(org-level-7 ((,class (:inherit outline-7))))
     53       `(org-level-8 ((,class (:inherit outline-8))))
     54       `(org-document-title ((,class (:foreground ,base0 :height 1.0 :weight bold))))
     55       `(org-done ((,class (:foreground ,green :weight bold))))
     56       `(org-headline-done ((,class (:foreground ,green))))
     57       `(org-block-begin-line ((,class (:foreground ,base01 :slant italic))))
     58       `(org-block-end-line ((,class (:foreground ,base01 :slant italic))))
     59       `(org-priority ((,class (:foreground ,green :weight bold))))
     60       `(org-checkbox ((,class (:foreground ,base0 :weight bold))))
     61       `(org-dispatcher-highlight ((,class (:inherit diff-hunk-header :weight bold))))
     62 
     63       `(calendar-month-header ((,class (:foreground ,base0 :weight bold))))
     64       `(holiday ((,class (:underline (:style line :color ,yellow)))))
     65       `(cal-china-x-important-holiday-face ((,class (:underline (:style line :color ,red)))))
     66       `(cal-china-x-general-holiday-face ((,class (:underline (:style line :color ,yellow)))))
     67 
     68       `(denote-journal-calendar ((,class (:foreground ,cyan :slant italic))))
     69       `(denote-faces-keywords ((,class (:foreground ,cyan))))
     70 
     71       `(markdown-header-face-1 ((,class (:foreground ,orange :height 1.0 :weight normal))))
     72       `(markdown-header-face-2 ((,class (:foreground ,blue :height 1.0 :weight normal))))
     73       `(markdown-header-face-3 ((,class (:foreground ,green :height 1.0 :weight normal))))
     74       `(markdown-header-face-4 ((,class (:foreground ,yellow :height 1.0 :weight normal))))
     75       `(markdown-header-face-5 ((,class (:foreground ,cyan :height 1.0 :weight normal))))
     76       `(markdown-header-face-6 ((,class (:foreground ,green :height 1.0 :weight normal))))
     77       `(markdown-code-face ((,class (:foreground ,base0))))
     78       `(markdown-table-face ((,class (:foreground ,green))))
     79 
     80       `(md-ts-heading-1 ((,class (:inherit outline-1))))
     81       `(md-ts-heading-2 ((,class (:inherit outline-2))))
     82       `(md-ts-heading-3 ((,class (:inherit outline-3))))
     83       `(md-ts-heading-4 ((,class (:inherit outline-4))))
     84       `(md-ts-heading-5 ((,class (:inherit outline-5))))
     85       `(md-ts-heading-6 ((,class (:inherit outline-6))))
     86       `(md-ts-code ((,class (:foreground ,base01))))
     87 
     88       `(shr-h1  ((,class (:inherit outline-1))))
     89       `(shr-h2  ((,class (:inherit outline-2))))
     90       `(shr-h3  ((,class (:inherit outline-3))))
     91       `(shr-h4  ((,class (:inherit outline-4))))
     92       `(shr-h5  ((,class (:inherit outline-5))))
     93       `(shr-h6  ((,class (:inherit outline-6))))
     94       `(shr-code  ((,class (:inherit font-lock-comment-face))))
     95 
     96       `(Info-quoted  ((,class (:inherit font-lock-builtin-face))))
     97       `(info-title-1  ((,class (:inherit outline-1))))
     98       `(info-title-2  ((,class (:inherit outline-2))))
     99       `(info-title-3  ((,class (:inherit outline-3))))
    100       `(info-title-4  ((,class (:inherit outline-4))))
    101 
    102       `(variable-pitch  ((,class (nil))))
    103       `(fixed-pitch  ((,class (nil))))
    104 
    105       `(dashboard-footer-face ((,class (:foreground ,blue))))
    106       `(dashboard-text-banner ((,class (:foreground ,green))))
    107       `(dashboard-heading ((,class (:foreground ,green :weight bold))))
    108 
    109       `(dired-broken-symlink ((,class (:inherit dired-symlink :foreground ,orange))))
    110       `(dired-header ((,class (:foreground ,green))))
    111       `(dirvish-file-time ((,class (:foreground ,base01))))
    112       `(dirvish-free-space ((,class (:foreground ,green))))
    113       `(dired-async-mode-message ((,class (:foreground ,red))))
    114       `(dired-async-message ((,class (:foreground ,yellow))))
    115 
    116       `(diff-hunk-header ((,class (:foreground ,yellow-1fg :background ,yellow-1bg))))
    117 
    118       `(consult-file ((,class (:foreground ,green))))
    119       `(consult-notes-name ((,class (:foreground ,base01))))
    120       `(consult-notes-time ((,class (:foreground ,base01))))
    121       `(consult-notes-size ((,class (:foreground ,base01))))
    122 
    123       `(vertico-current ((,class (:background ,base02 :extend t :underline nil))))
    124 
    125       `(transient-key-stay ((,class (:foreground ,cyan :inherit transient-key))))
    126       `(transient-key-return ((,class (:foreground ,violet :inherit transient-key))))
    127       `(transient-key-exit ((,class (:foreground ,blue :inherit transient-key))))
    128       `(transient-key-stack ((,class (:foreground ,magenta :inherit transient-key))))
    129       `(transient-key-recurse ((,class (:foreground ,blue :inherit transient-key))))
    130       `(transient-key-noop ((,class (:foreground ,base01 :inherit transient-key))))
    131       `(transient-value ((,class (:foreground ,green))))
    132       `(transient-argument ((,class (:foreground ,green :inherit transient-key))))
    133 
    134       `(geiser-font-lock-repl-output ((,class (:foreground ,blue))))
    135       `(geiser-font-lock-repl-prompt ((,class (:inherit comint-highlight-prompt))))
    136       `(geiser-font-lock-doc-link ((,class (:foreground ,blue :underline t))))
    137       `(geiser-font-lock-error-link ((,class (:foreground ,orange :underline t))))
    138       `(geiser-font-lock-xref-link ((,class (:inherit link))))
    139       `(geiser-font-lock-repl-output-error ((,class (:foreground ,red :weight bold))))
    140       `(geiser-font-lock-repl-output-warning ((,class (:foreground ,yellow :weight bold))))
    141       `(geiser-font-lock-autodoc-identifier ((,class (:foreground ,blue))))
    142       `(geiser-font-lock-autodoc-current-arg ((,class (:foreground ,yellow))))
    143 
    144       `(sly-mrepl-output-face ((,class (:foreground ,magenta))))
    145 
    146       `(emms-playlist-track-face ((,class (:foreground ,cyan))))
    147       `(emms-playlist-selected-face ((,class (:foreground ,blue :weight bold))))
    148 
    149       `(elfeed-search-separator-face ((,class (:inherit elfeed-show-date-face :weight bold :underline t :extend t))))
    150 
    151       `(proced-pid ((,class (:foreground ,violet))))
    152       `(proced-session-leader-pid ((,class (:inherit proced-pid :underline t))))
    153       `(proced-ppid ((,class (:foreground ,blue))))
    154       `(proced-sess ((,class (:inherit proced-ppid))))
    155       `(proced-emacs-pid ((,class (:foreground ,magenta))))
    156       `(proced-memory-low-usage ((,class (:foreground ,green))))
    157       `(proced-memory-medium-usage ((,class (:foreground ,yellow))))
    158       `(proced-memory-high-usage ((,class (:foreground ,red))))
    159       `(proced-executable ((,class (:foreground ,cyan))))
    160       `(proced-run-status-code ((,class (:foreground ,green))))
    161       `(proced-interruptible-sleep-status-code ((,class (:foreground ,base01))))
    162       `(proced-uninterruptible-sleep-status-code ((,class (:foreground ,red))))
    163       `(proced-time-colon ((,class (:foreground ,base01))))
    164       `(proced-cpu ((,class (:foreground ,base0))))
    165       `(proced-mem ((,class (:foreground ,base0))))
    166 
    167       `(speedbar-separator-face ((,class (:foreground ,base03 :background ,blue))))
    168       `(speedbar-file-face ((,class (:foreground ,base0))))
    169       `(speedbar-tag-face ((,class (:foreground ,green))))
    170       `(speedbar-button-face ((,class (:foreground ,base01))))
    171       `(speedbar-selected-face ((,class (:inherit button))))
    172       `(speedbar-directory-face ((,class (:foreground ,blue))))
    173       `(speedbar-highlight-face ((,class (:foreground ,base1 :background ,base02))))
    174 
    175       `(syncthing-bold ((,class (:inherit bold))))
    176       `(syncthing-italic ((,class (:inherit italic))))
    177       `(syncthing-my-id ((,class (:foreground ,blue :weight bold))))
    178       `(syncthing-rate-upload ((,class (:foreground ,green))))
    179       `(syncthing-rate-download ((,class (:foreground ,blue :weight bold))))
    180       `(syncthing-uptime ((,class (:foreground ,magenta :weight bold))))
    181       `(syncthing-count-discovery ((,class (:foreground ,blue :weight bold))))
    182       `(syncthing-count-listeners ((,class (:foreground ,green :weight bold))))
    183       `(syncthing-count-local-bytes ((,class (:foreground ,cyan :weight bold))))
    184       `(syncthing-count-local-files ((,class (:inherit default :weight bold))))
    185       `(syncthing-count-local-folders ((,class (:foreground ,yellow :weight bold))))
    186       `(syncthing-progress-100 ((,class (:foreground ,green))))
    187       `(syncthing-progress-75 ((,class (:foreground ,cyan))))
    188       `(syncthing-progress-50 ((,class (:foreground ,yellow))))
    189       `(syncthing-progress-25 ((,class (:foreground ,orange))))
    190       `(syncthing-progress-0 ((,class (:foreground ,red))))
    191 
    192       `(gt-buffer-render-source-face ((,class (:inherit font-lock-string-face))))
    193       `(gt-youdao-dict-phonetic-face ((,class (:inherit italic)))))))
    194 
    195 (provide 'my-theme)
    196 ;;; my-theme.el ends here