You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

137 lines
6.4 KiB
EmacsLisp

;;; epaper-theme.el --- Custom face theme for Emacs
;;
;;; Commentary:
;; This is a bright, low-contrast theme that is inspired by the sepia color palette of
;; Mozilla Firefox's reader view.
;;
;;; Code:
(deftheme epaper
"A low-contrast theme inspired by Firefox Reader view.
Basic, Font Lock, Isearch, SH, ERC and Powerline faces are included.
Note: for correct (readable) display of the ERC channel header
line, set `erc-header-line-face-method` to `t`.")
(let ((class '((class color) (min-colors 256)))
(default-color "#5b4636")
(background-color "#f4ecd8")
(tinted-background-color "#f9f5eb")
(toolbar-color "#f9f5eb")
(string-color "#000000")
(highlight-color "#808080")
(link-color "#0095dd")
(visited-link-color "#c2e")
(shadow-color "#ADA29A")
(shaded-background-color "#DBD4C2"))
(custom-theme-set-variables
'epaper
`(window-divider-default-right-width 4)
`(tab-bar-separator "")
`(tab-bar-close-button-show nil))
(custom-theme-set-faces
'epaper
`(default ((,class (:background ,background-color :foreground ,default-color))))
`(cursor ((,class (:background ,default-color))))
`(fringe ((,class (:background ,tinted-background-color :foreground ,highlight-color))))
`(window-divider ((,class (:background ,toolbar-color :foreground ,toolbar-color))))
`(window-divider-first-pixel ((,class (:background ,background-color :foreground ,background-color))))
`(window-divider-last-pixel ((,class (:background ,toolbar-color :foreground ,toolbar-color))))
`(table-cell ((,class (:background ,shaded-background-color :foreground ,default-color))))
`(tab-bar ((,class (:background ,tinted-background-color :foreground ,shadow-color))))
`(tab-bar-tab ((,class (:background ,tinted-background-color :foreground ,default-color :bold t))))
`(tab-bar-tab-inactive ((,class (:background ,tinted-background-color :foreground ,shadow-color))))
`(shadow ((,class (:background ,background-color :foreground ,shadow-color))))
`(fill-column-indicator ((,class (:background ,background-color :foreground ,tinted-background-color))))
;; Highlighting faces
`(highlight ((,class (:background ,highlight-color :foreground ,toolbar-color
:underline t))))
`(region ((,class (:background ,toolbar-color :foreground ,default-color))))
`(secondary-selection ((,class (:background ,highlight-color :foreground ,default-color))))
`(isearch ((,class (:background ,highlight-color :foreground ,toolbar-color))))
`(lazy-highlight ((,class (:background ,highlight-color :foreground ,default-color))))
;; Mode line faces
`(mode-line ((,class (:background ,toolbar-color :foreground ,default-color))))
`(mode-line-inactive ((,class (:background ,background-color :foreground ,default-color))))
;; Escape and prompt faces
`(minibuffer-prompt ((,class (:foreground ,default-color :weight bold :slant italic))))
`(escape-glyph ((,class (:foreground ,default-color :weight bold))))
`(homoglyph ((,class (:foreground ,default-color :weight bold))))
;; Font lock faces
`(font-lock-builtin-face ((,class (:foreground ,default-color :weight bold))))
`(font-lock-comment-face ((,class (:foreground ,string-color :slant italic))))
`(font-lock-constant-face ((,class (:foreground ,default-color))))
`(font-lock-function-name-face ((,class (:foreground ,default-color))))
`(font-lock-keyword-face ((,class (:foreground ,default-color :weight bold))))
`(font-lock-string-face ((,class (:foreground ,string-color))))
`(font-lock-type-face ((,class (:foreground ,default-color :weight bold))))
`(font-lock-variable-name-face ((,class (:foreground ,default-color :underline t))))
`(font-lock-warning-face ((,class (:foreground ,default-color :underline t))))
9 months ago
`(corfu-default ((,class (:foreground ,default-color :background ,tinted-background-color))))
`(corfu-current ((,class (:background ,background-color :foreground ,default-color))))
`(completions-annotations ((,class (:foreground ,highlight-color))))
`(completions-common-part ((,class :foreground ,default-color :weight bold)))
`(completions-first-difference ((,class :foreground ,string-color)))
;; Button and link faces
`(link ((,class (:foreground ,link-color :underline t))))
`(link-visited ((,class (:foreground ,visited-link-color :underline t))))
`(button ((,class (:background ,toolbar-color :foreground ,default-color))))
`(header-line ((,class (:background ,toolbar-color :foreground ,default-color :weight bold))))
`(line-number ((,class (:background ,background-color :foreground ,highlight-color))))
;; Mode Line faces
`(mode-line-inactive ((,class :background ,toolbar-color :foreground ,highlight-color)))
`(mode-line ((,class :background ,toolbar-color :foreground ,default-color)))
;; Powerline faces
`(powerline-inactive0 ((,class :background ,toolbar-color :foreground ,highlight-color)))
`(powerline-inactive1 ((,class :background ,toolbar-color :foreground ,highlight-color)))
`(powerline-inactive2 ((,class :background ,toolbar-color :foreground ,highlight-color)))
`(powerline-active0 ((,class (:background ,toolbar-color :foreground ,default-color))))
`(powerline-active1 ((,class (:background ,default-color :foreground ,background-color))))
`(powerline-active2 ((,class (:background ,default-color :foreground ,background-color))))
;; SH Mode faces
`(sh-heredoc ((,class (:foreground ,string-color :slant italic :weight bold))))
`(sh-quoted-exec ((,class (:foreground ,default-color))))
;; ERC Mode faces
`(erc-header-line ((,class (:background ,toolbar-color :foreground ,highlight-color))))
;; Highlight indentation mode faces
`(highlight-indentation-face ((,class (:background "#ebe6da"))))
;; Notes List faces
`(notes-list-face-stripe
((,class (:background ,tinted-background-color))))
`(notes-list-face-highlight
((,class (:background ,toolbar-color :foreground ,string-color))))
`(notes-list-face-title
((,class (:foreground ,string-color :weight bold))))
`(notes-list-face-summary ((,class (:foreground ,default-color :slant italic))))
`(notes-list-face-tags ((,class (:foreground ,default-color :background ,toolbar-color))))
`(notes-list-face-time ((,class (:foreground ,default-color :slant italic))))
) ; End custom-set-faces
) ; End let
(provide-theme 'epaper)
;; Local Variables:
;; no-byte-compile: t
;; End:
;;; epaper-theme.el ends here