Why is the atom.io application automatically cycling through themes/colors?


#1

Can someone give some insight into why atom is automatically theme/color cycling every 2 seconds? The application is fully functional, but all open panes keep cycling through themes/colors. Initially I thought it may be related to “file indexing”, but after several hours of being open, it’s still doing it. I’ve closed the app several times, performed all updates, even restarted my machine, but it’s still happening. It seems a rather random response to anything, whether error or otherwise.


#2

What themes do you have active? Does this occur when you open Atom from the command line with atom --safe?


#4

No. “atom --safe” worked just fine. I had about 60 plugins and about 30 additional themes installed. I ended up just reinstalling Atom and reconfiguring my settings. I’m back to good now. Although it would be nice to have more debug info from the “IDE”. Thanks for the response.


#5

Atom is not an IDE and does not pretend to be one. It’s a code editor that can be configured to be very much like an IDE, but still able to be broken apart and rebuilt differently. Because much of its functionality comes from third-party packages, there’s not always consistent messaging when one of them breaks. Since safe mode fixed the problem, it was probably being caused by one of your packages.


#6

I’m fully aware, hence the quotes around “IDE”. That said, it was theme switching constantly without provocation, or updates, for hours on end; even after multiple restarts. It would seem reasonable for debug data to be available for such an extreme manifestation of a bug – even if it were simple “theme change event” output. However, I saw nothing in the profiler.


#7

You can set up output for that event yourself. However, packages in Atom are given quite a large amount of leeway. Atom probably never recognized it as a bug. All it knew was that it was being told to change its theme. It’s on the package developer to anticipate potential bugs with how their package functions and write specs or error messages to catch flaws like that.