Traditionally, I've never been a huge fan of high contrast themes.  Though they always look way cool in the movies, I've never really enjoyed staring at them day after day.  I started getting bored with the default colour scheme of Visual Studio.  Sure, I had customized it a bit, but it didn't deviate much from stock settings.  So about a year ago I did some looking around for a new theme and I stumbled across a post by Oren Ellenbogen that led me to a blog posting on Jeff Atwood's site titled Is your IDE hot or not? I don't know about you, but mine certainly wasn't. I like this theme because it isn't stark white on black, but has more muted contrast between foreground and background.  My design criticism's will stop there because anyone knows me knows any kind of visually appealing graphic design is not my forté!

A custom Visual Studio theme is a personal thing.  It can directly affect your productivity.  It's a good idea to have a set of themes you can switch between in order to keep your visual perspective fresh and your brain sharp when the code just doesn't do it for you.

I honestly don't know exactly how much has been modified from the original version (and didn't care much to investigate). Some things off the top of my head were the following.

  • Duplicated settings between code and script colours
  • Changed region and URL foregrounds to yellow so they stood out better

Here's a screen cap.

Here's the plaintext code snippet that Jeff created to showcase his own theme.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#region codinghorror.com
class Program : Object
{
    static int _I = 1;
 
    /// <summary>
    /// The quick brown fox jumps over the lazy dog
    /// THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
    /// </summary>
    static void Main(string[] args)
    {
        Uri Illegal1Uri = new Uri("http://packmyboxwith/jugs.html?q=five-dozen&amp;t=liquor");
        Regex OperatorRegex = new Regex(@"\S#$", RegexOptions.IgnorePatternWhitespace);
 
        for (int O = 0; O < 123456789; O++)
        {
            _I += (O % 3) * ((O / 1) ^ 2) - 5;
            if (!OperatorRegex.IsMatch(Illegal1Uri.ToString()))
            {
                Console.WriteLine(Illegal1Uri);
            }
        }
    }
}
#endregion
If you use ReSharper there is one caveat, you must disable line highlighting.

Download my version of this theme here: http://randonom.com/m/darktheme/wladek_DarkTheme_20110801.zip