I finally downloaded the Productivity Power Tools extension for Visual Studio 2010. This is really really cool. To install the extension just double-click the .vsix file and you’ll see it in VS2010 –> Tools –> Options:
Here are some of its features:
- Solution Navigator: Yes, currently we do have the Solution Explorer and for most purposes it is decent, but Solution Navigator comes with some nifty features. Not just the files in the project, now you can also see the properties and methods declared in the class file. Double-click on a method and it’ll open the file (if not open) and take you directly to that method. I went ‘well this’ll come in handy’.
The other think you might notice in the above image are the links that read – All, Open, Unsaved, Edited. This is the other coolness about the Navigator. When All is selected, it behaves just like our good ol’ Solution Explorer and shows all projects of the solution. Now when you click on ‘Open’, this one shows only those folders whose files are currently open. Right when I did this, found something weird. I do see the Controllers folder being displayed even though I don’t have any *controller.cs files open. Unless I’m reading this incorrectly, I guess this is a bug.
Likewise, the Unsaved and Edited files (files modified in this session) can also be filtered. When you have an unsaved file, it shows a red dot next to the file name, as against the ‘*’.
Also closely look at the icons just below the title ‘Solution Navigator’… I’m particularly interested in the second one – ‘Collapse All’… handy!!
The other thing you might have observed is that the tabs are color coded. Now every project is assigned with a color. That way you kinda have a visual that two files belong to the same / different project. This scheme is also customizable:
The other feature of PowerTools is the Quick Access window:
This helps you with the following items (list taken from ScottGu’s blog):
- Execute Main Menu and Context Menu commands
- Open the New Project Dialog with a specific Project Template selected
- Show a tool window
- Jump to a Visual Studio Options page
- Navigate to an open document in your Tab Well
- Create and execute a series of actions (task)
Again I see some issues with this. Look at Project Templates. The last three items don’t have any ‘ca’ in them and yet are being shown. Another bug?
You can now pin a file and do things like Close All But Pinned. This has been another feature that I’ve missed – I want just three files and close the rest. Now this is doable in just one click.
On the coding side, there’s more visibility (the gray box) on the line where the cursor sits:
Here’s another little useful guy that I’m sure will be used by many. Let’s say I’m having some code as below:
At this point, I can do a SHIFT+ENTER and it’ll add the semi-colon for me on that line and move the cursor to the next line. Wow… I know I’ll use this heavily.
More on the coding side, when I hover over a type say ‘productsRepository.Products’, I get the following extended fly-over:
And when you click on the ‘References’… it shows all the places where ‘productsRepository.Products’ is used. And clicking on the item takes you to that code. Pretty awesome isn’t it?
You can do the same on a method name and you’ll get a couple of more options than a property:
So I have a navLinks.Add() method that this is what is shows.
The Contains shows all the local variables in the method. You’re already familiar with the References. ‘Called By’ shows callers of this method and ‘Calls’ filters the callers of this method.
There was something else that concerned me. I don’t want to call it a bug, but it does feel a little ‘icky’. I have had PowerCommands for quite some time now. So when I installed PowerTools, this issue surfaced. Say I have multiple files open and I right click on one of the files, I see ‘Close All’ twice.
To make this go away, all I had to do was to disable PowerCommands from the Extensions Manager and restart VS2010 and I see the option only once. I know this has nothing to do with PowerCommands itself, but it’s just one of those things.
Despite some of these minor issues, these are some of the things I found quite interesting about Visual Studio 2010 Productivity Power Tools. I’m sure many others will too.
Verdict: After installing PowerTools, I’ve stopped using Solution Explorer and switched completely to Solution Navigator… it’s that good!
I emailed ScottGu about these issues and he tagged me to Sean Laberee (great guy, very helpful). Here were his responses on the issues:
1. Regarding the unopened items showing up in opened files filter, he says:
I’ve reproduced the issue where you are seeing *controller.cs files open in the Solution Navigator even though they are not really open. We’ll take a look at this.
2. With respect to non-relevant items showing up in the Quick Access, he defends and explains the behavior of Quick Access as:
The issue that you’ve reported with Quick Access is actually a feature. If you hover over the Project Templates, you’ll notice the words “can” & “catalog” in the descriptions.
The results are prioritized such that those that have “CA” in the title are above those that have “CA” in the description to maximize the relevance of a hit with the items at the top of the list. I’m not saying that the design is right but we’re certainly listening to the feedback to see if we need to alter it.
3. The last one was a bummer... I see two 'Close All' options, but Sean sees only one even though he has both Power Commands and Power Tools. But he did show me a way to make one go away (other than disabling PowerCommands). You can edit the contents of a menu item and remove unwanted items. See image below (sent by Sean).