August 4th, 2022

Differentiating Visual Studio instances

Mads Kristensen
Principal Product Manager

When you have multiple instances of Visual Studio open at the same time, it can be tricky to tell them apart. Especially if you’re working on different branches of the same solution, which makes them look almost identical. What if each instance could have a unique color so you could instantly tell them apart? Would you use it?

Colors applied to Visual Studio

The Peacock extension for Visual Studio Code does exactly that, and with 1.7 million installs it appears to be working great for lots of developers. A feature request on the Visual Studio Developer Community is gaining steam asking for the same feature be added to Visual Studio, so please vote and comment if you’re interested.

An experiment

Due to the UI differences in Visual Studio Code, it may not be desirable to port Peacock as is to Visual Studio. Instead, we may need a different UI paradigm and colorization scheme. Let’s experiment and keep iterating to find the best solution together.

We’re starting out with an extension to kick off the experiment. We call it Solution Colors and the first iteration puts a 3-pixel thick colored line above the status bar (see image above).

Getting started

After installing the extension, you are ready to start colorizing Visual Studio. The way it works is that you manually assign a color to a solution, by right-clicking the top tree node in Solution Explorer.

Solution/Folder context menu

Every time you open that solution, the extension applies the color automatically. Select None from the list to remove it again. It works for both solutions and for folder-based workspaces (CMake, etc.).

You can adjust the thickness of the line from the Tools -> Options dialog to suit your liking. Find it under Environment -> Fonts and Colors -> Solution Colors.

Options for Solution Colors

Both built in and custom themes are not affected by this colorization.

Next steps

If this feature is interesting to you, please install the Solution Colors extensions and take it for a ride. Make sure to share any ideas and bugs on the GitHub issue tracker, and feel free to send pull requests too. The feature request ticket is a great place to share your comments and thoughts, so make sure to vote and comment there as well.

Do you like the idea of community experiments like this one? Let us know in the comments below.

Author

Mads Kristensen
Principal Product Manager

Mads Kristensen is a principal program manager on the Visual Studio team and has published over 150 free Visual Studio extensions. He blogs about anything related to Visual Studio and can often be found hosting various shows on the Visual Studio YouTube channel..

36 comments

Discussion is closed. Login to edit/delete existing comments.

  • Алексей Пшеничный

    Although particularly idea of colorization of solutions does not make any sense to me, I’m excited about the whole idea of community experiments. Mad, please, keep going and keep us updated!

  • Alexander Gayko

    Hey, I solved this problem years ago by allowing for putting a file specifying a VS theme name into the solution folder, so it can go into source control.
    This also enables branch-specific visual distinction, if people want that, too 🙂

    Built this extension for that purpose: AutoThemeSwitcher

  • Jason King

    Looks pretty spiffy! It would be nice if the solution colors could appear next to the solution name in the Open dialog, but I suspect that might be a whole different set of settings and parsing from what was required for what’s currently in the extension. For the places it does show up, this is a well done and useful addition to VS!

  • Gauthier M. · Edited

    Just fix your awful windows 11 taskbar by adding the possibility to “ungrouping similar apps” + “show window title” and that’s done…

    Windows 11 is the most unusable version of windows I have ever seen (and I used to love Window 8, so no excuse)

  • Kevin Pattison

    Nice differentiator. Perhaps consideration of having multiple desktops with allocated name for each desktop might be useful also – while running a few instances concurrently. If only the desktop name appeared in the VS status bar or the VS heading. Colours are useful, however over time does allow for some muddling, yet with named desktops the clarity might have longer lasting gains. These assists are truly appreciated, Thanks.

  • Peter Nimmo

    For those unfortunate people like me who have to use TFS, could you also add a setting to make it so that all Visual Studio instances share the same view of TFS Included and Excluded changes, one of the problems of having multiple Visual Studios open is that if you accidentally submit from the wrong instance of Visual Studio you can find yourself checking in files that weren't meant to be part of the final...

    Read more
  • Jim Waite · Edited

    There is also this extension: https://marketplace.visualstudio.com/items?itemName=Wumpf.SolutionColor which has been around for a while.

    It colours the main title bar which I think has a bit more visual impact than a 3-pixel thick line (of course, if you are in full-screen mode, colouring the title bar doesn't help)

    (note: the Wumpf.SolutionColor extension hasn't been entirely updated for VS2022, (works fine on older versions). There are some workarounds on the author's github to make it work in...

    Read more
  • Neil MacMullen

    I've raised several feedback comments suggesting that the _theme_ should be optionally coupled to the solution rather than the user. I would like more distinction than just a small bar at the bottom of the screen. VS Code is far more flexible in this regard - I can use a red-theme for a release branch to warn me I'm working on something critical in which case the entire window background is red rather...

    Read more
  • Juliano Goncalves

    Mads, can you elaborate about where this setting is persisted? Does it go inside the “.vs” folder along other solution-related caches, like the .suo? Or does it keep its own tracking of which solution is which color somewhere else?

    Asking just to understand if clearing the “.vs” folder would eliminate this information or not, since that is something I actually do with some frequency.

    • Mads KristensenMicrosoft employee Author

      It’s stored in the .vs folder in a file called color.txt

  • Yanesh Tyagi

    What about VS for Mac support?