.emacs.d/themes/magik-theme.el

941 lines
46 KiB
EmacsLisp
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;;; sorcery-theme.el --- A D&D (Dark and Dusty) Theme -*- lexical-binding: t; -*-
;; Copyright (c) 2020 Maxime Tréca
;; Author: Maxime Tréca <maxime@gmail.com>
;; Version: 1.0
;; Package-Version: 20210101.1352
;; Package-Commit: 5a1c4445b9e6e09589a299a9962a6973272a0c2f
;; Package-Requires: ((autothemer "0.2"))
;; URL: http://github.com/vxid/emacs-theme-sorcery
;; This file is NOT part of GNU Emacs.
;; This program is free software; you can redistribute it and/or
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;; A dark and low-contrast Emacs theme.
;;; Code:
(require 'autothemer)
(unless (>= emacs-major-version 24)
(error "Requires Emacs 24 or later"))
(autothemer-deftheme
magik "Sorcery - A D&D (Dark and Dusty) Emacs Theme."
((((class color) (min-colors #xFFFFFF)))
(fg "#dddddd")
(bg "#000000")
(c0 "#111111")
(c1 "#af5f5f")
(c2 "#5F8787")
(c3 "#87875f")
(c4 "#5f87af")
(c5 "#5f5f87")
(c6 "#5Fafaf")
(c7 "#666666")
(c8 "#222222")
(c9 "#999999")
(c10 "#334a60")) (
;;; Face weights
(bold (:weight 'bold))
(bold-italic (:weight 'bold :slant 'italic))
(fixed-pitch (:height 1.0))
(fixed-pitch-serif (:height 1.0))
(italic (:slant 'italic))
(underline (:underline t))
(variable-pitch (:height 1.0))
;;; Basic faces
(default (:foreground fg :background bg))
(error (:foreground c1))
; (highlight (:foreground c4 :slant 'italic))
(highlight (:foreground c4))
(match (:foreground c4))
(menu (:foreground fg :background bg))
; (minibuffer-prompt (:foreground fg :slant 'italic))
(minibuffer-prompt (:foreground fg))
; (read-multiple-choice (:foreground fg :slant 'italic))
(read-multiple-choice (:foreground fg))
(region (:background c10))
(secondary-selection (:background c8))
(shadow (:foreground c7))
(success (:foreground c2))
(warning (:foreground c3))
;; Frame and window elements
(border (:foreground c0 :background bg))
(internal-border (:foreground c0 :background bg))
(fringe (:foreground c7 :background bg))
(scroll-bar (:foreground c0 :background bg))
(tool-bar (:foreground c0 :background bg))
(tooltip (:foreground c0 :background bg))
(vertical-border (:foreground c0 :background bg))
(window-divider (:foreground c0 :background bg))
(window-divider-first-pixel (:foreground c0 :background bg))
(window-divider-last-pixel (:foreground c0 :background bg))
;; Header line and mode line
(header-line (:foreground fg :background c0))
(header-line-highlight (:foreground fg :background c0))
(mode-line (:foreground fg :background c0))
(mode-line-buffer-id (:foreground fg :background c0))
(mode-line-emphasis (:foreground c4 :background c0))
(mode-line-highlight (:foreground c4 :background c0))
(mode-line-inactive (:foreground fg :background c0))
;; Other UI elements
(button (:foreground fg :background bg :box t))
(cursor (:background fg :background bg))
(link (:foreground c5 :underline t))
(link-visited (:foreground c5 :underline t))
(mouse (:foreground fg :background bg))
(mouse-drag-and-drop-region (:foreground fg :background c8))
(tty-menu-disabled-face (:foreground fg :background bg :strike-through t))
(tty-menu-enabled-face (:foreground fg :background bg))
(tty-menu-selected-face (:foreground fg :background c8))
;; Special Characters
(escape-glyph (:foreground c7))
(glyphless-char (:foreground c7))
(homoglyph (:foreground c7))
(nobreak-hyphen (:foreground c7))
(nobreak-space (:foreground c7))
;; Search items
(isearch (:background c4))
(isearch-fail (:foreground c1))
(lazy-highlight (:underline t))
;;; Line numbers
(line-number (:foreground fg :background bg))
(line-number-current-line (:foreground c4 :background bg))
(linum (:foreground c7 :background bg))
;; Font lock
(font-lock-builtin-face (:foreground fg))
(font-lock-comment-delimiter-face (:foreground c7))
(font-lock-comment-face (:foreground c7))
; (font-lock-comment-face (:foreground c7 :slant 'italic))
(font-lock-constant-face (:foreground fg))
(font-lock-doc-face (:foreground c7))
; (font-lock-doc-face (:foreground c7 :slant 'italic))
(font-lock-function-name-face (:foreground fg))
(font-lock-keyword-face (:foreground fg))
(font-lock-negation-char-face (:foreground fg))
(font-lock-preprocessor-face (:foreground fg))
(font-lock-regexp-grouping-backslash (:foreground fg))
(font-lock-regexp-grouping-construct-face (:foreground fg))
(font-lock-string-face (:foreground fg))
(font-lock-reference-face (:foreground fg))
(font-lock-type-face (:foreground fg))
(font-lock-variable-name-face (:foreground fg))
(font-lock-warning-face (:foreground fg))
;; Bookmarks Menu
(bookmark-menu-bookmark (:foreground fg :background bg))
(bookmark-menu-heading (:foreground fg :background bg :weight 'bold))
;; Buffer Menu
(buffer-menu-buffer (:foreground fg :background bg))
;; Calendar and Diary
(calendar-month-header (:foreground fg :background bg))
(calendar-today (:foreground c4 :background bg :slant 'italic))
(calendar-weekday-header (:foreground fg :background bg))
(calendar-weekend-header (:foreground fg :background bg))
(diary (:foreground c4 :background bg))
(diary-anniversary (:foreground c3 :background bg))
(diary-button (:foreground fg :background bg :box t))
(diary-time (:foreground fg :background bg))
(holiday (:foreground c5 :background bg))
;; Compilation
(compilation-column-number (:foreground fg))
(compilation-error (:foreground c1 :weight 'bold))
(compilation-info (:foreground fg))
(compilation-line-number (:foreground fg))
(compilation-mode-line-exit (:foreground fg))
(compilation-mode-line-fail (:foreground c1))
(compilation-mode-line-run (:foreground c4))
(compilation-warning (:foreground c3))
(next-error (:foreground c1 :underline t))
;; Changelog
(change-log-acknowledgment (:foreground fg :background bg))
(change-log-conditionals (:foreground fg :background bg))
(change-log-date (:foreground fg :background bg))
(change-log-email (:foreground fg :background bg))
(change-log-file (:foreground fg :background bg))
(change-log-function (:foreground fg :background bg))
(change-log-list (:foreground fg :background bg))
(change-log-name (:foreground fg :background bg))
;; Comint
(comint-highlight-input (:foreground fg :background bg :weight 'bold))
(comint-highlight-prompt (:foreground fg :background bg :weight 'bold))
;; Minibuffer completions
(completions-annotations (:foreground fg :background bg))
(completions-common-part (:foreground fg :background bg))
(completions-first-difference (:foreground c1 :background bg))
;; Customize
(custom-button (:foreground fg :background bg :box t))
(custom-button-mouse (:foreground fg :background bg :box t))
(custom-button-pressed (:foreground fg :background bg :box t))
(custom-button-pressed-unraised (:foreground fg :background bg :box t))
(custom-button-unraised (:foreground fg :background bg :box t))
(custom-changed (:foreground c3 :background bg :slant 'italic))
(custom-comment (:foreground fg :background bg))
(custom-comment-tag (:foreground fg :background bg))
(custom-documentation (:foreground fg))
(custom-face-tag (:foreground fg :slant 'italic))
(custom-group-subtitle (:foreground fg :background bg))
(custom-group-tag (:foreground fg :background bg :weight 'bold))
(custom-group-tag-1 (:foreground fg :background bg :weight 'bold))
(custom-invalid (:foreground fg :background bg :strike-through t))
(custom-link (:foreground fg :background bg :underline t))
(custom-modified (:foreground c3 :background bg :slant 'italic))
(custom-rogue (:foreground c1 :background bg))
(custom-saved (:foreground fg :background bg))
(custom-set (:foreground fg :background bg))
(custom-state (:foreground fg :background bg :slant 'italic))
(custom-themed (:foreground fg :background bg))
(custom-variable-button (:foreground fg :background bg :box t))
(custom-variable-tag (:foreground fg :background bg))
(custom-visibility (:foreground fg :background bg))
;; Diff mode
(diff-added (:foreground c2 :background bg))
(diff-changed (:foreground c7 :background bg))
(diff-context (:foreground c7 :background bg))
(diff-file-header (:foreground c7 :background bg))
(diff-function (:foreground c7 :background bg))
(diff-header (:foreground fg :background bg :weight 'bold))
(diff-index (:foreground fg :background bg))
(diff-hunk-header (:foreground fg :background bg))
(diff-indicator-added (:foreground c2 :background bg))
(diff-indicator-changed (:foreground c7 :background bg))
(diff-indicator-removed (:foreground c1 :background bg))
(diff-refine-added (:foreground c2 :background bg))
(diff-refine-changed (:foreground c7 :background bg))
(diff-refine-removed (:foreground c1 :background bg))
(diff-removed (:foreground c1 :background bg))
;; Dired
(dired-directory (:foreground fg :weight 'bold))
(dired-flagged (:foreground c1))
(dired-header (:foreground fg :weight 'bold))
(dired-ignored (:foreground c7))
(dired-mark (:foreground c5 :slant 'italic))
(dired-marked (:foreground c5 :slant 'italic))
(dired-perm-write (:foreground fg))
(dired-symlink (:foreground c3))
(dired-warning (:foreground c3 :weight 'bold))
;; Ediff mode
(ediff-current-diff-A (:foreground fg :background c8))
(ediff-current-diff-B (:foreground fg :background c8))
(ediff-current-diff-C (:foreground fg :background c8))
(ediff-current-diff-Ancestor (:foreground fg :background c8))
(ediff-even-diff-A (:foreground fg :background c0))
(ediff-even-diff-B (:foreground fg :background c0))
(ediff-even-diff-C (:foreground fg :background c0))
(ediff-even-diff-Ancestor (:foreground fg :background c0))
(ediff-fine-diff-A (:foreground c1 :background c8))
(ediff-fine-diff-B (:foreground c2 :background c8))
(ediff-fine-diff-C (:foreground c3 :background c8))
(ediff-fine-diff-Ancestor (:foreground c4 :background c8))
(ediff-odd-diff-A (:foreground fg :background c0))
(ediff-odd-diff-B (:foreground fg :background c0))
(ediff-odd-diff-C (:foreground fg :background c0))
(ediff-odd-diff-Ancestor (:foreground fg :background c0))
;; Eldoc
(eldoc-highlight-function-argument (:foreground fg :background bg :weight 'bold))
;; Easy PG
(epa-field-body (:foreground fg))
(epa-field-name (:foreground fg))
(epa-mark (:foreground c3))
(epa-string (:foreground c7))
(epa-validity-disabled (:foreground c7))
(epa-validity-high (:foreground c2))
(epa-validity-low (:foreground c1))
(epa-validity-medium (:foreground c3))
;; Eshell
(eshell-prompt (:foreground fg))
(eshell-ls-archive (:foreground fg))
(eshell-ls-backup (:foreground fg))
(eshell-ls-clutter (:foreground c7))
(eshell-ls-directory (:foreground fg :weight 'bold))
(eshell-ls-executable (:foreground fg))
(eshell-ls-missing (:foreground c1))
(eshell-ls-product (:foreground c7))
(eshell-ls-readonly (:foreground c3))
(eshell-ls-special (:foreground c6))
(eshell-ls-symlink (:foreground c2))
(eshell-ls-unreadable (:foreground c1))
;;; Gnus
(gnus-button (:foreground fg :background bg :box t))
(gnus-emphasis-bold (:weight 'bold))
(gnus-emphasis-bold-italic (:weight 'bold :slant 'italic))
(gnus-emphasis-highlight-words (:foreground c4))
(gnus-emphasis-italic (:slant 'italic))
(gnus-emphasis-strikethru (:strike-through t))
(gnus-emphasis-underline (:underline t))
(gnus-emphasis-underline-bold (:underline t :weight 'bold))
(gnus-emphasis-underline-bold-italic (:underline t :weight 'bold :slant 'italic))
(gnus-emphasis-underline-italic (:underline t :slant 'italic))
(gnus-group-mail-1 (:foreground fg :weight 'bold))
(gnus-group-mail-1-empty (:foreground fg))
(gnus-group-mail-2 (:foreground fg :weight 'bold))
(gnus-group-mail-2-empty (:foreground fg))
(gnus-group-mail-3 (:foreground fg :weight 'bold))
(gnus-group-mail-3-empty (:foreground fg))
(gnus-group-mail-low (:foreground fg :weight 'bold))
(gnus-group-mail-low-empty (:foreground fg))
(gnus-group-news-1 (:foreground fg :weight 'bold))
(gnus-group-news-1-empty (:foreground fg))
(gnus-group-news-2 (:foreground fg :weight 'bold))
(gnus-group-news-2-empty (:foreground fg))
(gnus-group-news-3 (:foreground fg :weight 'bold))
(gnus-group-news-3-empty (:foreground fg))
(gnus-group-news-4 (:foreground fg :weight 'bold))
(gnus-group-news-4-empty (:foreground fg))
(gnus-group-news-5 (:foreground fg :weight 'bold))
(gnus-group-news-5-empty (:foreground fg))
(gnus-group-news-6 (:foreground fg :weight 'bold))
(gnus-group-news-6-empty (:foreground fg))
(gnus-group-news-low (:foreground fg :weight 'bold))
(gnus-group-news-low-empty (:foreground fg))
(gnus-header-content (:foreground fg))
(gnus-header-from (:foreground fg))
(gnus-header-name (:foreground fg))
(gnus-header-newsgroup (:foreground fg))
(gnus-header-subject (:foreground fg))
(gnus-signature (:foreground c7))
(gnus-slash (:foreground fg :background bg))
(gnus-summary-cancelled (:strike-through t))
(gnus-summary-high-ancient (:foreground c7))
(gnus-summary-high-read (:foreground fg))
(gnus-summary-high-ticked (:foreground fg))
(gnus-summary-high-undownloaded (:weight 'bold))
(gnus-summary-high-unread (:foreground c4 :weight 'bold))
(gnus-summary-low-ancient (:foreground c7))
(gnus-summary-low-read (:foreground fg))
(gnus-summary-low-ticked (:foreground fg))
(gnus-summary-low-undownloaded (:weight 'bold))
(gnus-summary-low-unread (:foreground fg :weight 'bold))
(gnus-summary-normal-ancient (:foreground c7))
(gnus-summary-normal-read (:foreground fg))
(gnus-summary-normal-ticked (:foreground fg))
(gnus-summary-normal-undownloaded (:weight 'bold))
(gnus-summary-normal-unread (:foreground fg :weight 'bold))
(gnus-summary-selected (:background c8))
;; Help
(help-argument-name (:slant 'italic))
;; Hl-line
(hl-line (:background c0))
;; Ibuffer
(ibuffer-locked-buffer (:foreground c1))
;; Ido
(ido-first-match (:foreground fg :weight 'bold))
(ido-incomplete-regexp (:foreground fg))
(ido-indicator (:foreground c4))
(ido-only-match (:foreground fg))
(ido-subdir (:foreground fg :weight 'bold))
(ido-virtual (:foreground c7))
;; Info mode
(Info-quoted (:foreground c7 :background bg))
(info-header-node (:foreground fg :background bg :weight 'bold))
(info-header-xref (:foreground fg :background bg :underline t))
(info-node (:foreground fg :background bg))
(info-index-match (:foreground fg :background c4))
(info-menu-header (:foreground fg :background bg :weight 'bold))
(info-menu-star (:foreground fg :background bg))
(info-title-1 (:foreground fg :background bg :weight 'bold))
(info-title-2 (:foreground fg :background bg :weight 'bold))
(info-title-3 (:foreground fg :background bg :weight 'bold))
(info-title-4 (:foreground fg :background bg :weight 'bold))
(info-xref (:foreground fg :background bg :underline t))
(info-xref-visited (:foreground fg :background bg :underline t))
;; Ispell
(ispell-highlight (:underline (:color c1)))
(flyspell-duplicate (:underline (:color c3)))
(flyspell-incorrect (:underline (:color c1)))
;; Message
(message-cited-text (:foreground c7))
(message-header-cc (:foreground fg))
(message-header-name (:foreground fg))
(message-header-newsgroups (:foreground fg))
(message-header-other (:foreground fg))
(message-header-subject (:foreground fg))
(message-header-to (:foreground fg))
(message-header-xheader (:foreground fg))
(message-Mml (:foreground fg))
(message-separator (:foreground c7))
;; MM
(mm-command-output (:foreground fg))
;; Outline
(outline-1 (:foreground fg))
(outline-2 (:foreground fg))
(outline-3 (:foreground fg))
(outline-4 (:foreground fg))
(outline-5 (:foreground fg))
(outline-6 (:foreground fg))
(outline-7 (:foreground fg))
(outline-8 (:foreground fg))
;; Package
(package-description (:foreground fg))
(package-help-section-name (:foreground fg :weight 'bold))
(package-name (:foreground fg :underline t))
(package-status-avail-obso (:strike-through t))
(package-status-available (:foreground fg))
(package-status-built-in (:foreground c7))
(package-status-dependency (:foreground c7))
(package-status-disabled (:foreground c3))
(package-status-external (:foreground fg))
(package-status-held (:foreground fg))
(package-status-incompat (:foreground c1))
(package-status-installed (:foreground c7))
(package-status-new (:weight 'bold))
(package-status-unsigned (:foreground fg))
;; Replace
(query-replace (:foreground fg :background c4))
;; Rmail
(rmail-header-name (:foreground fg))
(rmail-highlight (:foreground c4))
;; Semantic
(semantic-complete-inline-face (:foreground fg :background c8))
(semantic-decoration-on-fileless-includes (:foreground c1 :background bg))
(semantic-decoration-on-includes (:foreground fg :background bg))
(semantic-decoration-on-private-members (:foreground fg :background bg))
(semantic-decoration-on-protected-members (:foreground fg :background bg))
(semantic-decoration-on-unknown-includes (:foreground c1 :background bg))
(semantic-decoration-on-unparsed-includes (:foreground c3 :background bg))
(semantic-highlight-edits (:foreground fg :background bg))
(semantic-highlight-func-current-tag (:foreground fg :background bg))
(semantic-idle-symbol-highlight (:foreground c4 :background bg))
(semantic-tag-boundary-face (:foreground c3 :background bg))
(semantic-unmatched-syntax-face (:foreground c1 :background bg))
(senator-momentary-highlight-face (:foreground c4 :background bg))
(srecode-field-face (:foreground fg :background c8))
;; Show paren
(show-paren-match (:underline t))
(show-paren-match-expression (:underline t))
(show-paren-mismatch (:foreground c1 :weight 'bold))
;; Shr
(shr-link (:underline t))
(shr-strike-through (:strike-through t))
;; Table mode
(table-cell (:foreground fg :background c8))
;; smerge
(smerge-base (:foreground fg :background c8))
(smerge-lower (:foreground c2 :background bg))
(smerge-markers (:foreground c7 :background c8))
(smerge-refined-added (:foreground c2 :background c8))
(smerge-refined-changed (:foreground c7 :background c8))
(smerge-refined-removed (:foreground c1 :background c8))
(smerge-upper (:foreground c1 :background bg))
;; TODO Tab bar
(tab-bar (:foreground fg :background c8))
(tab-bar-tab (:foreground fg :background c8))
(tab-bar-tab-inactive (:foreground c7 :background c8))
;; Terminal
(term (:foreground fg :background bg))
(term-bold (:weight 'bold))
(term-color-black (:foreground bg))
(term-color-red (:foreground c1))
(term-color-green (:foreground c2))
(term-color-yellow (:foreground c3))
(term-color-blue (:foreground c4))
(term-color-magenta (:foreground c5))
(term-color-cyan (:foreground c6))
(term-color-white (:foreground fg))
(term-underline (:underline t))
;; VC
(vc-conflict-state (:foreground c1))
(vc-edited-state (:foreground fg :slant 'italic))
(vc-locally-added-state (:foreground c2))
(vc-locked-state (:foreground c3 :weight 'bold))
(vc-missing-state (:foreground c1 :weight 'bold))
(vc-needs-update-state (:foreground c3 :slant 'italic))
(vc-removed-state (:foreground c1 :slant 'italic))
(vc-state-base (:foreground fg))
(vc-up-to-date-state (:foreground fg))
;; Whitespace
(trailing-whitespace (:foreground c8 :background c8))
(whitespace-big-indent (:foreground c8 :background c8))
(whitespace-empty (:foreground c8 :background c8))
(whitespace-hspace (:foreground c8 :background c8))
(whitespace-indentation (:foreground c8 :background c8))
(whitespace-line (:foreground c8 :background bg))
(whitespace-newline (:foreground c8 :background c8))
(whitespace-space (:foreground c8 :background c8))
(whitespace-space-after-tab (:foreground c8 :background c8))
(whitespace-space-before-tab (:foreground c8 :background c8))
(whitespace-tab (:foreground c8 :background bg))
(whitespace-trailing (:foreground c8 :background c8))
;; widget
(widget-button (:foreground fg :background bg :box t))
(widget-button-pressed (:foreground c4 :background bg :box t))
(widget-documentation (:foreground fg :background bg))
(widget-field (:foreground fg :background c8))
(widget-inactive (:foreground c7 :background bg))
(widget-single-line-field (:foreground fg :background c8))
;;; External Packages
;; Counsel
(counsel--mark-ring-highlight (:foreground c4 :slant 'italic))
(counsel-active-mode (:foreground c2))
(counsel-application-name (:foreground fg))
(counsel-evil-register (:foreground fg))
(counsel-key-binding (:foreground c7 :slant 'italic))
(counsel-outline-1 (:foreground fg :background bg))
(counsel-outline-2 (:foreground fg :background bg))
(counsel-outline-3 (:foreground fg :background bg))
(counsel-outline-4 (:foreground fg :background bg))
(counsel-outline-5 (:foreground fg :background bg))
(counsel-outline-6 (:foreground fg :background bg))
(counsel-outline-7 (:foreground fg :background bg))
(counsel-outline-8 (:foreground fg :background bg))
(counsel-outline-default (:foreground fg :background bg))
(counsel-variable-documentation (:foreground fg :background bg))
;; Elfeed
(elfeed-log-date (:foreground fg))
(elfeed-log-debug-level-face (:foreground fg))
(elfeed-log-error-level-face (:foreground c1))
(elfeed-log-info-level-face (:foreground fg))
(elfeed-log-warn-level-face (:foreground c3))
(elfeed-search-date-face (:foreground c7))
(elfeed-search-feed-face (:foreground fg))
(elfeed-search-filter-face (:foreground fg))
(elfeed-search-last-update-face (:foreground fg))
(elfeed-search-tag-face (:foreground c7))
(elfeed-search-title-face (:foreground c7 :slant 'italic))
(elfeed-search-unread-count-face (:foreground fg))
(elfeed-search-unread-title-face (:foreground fg :slant 'italic))
;; Ivy
(ivy-action (:foreground fg :slant 'italic))
(ivy-completion-annotations (:foreground c7))
(ivy-confirm-face (:foreground c2))
(ivy-current-match (:foreground c5))
(ivy-cursor (:foreground bg :background fg))
(ivy-grep-info (:foreground fg))
(ivy-grep-line-number (:foreground fg))
(ivy-highlight-face (:foreground c4 :slant 'italic))
(ivy-match-required-face (:foreground c1))
(ivy-minibuffer-match-face-1 (:underline t))
(ivy-minibuffer-match-face-2 (:underline t))
(ivy-minibuffer-match-face-3 (:underline t))
(ivy-minibuffer-match-face-4 (:underline t))
(ivy-minibuffer-match-highlight (:foreground c4))
(ivy-modified-buffer (:foreground fg :weight 'bold))
(ivy-modified-outside-buffer (:foreground fg :weight 'bold))
(ivy-org (:foreground fg))
(ivy-prompt-match (:foreground fg :background bg))
(ivy-remote (:foreground c3))
(ivy-separator (:foreground c7))
(ivy-subdir (:foreground fg))
(ivy-virtual (:foreground c7 :slant 'italic))
(ivy-yanked-word (:foreground c4))
;; Magit
(git-commit-comment-action (:foreground c7))
(git-commit-comment-branch-local (:foreground c7))
(git-commit-comment-branch-remote (:foreground c7))
(git-commit-comment-detached (:foreground c7))
(git-commit-comment-file (:foreground c7))
(git-commit-comment-heading (:foreground c7 :weight 'bold))
(git-commit-keyword (:foreground fg :slant 'italic))
(git-commit-known-pseudo-header (:foreground fg))
(git-commit-nonempty-second-line (:foreground c1))
(git-commit-overlong-summary (:foreground c3))
(git-commit-pseudo-header (:foreground fg))
(git-commit-summary (:foreground fg))
(git-rebase-comment-hash (:foreground c7))
(git-rebase-description (:foreground fg))
(git-rebase-hash (:foreground c7))
(git-rebase-killed-action (:foreground fg :strike-through t))
(git-rebase-label (:foreground fg :slant 'italic))
(magit-bisect-bad (:foreground c1 :background bg))
(magit-bisect-good (:foreground c2 :background bg))
(magit-bisect-skip (:foreground c3 :background bg))
(magit-blame-date (:foreground c7 :background c0))
(magit-blame-dimmed (:foreground c7 :background c0))
(magit-blame-name (:foreground fg :background c0 :slant 'italic))
(magit-blame-hash (:foreground fg :background c0))
(magit-blame-heading (:foreground fg :background c0 :weight 'bold))
(magit-blame-highlight (:foreground c4 :background c0))
(magit-blame-margin (:foreground fg :background c0))
(magit-blame-summary (:foreground c7 :background c0))
(magit-branch-current (:foreground c4 :slant 'italic))
(magit-branch-local (:foreground c5 :slant 'italic))
(magit-branch-remote (:foreground c2 :slant 'italic))
(magit-branch-remote-head (:foreground c2 :slant 'italic :underline t))
(magit-branch-upstream (:foreground c6 :slant 'italic))
(magit-cherry-equivalent (:foreground c6))
(magit-cherry-unmatched (:foreground c3))
(magit-diff-added (:foreground c2 :background bg))
(magit-diff-added-highlight (:foreground c2 :background c0))
(magit-diff-base (:foreground fg :background bg))
(magit-diff-base-highlight (:foreground fg :background c0))
(magit-diff-conflict-heading (:foreground c3 :background bg :weight 'bold))
(magit-diff-context (:foreground c7 :background bg))
(magit-diff-context-highlight (:foreground c7 :background c0))
(magit-diff-file-heading (:foreground fg :background bg))
(magit-diff-file-heading-highlight (:foreground fg :background c0))
(magit-diff-file-heading-selection (:foreground fg :background c8 :weight 'bold))
(magit-diff-hunk-heading (:foreground c7 :background bg))
(magit-diff-hunk-heading-highlight (:foreground c7 :background c0))
(magit-diff-hunk-heading-selection (:foreground c7 :background c8 :weight 'bold))
(magit-diff-lines-boundary (:foreground c5 :background c5))
(magit-diff-lines-heading (:foreground c5 :background c0))
(magit-diff-our (:foreground c1 :background bg))
(magit-diff-our-highlight (:foreground c1 :background c0))
(magit-diff-removed (:foreground c1 :background bg))
(magit-diff-removed-highlight (:foreground c1 :background c0))
(magit-diff-their (:foreground c2 :background bg))
(magit-diff-their-highlight (:foreground c2 :background c0))
(magit-diff-whitespace-warning (:foreground fg :background c8))
(magit-diffstat-added (:foreground c2))
(magit-diffstat-removed (:foreground c1))
(magit-dimmed (:foreground c7 :background bg))
(magit-filename (:foreground fg :background bg))
(magit-hash (:foreground c7 :background bg))
(magit-head (:foreground c2 :background bg))
(magit-header-line (:foreground fg :background bg :weight 'bold))
(magit-header-line-key (:foreground fg :background bg :weight 'bold))
(magit-header-line-log-select (:foreground fg :background bg :weight 'bold))
(magit-keyword (:foreground fg :background bg))
(magit-keyword-squash (:foreground fg :background bg))
(magit-log-author (:foreground fg))
(magit-log-date (:foreground fg))
(magit-log-graph (:foreground c7))
(magit-mode-line-process (:foreground fg))
(magit-mode-line-process-error (:foreground c1))
(magit-process-ng (:foreground c1))
(magit-process-ok (:foreground c2))
(magit-reflog-amend (:foreground fg))
(magit-reflog-checkout (:foreground fg))
(magit-reflog-cherry-pick (:foreground fg))
(magit-reflog-commit (:foreground fg))
(magit-reflog-merge (:foreground fg))
(magit-reflog-other (:foreground fg))
(magit-reflog-rebase (:foreground fg))
(magit-reflog-remote (:foreground fg))
(magit-reflog-reset (:foreground c1))
(magit-refname (:foreground fg :slant 'italic))
(magit-refname-pullreq (:foreground fg :slant 'italic))
(magit-refname-stash (:foreground c7 :slant 'italic))
(magit-refname-wip (:foreground fg :slant 'italic))
(magit-section-heading (:foreground fg :background bg :weight 'bold))
(magit-section-heading-selection (:background c0 :weight 'bold))
(magit-section-highlight (:background c0))
(magit-section-secondary-heading (:foreground fg :background bg :weight 'bold))
(magit-sequence-done (:foreground fg))
(magit-sequence-drop (:foreground fg))
(magit-sequence-exec (:foreground fg))
(magit-sequence-head (:foreground fg))
(magit-sequence-onto (:foreground fg))
(magit-sequence-part (:foreground fg))
(magit-sequence-pick (:foreground fg))
(magit-sequence-stop (:foreground fg))
(magit-signature-bad (:foreground c1))
(magit-signature-error (:foreground c1))
(magit-signature-expired (:foreground c3))
(magit-signature-expired-key (:foreground c3))
(magit-signature-good (:foreground c2))
(magit-signature-revoked (:foreground c3))
(magit-signature-untrusted (:foreground fg))
(magit-tag (:foreground c5 :slant 'italic))
(transient-active-infix (:foreground c4))
(transient-argument (:foreground c2))
(transient-disabled-suffix (:foreground c1))
(transient-enabled-suffix (:foreground c2))
(transient-heading (:foreground fg :weight 'bold))
(transient-inactive-argument (:foreground c7))
(transient-inactive-value (:foreground c7))
(transient-key (:foreground fg :slant 'italic))
(transient-mismatched-key (:foreground c3 :slant 'italic))
(transient-nonstandard-key (:foreground fg :slant 'italic))
(transient-separator (:foreground c8))
(transient-unreachable (:foreground c7 :strike-though t))
(transient-unreachable-key (:foreground c7 :strike-though t))
(transient-value (:foreground fg))
;; Mini Modeline
(mini-modeline-mode-line (:height 0.1 :background c8))
(mini-modeline-mode-line-inactive (:height 0.1 :background c8))
;; mu4e
(mu4e-attach-number (:foreground c5 :slant 'italic))
(mu4e-cited-1-face (:foreground c7))
(mu4e-cited-2-face (:foreground c7))
(mu4e-cited-3-face (:foreground c7))
(mu4e-cited-4-face (:foreground c7))
(mu4e-cited-5-face (:foreground c7))
(mu4e-cited-6-face (:foreground c7))
(mu4e-cited-7-face (:foreground c7))
(mu4e-compose-header-face (:foreground c7 :slant 'italic))
(mu4e-compose-separator-face (:foreground c7 :slant 'italic))
(mu4e-contact-face (:foreground fg))
(mu4e-context-face (:foreground fg))
(mu4e-draft-face (:foreground c7))
(mu4e-flagged-face (:foreground c7 :slant 'italic))
(mu4e-footer-face (:foreground c7))
(mu4e-forwarded-face (:foreground fg))
(mu4e-header-face (:foreground c7))
(mu4e-header-highlight-face (:foreground fg :background c0))
(mu4e-header-key-face (:foreground fg))
(mu4e-header-marks-face (:foreground fg :weight 'bold))
(mu4e-header-title-face (:foreground fg))
(mu4e-header-value-face (:foreground fg))
(mu4e-link-face (:foreground c5 :underline t))
(mu4e-modeline-face (:foreground c7))
(mu4e-moved-face (:foreground fg))
(mu4e-ok-face (:foreground c2))
(mu4e-region-code (:foreground bg :background c0))
(mu4e-replied-face (:foreground c7))
(mu4e-special-header-value-face (:foreground fg))
(mu4e-system-face (:foreground c7))
(mu4e-title-face (:foreground fg :weight 'bold))
(mu4e-trashed-face (:foreground c7 :strike-through t))
(mu4e-unread-face (:foreground fg :weight 'bold))
(mu4e-url-number (:foreground fg :weight 'bold))
(mu4e-view-body-face (:foreground fg))
(mu4e-warning-face (:foreground c3))
;; Org mode
(org-agenda-calendar-event (:foreground fg))
(org-agenda-calendar-sexp (:foreground fg))
(org-agenda-clocking (:foreground c5))
(org-agenda-column-dateline (:foreground fg :background c8))
(org-agenda-current-time (:foreground c4))
(org-agenda-date (:foreground fg))
(org-agenda-date-today (:foreground fg :slant 'italic))
(org-agenda-date-weekend (:foreground fg))
(org-agenda-diary (:foreground fg))
(org-agenda-dimmed-todo-face (:foreground c7))
(org-agenda-done (:foreground c2 :slant 'italic))
(org-agenda-filter-category (:foreground fg))
(org-agenda-filter-effort (:foreground fg))
(org-agenda-filter-regexp (:foreground fg))
(org-agenda-filter-tags (:foreground fg))
(org-agenda-restriction-lock (:foreground c3))
(org-agenda-structure (:foreground c7))
(org-archived (:foreground c7))
(org-block (:foreground fg :background c0 :extend t))
(org-block-begin-line (:foreground c7 :background c0 :slant 'italic :extend t))
(org-block-end-line (:foreground c7 :background c0 :slant 'italic :extend t))
(org-checkbox (:foreground fg))
(org-checkbox-statistics-done (:foreground c2))
(org-checkbox-statistics-todo (:foreground c1))
(org-clock-overlay (:background c0))
(org-code (:foreground c7))
(org-column (:foreground fg))
(org-column-title (:foreground fg))
(org-date (:foreground c7))
(org-date-selected (:foreground c4 :slant 'italic))
(org-default (:foreground fg :background bg))
(org-document-info (:foreground c7 :slant 'italic))
(org-document-info-keyword (:foreground c7 :slant 'italic))
(org-document-title (:foreground fg :weight 'bold))
(org-done (:foreground c2 :slant 'italic))
(org-drawer (:foreground c7))
(org-ellipsis (:foreground c7))
(org-footnote (:foreground c7))
(org-formula (:foreground fg))
(org-habit-alert-face (:foreground c3 :weight 'bold))
(org-habit-alert-future-face (:foreground c3))
(org-habit-clear-face (:foreground fg :weight 'bold))
(org-habit-clear-future-face (:foreground fg))
(org-habit-overdue-face (:foreground c1 :weight 'bold))
(org-habit-overdue-future-face (:foreground c1))
(org-habit-ready-face (:foreground c2 :weight 'bold))
(org-habit-ready-future-face (:foreground c2))
(org-headline-done (:foreground c7))
(org-hide (:foreground bg))
(org-indent (:foreground bg))
(org-inline-tasks (:foreground c7))
(org-latex-and-related (:foreground fg))
(org-level-1 (:foreground fg))
(org-level-2 (:foreground fg))
(org-level-3 (:foreground fg))
(org-level-4 (:foreground fg))
(org-level-5 (:foreground fg))
(org-level-6 (:foreground fg))
(org-level-7 (:foreground fg))
(org-level-8 (:foreground fg))
(org-link (:foreground c4 :underline t))
(org-list-dt (:foreground fg :weight 'bold))
(org-macro (:foreground fg))
(org-meta-line (:foreground c7 :background bg :slant 'italic))
(org-mode-line-clock (:foreground fg))
(org-mode-line-clock-overrun (:foreground c1 :weight 'bold))
(org-priority (:foreground c5))
(org-property-value (:foreground fg))
(org-quote (:foreground c7))
(org-scheduled (:foreground fg))
(org-scheduled-previously (:foreground c1))
(org-scheduled-today (:foreground fg))
(org-sexp-date (:foreground fg))
(org-special-keyword (:foreground fg))
(org-table (:foreground c7))
(org-tag (:foreground fg))
(org-tag-group (:foreground fg))
(org-target (:foreground fg :underline t))
(org-time-grid (:foreground c7))
(org-todo (:foreground c1 :slant 'italic))
(org-upcoming-deadline (:foreground fg))
(org-upcoming-distant-deadline (:foreground fg))
(org-verbatim (:foreground c7))
(org-verse (:foreground c7))
(org-warning (:foreground c3))
;; Page break lines
(page-break-lines (:foreground c7))
;; PDF tools
(pdf-isearch-batch (:foreground c4 :background bg))
(pdf-isearch-lazy (:underline t))
(pdf-isearch-match (:foreground fg :background c4))
(pdf-view-rectangle (:foreground c4 :slant 'italic))
(pdf-view-region (:foreground fg :background c8))
;; Swiper
(swiper-background-match-face-1 (:foreground fg))
(swiper-background-match-face-2 (:foreground fg))
(swiper-background-match-face-3 (:foreground fg))
(swiper-background-match-face-4 (:foreground fg))
(swiper-line-face (:foreground c4))
(swiper-match-face-1 (:foreground fg))
(swiper-match-face-2 (:foreground fg))
(swiper-match-face-3 (:foreground fg))
(swiper-match-face-4 (:foreground fg))
;; Vterm
(vterm-color-default (:foreground fg :background bg))
(vterm-color-black (:foreground bg))
(vterm-color-red (:foreground c1))
(vterm-color-green (:foreground c2))
(vterm-color-yellow (:foreground c3))
(vterm-color-blue (:foreground c4))
(vterm-color-magenta (:foreground c5))
(vterm-color-cyan (:foreground c6))
(vterm-color-white (:foreground fg))
;; git-gutter
(git-gutter:added (:background c2))
(git-gutter:deleted (:background c1))
(git-gutter:modified (:background c3))
(git-gutter:unchanged (:background bg))
(git-gutter:separator (:background c0))
(git-gutter-fr:added (:background c2))
(git-gutter-fr:deleted (:background c1))
(git-gutter-fr:modified (:background c3))
;; company
(company-tooltip-selection (:foreground fg :background c7))
(company-tooltip-common (:foreground fg))
(company-tooltip (:foreground fg :background c0))
(company-scrollbar-bg (:background bg))
(company-scrollbar-fg (:background c8))
;;; Language-specific
;; LaTeX
(font-latex-bold-face (:foreground fg :background bg :weight 'bold))
(font-latex-doctex-documentation-face (:foreground fg :background bg))
(font-latex-doctex-preprocessor-face (:foreground fg :background bg))
(font-latex-italic-face (:slant 'italic))
(font-latex-math-face (:foreground fg :background bg))
(font-latex-script-char-face (:foreground c7 :background bg))
(font-latex-sectioning-0-face (:foreground fg :background bg))
(font-latex-sectioning-1-face (:foreground fg :background bg))
(font-latex-sectioning-2-face (:foreground fg :background bg))
(font-latex-sectioning-3-face (:foreground fg :background bg))
(font-latex-sectioning-4-face (:foreground fg :background bg))
(font-latex-sectioning-5-face (:foreground fg :background bg))
(font-latex-sedate-face (:foreground fg :background bg))
(font-latex-slide-title-face (:foreground fg :background bg))
(font-latex-string-face (:foreground c7 :background bg))
(font-latex-subscript-face (:foreground fg :background bg))
(font-latex-superscript-face (:foreground fg :background bg))
(font-latex-verbatim-face (:foreground fg :background bg))
(font-latex-warning-face (:foreground c1 :background bg))
;; Tex faces
(TeX-error-description-error (:foreground c1))
(TeX-error-description-help (:foreground fg))
(TeX-error-description-tex-said (:foreground fg))
(TeX-error-description-warning (:foreground c3))
;; Shell
(sh-escaped-newline (:foreground c7 :background bg))
(sh-heredoc (:foreground c7 :background bg))
(sh-quoted-exec (:foreground c7 :background bg)))
(custom-theme-set-variables 'magik
`(pdf-view-midnight-colors '(,fg . ,bg))))
;;;###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 'magik)
;;; sorcery-theme.el ends here