From 35c21d603a8e560a42e67486c917a521cfc1b7da Mon Sep 17 00:00:00 2001 From: Kévin Le Gouguec Date: Wed, 11 Jan 2023 00:56:58 +0100 Subject: Add function to dump current value of eighters palette --- .emacs.d/eighters-theme.el | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to '.emacs.d/eighters-theme.el') diff --git a/.emacs.d/eighters-theme.el b/.emacs.d/eighters-theme.el index f61a494..69bd749 100644 --- a/.emacs.d/eighters-theme.el +++ b/.emacs.d/eighters-theme.el @@ -70,6 +70,34 @@ (mapcar 'cadr eighters-palette) "*Eighters palette*")) +(defun eighters-dump-palette () + (interactive) + (let ((blacks '(bg bg-hl-dimmer bg-hl-dim bg-hl)) + (colors '(red green yellow blue magenta cyan)) + (whites '(fg fg-dim fg-dimmer)) + (beg (point)) + (format-sym + (lambda (sym) + (format "(%s \"%s\")" + sym (car (alist-get sym eighters-palette)))))) + (insert + "(defvar eighters-palette\n'(" + (string-join (seq-map format-sym blacks) " ") + "\n") + (let ((beg (point))) + (dolist (hue colors) + (dolist (template '("fg-%s" "fg-%s-dim" "fg-%s-subtle")) + (insert (funcall format-sym (intern (format template hue))))) + (insert "\n") + (dolist (template '("bg-%s" "bg-%s-dim" "bg-%s-dimmer")) + (insert (funcall format-sym (intern (format template hue))))) + (insert "\n")) + (align-regexp beg (point) "\\(\\s-*\\)\\(\"[^)]\\|(\\)" 1 1 t)) + (insert + (string-join (seq-map format-sym whites) " ") + "))\n") + (indent-region beg (point)))) + (defun eighters-color (symbol) (car (alist-get symbol eighters-palette))) -- cgit v1.2.3