April 4, 2018 by Kenneth Fisher
There has been talk of a dark theme for SSMS for years. Does it exist, will it exist? Well, the answers really are yes, and no. And by that I don’t mean yes and no as in maybe. I mean litterally, does it exist yes and will it exist no.
First of all, why does anyone care? Well, for some of us staring at a white screen all day long is just downright annoying if not headache inducing. A darker background is just easier to work with. Although it is harder to see when presenting so I don’t recommend it there, but for day to day work, it’s quite nice.
The other day a co-worker of mine (not even a DBA or database developer as it happens) pointed me to this article on SQLShack about setting up the dark theme for SSMS. Just to be somewhat complete in this post I’m going to review basically how it’s done but follow the link for details.
Using a text editor run as an administrator edit ssms.pkgundef in one of the following two directories:
- SSMS 16 – C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio
- SSMS 17 – C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio
Yes, this means that this only applies to the latest two versions of SSMS. Once in the file find the Remove Dark Theme category and comment it out (using // at the beginning of each line).
Next restart SSMS and …
We have a Dark theme!
But, there are a few problems. First, let me point out that as far as I know, this isn’t a supported thing. If you have the dark theme enabled you may have issues with MS support. Also, you’ll notice that it’s not applied everywhere. Some areas are still white. In fact, it’s pretty hit and miss. There is a reason for this. From what Ken Van Hyning (t) has said there are many pieces of code that are not theme aware and the cost to fix it is just too high. Which means that in SSMS we aren’t ever likely to have a fully consistent dark theme. (What I meant by yes and no.) That said the new SQL Operations Studio is fully theme aware. So if you really want the dark theme you can use that. It can’t do everything that SSMS can (it’s also still in preview) but it’s coming along.
But that does bring up another problem. I really don’t like the dark theme. The icon colors are pretty cool, and I like how the disabled stuff is clearly obvious but I find the black on dark gray words in the menu hard to read and overall it’s just a bit too dark for, me. So what’s a guy to do? Well a while back I read a post by Aaron Bertrand (b/t) about how he had the colors on SSMS set up. In it, he also mentioned Doug Holland’s version which is pretty much what I’m currently using. The menus, output, windows etc are unchanged but I find the query window much easier to read. And since that’s where I spend most of my time it works for me.
Unfortunately, his file doesn’t appear to be available anymore so I’ve exported mine and added it here.
If you want to see more about how I have my SSMS set up go here.