;; acme-theme.el -- A theme inspired by the classic colours of the ACME editor. ;; Copyright (C) 2021 , tslil clingman ;; Version: 0.2 ;; Package-Requires: ((emacs "24")) ;; This program is free software: you can redistribute it and/or modify ;; 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 . ;; This file is not part of Emacs. (deftheme acme "A theme inspired by the classic colours of the ACME editor.") (let ((bg-yellow "#FFFFEA") (bg-blue "#DAEFEF") (lazy "#D1D1C0") (mud "#99994C") (yellow "#EAEA9E") (blue "#268BD2") (red "#AA0000") (purple "#8888CC") (green "#508050") (link "#D05000")) (custom-theme-set-faces 'acme `(default ((t (:background ,bg-yellow :foreground "black")))) '(cursor ((t (:background "black")))) '(escape-glyph ((t (:foreground "black")))) '(highlight ((t (:foreground "grey30")))) '(region ((t (:background "orange" :foreground "black")))) `(secondary-selection ((t (:background ,red)))) '(trailing-whitespace ((t (:background "grey")))) `(widget-field ((t (:background ,bg-blue)))) '(font-lock-builtin-face ((t (:foreground "black" :slant normal)))) '(font-lock-comment-delimiter-face ((t (:inherit (font-lock-comment-face))))) '(font-lock-comment-face ((t (:foreground "darkgrey" :slant italic)))) '(font-lock-constant-face ((t (:foreground "black")))) '(font-lock-doc-face ((t (:foreground "black" :slant italic)))) '(font-lock-function-name-face ((t (:foreground "black" :weight bold)))) '(font-lock-keyword-face ((t (:foreground "black" :weight bold)))) '(font-lock-negation-char-face ((t (:foreground "black")))) '(font-lock-preprocessor-face ((t (:inherit (font-lock-builtin-face))))) '(font-lock-string-face ((t (:foreground "black")))) '(font-lock-type-face ((t (:foreground "black" :underline t)))) '(font-lock-variable-name-face ((t (:foreground "black")))) '(font-lock-warning-face ((t (:foreground "black")))) `(link ((t (:underline (:color foreground-color :style line) :foreground ,link)))) '(button ((t (:inherit (link))))) '(link-visited ((t (:inherit (link))))) `(fringe ((t (:background ,bg-yellow :foreground "black")))) `(line-number ((t (:inherit default)))) `(line-number-current-line ((t (:inherit default :background ,purple)))) `(mode-line ((t (:background ,bg-blue :foreground "black" :box 2)))) '(mode-line-buffer-id ((t (:foreground "black" :weight bold)))) '(mode-line-emphasis ((t (:foreground "black")))) '(mode-line-highlight ((t (:weight bold :box nil :foreground "black")))) `(mode-line-inactive ((t (:background ,bg-blue :foreground "#393939" :weight normal :box t)))) '(minibuffer-line ((t (:inherit default)))) '(minibuffer-prompt ((t (:inherit (minibuffer-line) :weight bold)))) `(isearch ((t (:background ,yellow)))) `(isearch-fail ((t (:background ,red)))) `(lazy-highlight ((t (:foreground "black" :weight bold :background ,bg-blue)))) `(match ((t (:background ,yellow)))) '(next-error ((t (:inherit (region))))) '(query-replace ((t (:inherit (isearch))))) ;; '(table-cell ((t (:inherit (default))))) `(show-paren-match ((t (:weight bold :background ,purple)))) `(show-paren-mismatch ((t (:background ,red)))) `(sp-show-pair-match-face ((t (:weight bold :background ,purple)))) `(sp-show-pair-mismatch-face ((t (:background ,red)))) '(eshell-prompt-face ((t (:inherit default :weight bold)))) ;; `(company-echo-common ((t (:foreground "black" :background ,bg-blue :weight bold)))) ;; `(company-preview-common ((t (:foreground "black" :background ,yellow)))) ;; `(company-scrollbar-bg ((t (:background "grey")))) ;; `(company-scrollbar-fg ((t (:background ,green)))) ;; `(company-tooltip ((t (:foreground "black" :background ,bg-blue)))) ;; `(company-tooltip-search ((t (:foreground "black" :background ,yellow)))) ;; `(company-tooltip-annotation ((t (:foreground ,link :slant italic)))) ;; `(company-tooltip-common ((t (:foreground "black" :weight bold)))) ;; `(company-tooltip-common-selection ((t (:foreground "black" :background ,yellow :weight bold)))) ;; `(company-tooltip-selection ((t (:background ,yellow :foreground "black")))) '(sh-quoted-exec ((t (:foreground "black" :underline t)))) '(font-latex-bold-face ((t (:weight bold)))) '(font-latex-italic-face ((t (:slant italic)))) '(font-latex-math-face ((t (:inherit default)))) ;; `(font-latex-math-face ((t (:box (:line-width 2 :color ,lazy :style pressed-button) ;; :foreground "black")))) '(font-latex-script-char-face ((t (:inherit default)))) '(font-latex-string-face ((t (:inherit default)))) '(font-latex-verbatim-face ((t (:inherit default)))) '(font-latex-sedate-face ((t (:inherit default)))) '(font-latex-warning-face ((t (:inherit default)))) '(font-latex-sectioning-5-face ((t (:foreground "black" :weight normal)))) ;; '(tex-math ((t (:inherit font-latex-math-face)))) ;; '(TeX-error-description-error ((t (:inherit default)))) ;; '(TeX-error-description-help ((t (:inherit default)))) ;; '(TeX-error-description-warning ((t (:inherit default)))) ;; '(TeX-error-description-tex-said ((t (:inherit default)))) `(shm-current-face ((t (:background ,bg-blue)))) '(shm-quarantine-face ((t nil))) `(avy-goto-char-timer-face ((t (:background ,bg-blue)))) `(avy-lead-face ((t (:background ,yellow)))) `(avy-lead-face-0 ((t (:background ,green)))) `(avy-lead-face-1 ((t (:background ,red)))) `(avy-lead-face-2 ((t (:background ,purple)))) '(custom-group-tag ((t (:inherit default :height 1.2 :weight bold)))) '(custom-variable-tag ((t (:inherit default :weight bold)))) '(company-coq-comment-h1-face ((t (:height 1.8 :slant italic :inherit (default))))) '(company-coq-comment-h2-face ((t (:height 1.4 :slant italic :inherit (default))))) '(company-coq-comment-h3-face ((t (:height 1.2 :slant italic :inherit (default))))) '(company-coq-coqdoc-h1-face ((t (:weight bold :inverse-video t)))) '(company-coq-coqdoc-h2-face ((t (:weight bold :underline t)))) '(company-coq-coqdoc-h3-face ((t (:underline t)))) ;; '(company-coq-coqdoc-h4-face ((t (:inherit (default))))) '(company-coq-features/code-folding-bullet-face ((t (:foreground "black" :weight bold)))) '(coq-solve-tactics-face ((t (:foreground "black" :underline t)))) `(proof-error-face ((t (:foreground ,red)))) '(proof-tactics-name-face ((t (:foreground "black" :weight bold)))) '(proof-tacticals-name-face ((t (:foreground "black" :underline t)))) `(proof-locked-face ((t (:background ,bg-blue)))) `(vertico-current ((t (:foreground "black" :background ,bg-blue :weight bold)))) '(magit-blame-heading ((t (inherit :default)))) '(magit-blame-margin ((t (inherit :default)))) '(magit-blame-hilight ((t (inherit :default)))) '(magit-branch-current ((t (inherit :default)))) '(magit-branch-local ((t (inherit :default)))) '(magit-branch-remote ((t (inherit :default)))) '(magit-branch-remote-head ((t (inherit :default)))) '(magit-cherry-equivalent ((t (inherit :default)))) '(magit-cherry-unmatched ((t (inherit :default)))) '(magit-diff-added ((t (inherit :default)))) '(magit-diff-added-highlight ((t (inherit :default)))) '(magit-diff-base ((t (inherit :default)))) '(magit-diff-base-highlight ((t (inherit :default)))) '(magit-diff-conflicting-heading ((t (inherit :default)))) '(magit-diff-context ((t (inherit :default)))) '(magit-diff-context-highlight ((t (inherit :default)))) '(magit-diff-file-heading-highlight ((t (inherit :default)))) '(magit-diff-file-heading-selection ((t (inherit :default)))) '(magit-diff-hunk-heading ((t (inherit :default)))) '(magit-diff-hunk-heading-highlight ((t (inherit :default)))) '(magit-diff-hunk-heading-selection ((t (inherit :default)))) '(magit-diff-lines-heading ((t (inherit :default)))) '(magit-diff-our ((t (inherit :default)))) '(magit-diff-removed ((t (inherit :default)))) '(magit-diff-removed-highlight ((t (inherit :default)))) '(magit-refname ((t (inherit :default)))) '(magit-refname-pullreq ((t (inherit :default)))) '(magit-refname-stash ((t (inherit :default)))) '(magit-refname-wip ((t (inherit :default)))) '(magit-section-highlight ((t (inherit :default)))) )) (provide-theme 'acme) ;; (cl-loop for face in (face-list) do ;; (set-face-attribute face nil :foreground nil :background nil))