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

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

;;; 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))))
`(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