Closed cyruseuros closed 5 years ago
I just discover that the issue has nothing to do with variable passing. If I assign the value before a call to load-file
(currently developing a wal-based theming engine that can be used without spacemacs theme, but meshes well with it) it works, but if I call it after it fails.
For the the record, I'm using wal-theme-load-spacemacs-theme-colors
from this package: https://gitlab.com/jjzmajic/wal-theme.el, which I am loading with load-file
for now. Interestingly enough, the variable does get set, it just seems it doesn't get set in time to change spacemacs-theme
.
I was trying out ewal and ran into this. The current definition of dyn-let
makes it so that spacemacs-theme-custom-colors
has to be set before loading spacemacs-theme
because the value is computed at macro expansion time instead of when the expansion runs. I think it would be better to remove dyn-let
entirely and just do something like this inside a let with the default values:
(cl-loop for (var . val) in spacemacs-theme-custom-colors
do (set var val))
This would fix the issue here and make it possible to later change the custom colors and (re)generate a theme.
Amazing! Should I make the changes in a PR branch to test them out or do you prefer to make the chnages? Also what do you think of ewal?
Amazing! Should I make the changes in a PR branch to test them out or do you prefer to make the chnages?
Feel free to make a PR. I won't be able to get around to it immediately.
Also what do you think of ewal?
It looks really good for some of the themes I've tried, and it looks better than the Xresources theme for the colors I've tried (often a lot better). It's also nice that it's easy to change the theme on the fly when using the daemon (e.g. emacsclient --eval '(my-func-to-regenerate-spacemacs-theme)'
). There seem to be less colors/text differentation overall compared with most themes; part of that may be because sometimes pywal colors can end up being really similar. I don't know if I mind or not yet; I just started using an ewal theme yesterday. I'll open issues with any concrete suggestions I have.
The fewer colors thing is intentional for a more modern look, but you bring up a fair point in that it shouldn't be forced on the user. What do you think about making two functions? One modern/minimal, and the other with all the bells and whistles? If you wanna see all the available colors use describe-variable
on ewal-extended-palette
and turn on rainbow-mode
. Adding more shades is a single parameter in the function, so if you would like more please let me know
Regardless of whether I use
custom-set-variables
orsetq
custom colors are only applied if I explicitly quote analist
. I cannot pass in a variable that contains an alist.