dylanaraps / pywal

🎨 Generate and change color-schemes on the fly.
MIT License
8.34k stars 325 forks source link

Color palette resets to default #561

Closed Rostiger closed 3 years ago

Rostiger commented 3 years ago

Hi! Thanks for pywal! I'm using it in combination with Regolith and it's great! However, I can't seem to fix this issue with the gnome terminal: The colors are only applied as long as the terminal isn't reset. E.g. starting neomutt or running certain commands in nnn will reset the colors to the profile palette colors (which oddly still are set to Tango). See the screenshots below:

Screenshot from 2020-11-07 07-14-30 Screenshot from 2020-11-07 07-14-48

Is there a way to prevent this behaviour?

tcld commented 3 years ago

I have noticed resetting palettes with ranger (open a terminal with S, then quit) and weechat (resizing the window is enough for me). After quitting those, I also end up in a terminal with reset colors.

dylanaraps commented 3 years ago

Nothing I can do about this. These programs hard reset the terminal palette to its default. There are many closed issues about this.

tcld commented 3 years ago

Are there no known workarounds?

Rostiger commented 3 years ago

pywal stores the colors in a text file and loads them through the rc file of the terminal. Instead of doing that, I figure it must be possible to set the colors of the current palette directly, possibly by generating a new terminal profile?

tcld commented 3 years ago

I recently had to try out some other terminal emulators due to various bugs having appeared a while ago (there is an issue on the alacritty github, although alacritty doesn't seem to be at fault), and it seems that the issue described here might not be caused by some random programs being badly coded: Two of the terminal emulators I tested (rxvt-unicode and terminology) didn't show any issues at all, while all others did. So even though I am still not able to see the common denominator, switching to one of those two terminal emulators appears to be a workaround for the time being.