Back to Solarized 2020-07-14
I've been through a lot of color schemes over the years. I've spent hours combing through vimcolors.com, I've created my own color schemes and tweaked ones that I've found, and devoted a lot of effort to porting color schemes made for one environment to others so that all my workspaces can match. What do I have to show for all this time and energy? Nothing. I'm sick of this self-imposed constant struggle for some kind of perfect aesthetic in the tools of my trade. I have decided to settle down with an old classic, Solarized. This article is maybe more for myself than anyone else; laying down the motivations behind the change will hopefully keep me reminded of how and why I got here.
There are a number of things I look for in a color scheme. First, I prefer a dark scheme, though I also like to use light themes on occasion; I've found that I prefer writing prose with a light theme and code with a dark theme. I like my themes to be relatively low-contrast and low-saturation; if the colors are too vivid, I find it distracting. Probably my most important and most difficult to achieve requirement is that a theme be portable. Throughout a workday, for various reasons I'll switch between Vim, VS Code, and Sublime Text, and of course, my terminal. If at all possible, I want all of these environments to more or less match. Historically, this has meant doing a lot of work to port a theme I like that only exists for one environment to all the others and maintaining a repository of themes I've ported. This is both extremely difficult to manage effectively and correctly and a pain.
Solarized easily ticks all of these boxes. It's low contrast, has light and dark versions, and is available in every environment on my list, oftentimes by default without needing to install any extensions. Solarized goes above and beyond by being available not only in the environments I listed but also, for example, in my GUI HTTP client of choice, Insomnia, and in the Neocities in-browser editor.
You don't care what color scheme I'm using, but maybe you have similar compulsions that take up time you could be using more productively. If I had spent all the time I've wasted converting Vim themes to Emacs for no reason actually writing code, I'd have finished one of my many side projects by now. There's something to be said for spending a bit of time up front to be more productive later, but at some point you have to stop sharpening your tools and actually use them to do what you want to do.