diff options
| -rw-r--r-- | .emacs.d/eighters-theme.el | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/.emacs.d/eighters-theme.el b/.emacs.d/eighters-theme.el index 8a9970b..c2d6430 100644 --- a/.emacs.d/eighters-theme.el +++ b/.emacs.d/eighters-theme.el @@ -91,28 +91,33 @@ (eighters-color 'bg hue-sym 'dimmer) (eighters--brightest-bg hue 19.75)))) (load-theme 'eighters t)) -(defun eighters-show-palette () +(defun eighters-showcase--insert (&rest _) + (erase-buffer) + (pcase-dolist (`(,sym ,color) + eighters-palette) + (pcase-let* ((`(,r ,g ,b) (color-name-to-rgb color)) + (`(,h ,s ,l) (color-rgb-to-hsl r g b))) + (let (bg fg face) + (if (string-prefix-p "fg" (symbol-name sym)) + (setq fg color + bg "#000") + (setq bg color + fg "#fff")) + (setq face `(:foreground ,fg :background ,bg :extend t)) + (insert + (propertize (format "%-16s\t(%.3f %.3f %.3f) (%.3f %.3f %.3f)\t\t%.3f\n" + sym r g b h s l (modus-themes-contrast fg bg)) + 'face face)))))) + +(defun eighters-showcase () (interactive) (let ((buf (get-buffer-create "*Eighters palette*"))) (with-current-buffer buf - (pcase-dolist (`(,sym ,color) - eighters-palette) - (pcase-let* ((`(,r ,g ,b) (color-name-to-rgb color)) - (`(,h ,s ,l) (color-rgb-to-hsl r g b))) - (let (bg fg face) - (if (string-prefix-p "fg" (symbol-name sym)) - (setq fg color - bg "#000") - (setq bg color - fg "#fff")) - (setq face `(:foreground ,fg :background ,bg :extend t)) - (insert - (propertize (format "%-16s\t(%.3f %.3f %.3f) (%.3f %.3f %.3f)\t\t%.3f\n" - sym r g b h s l (modus-themes-contrast fg bg)) - 'face face))))) + (eighters-showcase--insert) + (setq-local revert-buffer-function 'eighters-showcase--insert) (pop-to-buffer buf)))) -(defun eighters-dump-palette () +(defun eighters-serialize () (interactive) (let ((blacks '(bg bg-hl-dimmer bg-hl-dim bg-hl)) (colors '(red green yellow blue magenta cyan)) |
