A dependency-free, pywal-based, automatic, terminal-aware Emacs color-picker and theme generator.
ewal-doom-themeshave been added!ewal-wal-json-filehas been renamed toewal-json-file.ewal-load-wal-colorshas been renamed toewal-load-colors.ewal-get-colorhas been renamed toewal-load-color.ewal--get-colorhas now been exposed asewal-get-color. Both functions do the same thing, except thatewal-load-colorwill always callewal-load-colorsfirst, whileewal-get-colorexpects the user to do so first, for a marginal performance improvement.ewal-spacemacs-theme-*-high-contrasthave been deprecated. To achieve the same effect(setq ewal-shade-percent-difference 10)
- Add
ewal-doom-themesscreenshots.
A theme isn’t just a colorscheme. ewal lives by that. It uses pywal
as a backend to spruce up your Emacs setup by default, but also sports
over 200 built in palettes to do so if you don’t use the program (or
shudders, you use a DOS system).
It adds extra shades to pywal palettes and makes your Emacs look
sexy in a GUI and in a terminal (pywal users
only). ewal-spacemacs-themes shows what ewal can do in 400 flavors
of spacemacs-theme and doom-themes, while ewal-evil-cursors
spices up, well, your evil cursors. It also provides a function to
colorize spaceline accordingly. All these packages (with the
excepton of doom themes) are available on MELPA.
These are the fundamentals. For more detail, see the docstrings.
Get a color and a specific shade (+ for ligther, - for darker):
(ewal-load-color 'magenta +4)Use built-in palettes if your pywal theme fails to load (otherwise
you just get a black-and-white theme and something about color being
nil):
(setq ewal-use-built-in-on-failure-p t)Always use built-in palettes:
(setq ewal-use-built-in-always-p t)Pick a built-in palette:
(setq ewal-built-in-palette "sexy-material")Set custom folder and custom filename for pywal scheme (if you use
wpgtk or keep your own palette somewhere on your system):
(setq ewal-json-file "~/path/to/cache-file")Use special cursor for insert state when evil insert bindings are disabled:
(setq ewal-evil-cursors-obey-evil-p t)My config with all its warts:
(use-package ewal
:init (setq ewal-use-built-in-always-p nil
ewal-use-built-in-on-failure-p t
ewal-built-in-palette "sexy-material"))
(use-package ewal-spacemacs-themes
:init (progn
(setq spacemacs-theme-underline-parens t
my:rice:font (font-spec
:family "Source Code Pro"
:weight 'semi-bold
:size 11.0))
(show-paren-mode +1)
(global-hl-line-mode)
(set-frame-font my:rice:font nil t)
(add-to-list 'default-frame-alist
`(font . ,(font-xlfd-name my:rice:font))))
:config (progn
(load-theme 'ewal-spacemacs-modern t)
(enable-theme 'ewal-spacemacs-modern)))
(use-package ewal-evil-cursors
:after (ewal-spacemacs-themes)
:config (ewal-evil-cursors-get-colors
:apply t :spaceline t))
(use-package spaceline
:after (ewal-evil-cursors winum)
:init (setq powerline-default-separator nil)
:config (spaceline-spacemacs-theme))

