--- /dev/null
+;; Copyright (c) 2022 Jakub Czajka <jakub@ekhem.eu.org>
+;; License: GPL-3.0 or later.
+;;
+;; conf-theme.el - custom theme.
+
+(deftheme conf
+ "Custom theme.")
+
+(custom-theme-set-faces
+ 'conf
+ ;; Buffer rendering.
+ `(default ((t (:background "#2a2a2a" :foreground "#f5f5f5"))))
+ `(cursor ((t (:background "#808080"))))
+ `(fringe ((t (:inherit default))))
+ `(highlight ((t (:inherit default :box "#ffffff"))))
+ `(italic ((t (:underline nil))))
+ `(link ((t (:foreground "#63a8ce" :underline t))))
+ ;; Symbols.
+ `(font-lock-comment-face ((t (:foreground "#00b000"))))
+ `(font-lock-constant-face ((t (:foreground "#fcb321"))))
+ `(font-lock-doc-face ((t (:inherit font-lock-comment-face))))
+ `(font-lock-function-name-face ((t (:foreground "#fed065"))))
+ `(font-lock-keyword-face ((t (:foreground "#75bff3"))))
+ `(font-lock-string-face ((t (:foreground "#fcba04"))))
+ `(font-lock-type-face ((t (:foreground "#5398be"))))
+ `(font-lock-variable-name-face ((t (:foreground "#ce9878"))))
+ ;; Mode line.
+ `(mode-line ((t (:background "#423f3b"
+ :box "#7f7f7f"
+ :foreground "#d5d5d5"))))
+ `(mode-line-inactive ((t (:inherit mode-line))))
+ ;; Selection.
+ `(region ((t (:background "#204461"))))
+ `(secondary-selection ((t (:inherit region)))))
+
+(provide-theme 'conf)
;; directory.
(let ((conf-directory (expand-file-name "conf" user-emacs-directory)))
+ (push conf-directory custom-theme-load-path)
(push conf-directory load-path)
+ (load-theme 'conf t)
+
(dolist (file (directory-files conf-directory nil ".+\\.el?$"))
(require (intern (file-name-sans-extension file)))))