VS 2010 Productivity Power Tools Update (with some cool new features)

Last month I blogged about the VS 2010 Productivity Power Tools Extensions – a free set of Visual Studio 2010 extensions that provide some really nice additional functionality.

The initial Visual Studio Productivity Power Tools release included a bunch of really useful productivity enhancements – including a much faster “Add Reference” dialog, lots of code editor additions and enhancements, and some nice IDE improvements around document tab management.  You can learn more about these features in my previous blog post.

VS 2010 Productivity Power Tools Update

Yesterday we shipped an update to the VS 2010 Productivity Power Tools which adds some nice new features and enhancements.

If you already have the VS 2010 Productivity Power Tools installed, you can update it to the latest release by choosing Visual Studio’s “Tools->Extension Manager” menu command.  This will bring up the VS 2010 Extension Manager – which allows you to browse and download new extensions.  If you click the “Updates” tab on the left-hand side of the dialog it also allows you to see any updates that are available for extensions you already have installed within your IDE.

Simply click the “Update” button for the Productivity Power Tools extension and it will download and install an update for it:

image

If you don’t already have the VS 2010 Productivity Power Tools installed, you can download and install it here.

Sean has a nice blog post that describes all of this week’s productivity power tool updates and additions.  Below are a few of the highlights:

Tools Options Support

The top feature request with the productivity power tools has been to have the ability to turn on/off individual features and extensions it provides. 

With last month’s release you couldn’t easily turn individual features on and off.  Starting with this week’s update you can use Tools->Options within VS 2010, and use a new Productivity Power Tools section to easily enable/disable each feature individually:

image

In addition to enabling/disabling individual features, you can also tweak/edit their settings (including color schemes and behavior).

Solution Navigator

Solution Navigator is a new VS 2010 tool window provided with this week’s update.  It acts like an enhanced Solution Explorer.  It merges functionality from Solution Explorer, Class View, Object Browser, Call Hierarchy, Navigate To, and Find Symbol References all into one tool window – and is pretty darn cool.  Here are just two scenarios of how you can take advantage of it:

File + Class Explorer in One

You can use the “Solution Navigator” to browse your project just like you would with the standard “Solution Explorer” tool window today.  Except instead of ending with only file sub-nodes, you can now expand them to see classes as well as individual methods and members within them. Clicking on one of the sub-nodes will navigate you immediately to the appropriate code block within the code editor.

For example, below we’ve expanded the \Controllers folder within an ASP.NET MVC project and drilled into the AccountController.cs file – which has a AccountController class within it.  We can now drill into that class within the “Solution Navigator” to see a listing of all of its members – and double-click any of them to jump to it within the code editor:

image

Filter Solution

You might have noticed the search box that is at the top of the Solution Navigator above.  You can search within it to quickly filter your solution view. 

For example, below I’ve entered the string “Log” – which causes the “Solution Navigator” to automatically filter to only show those files and members that contain the word “Log” in their names (everything else is hidden within the explorer).  Notice below how my filtered views displays a “view template” file named “LogOn.cshtml”, the three “LogXYZ” methods within my AccountController class, the LogOnModel class within the AccountModels.cs file, and several tests within my test project whose names contain Log:

image

You can double click any of the filtered files or members to immediately navigate to it within the code editor.

Quick Access

Quick Access is a new VS 2010 tool window that allows you to quickly search for and execute common tasks within the IDE.  Ever wondered where a particular menu command is located?  Or ever struggled to find a specific option within the Tools->Options dialog?  Just enter it within Quick Access and it will help you locate it:

image

Clicking any of the items within the list will execute the command, or take you to the appropriate place in the IDE where it lives (in the case of Tools->Options settings):

image

Above I searched for “format” and brought up all the tools->options format settings.  Clicking the “Text Editor->C#->Formatting->New Lines” item within the list opens up the Tools-Options dialog to that exact option location.

Summary

I’ve only touched on a few of the improvements with this week’s update.  Read Sean’s blog post for even more details on the updates and improvements.

If you haven’t installed the free VS 2010 Productivity Power Tools, I highly recommend doing so – I think you’ll find some useful extensions that you’ll like.  If you already have last month’s release installed, you can easily update it to this week’s release to take advantage of even more cool features – as well as benefit from bug fixes and performance improvements.

Hope this helps,

Scott

P.S. In addition to blogging, I am also now using Twitter for quick updates and to share links. Follow me at: twitter.com/scottgu

65 Comments

  • Very Nice Scott, shall update now.

  • wow the solution explorer stuff is greatly useful

  • It would be nice if the insert references dialog had an option to insert the reference from the path it was browsed from instead of finding the same DLL in the GAC and referencing that. This then helps creating when we just want to get the latest version and 'build' without having to worry about SDK's or reference dll's being in the GAC.

  • Solution Navigator looks great!

  • Love the new Solution Navigator :)

  • Many useful stuff out there... Great news Scott and team!!!

  • Scott, where can I get red t-shirt like yours? Maybe with a "The Gu Fan club" on it :). I'm serious I'd love a t-shirt like yours.

  • Very cool Solution Navigator - I love it.
    Just wondering, Is that "MVC3Sample" only naming or the real one ?

  • When I open the Solution Navigator pane (awesome idea, BTW), It says 'Unable to get code items' for all classes, webservices, etc. So I'm not seeing a nice tree of classes, list members, etc.

    I'm also using DevExpress CodeRush. Do these interfere?

  • I really like that new Solution Explorer. Great new feature. Thanks!

  • It's a great update, I've been waiting for ability to turn off Highlight Current Line feature.

  • Hmm, looks like this fixing one of VS's flaws - solution explorer being file based not class based. The class explorer is ok, but this looks like another good option :)

    Nice to see that your team are working on adding new features after the RTM.

    Are the screengrabs of the MVC3 demo a subtle hint towards a comming CTP?

  • I have tried everything but unable to find the "Copy as HTML" anywhere. The extension is enabled.

  • I get 'Unable to get code items' in the code behind classes in an asp.net 3.5 website project. works fine for class library projects.

    otherwise top knotch!

  • What's with the iphony checkbox sliders in the options? What's wrong with a regular checkbox?

  • Could you PLEASE keep the iphonesque user interface elements out of desktop applications at least? What's wrong with standard checkboxes, which are used everywhere else in Visual Studio and everywhere else in Windows. Maybe they could even fit into the (non-resizable) dialog box without need for scrolling.

  • Hi Scott,

    forget my earlier comment. Closing the solution, restarting VS (once again, which makes two restarts in total) then re-opening the solution fixed my problem of not showing classes, members, etc in Solution Navigator.

    Thanks for this awesome add-on.

    Peter.

  • Awesome...
    I love the "Filter" feature!

  • I keep hoping to see zen coding added to this list. Any chance we'll see it for 2010?

  • Really Awesome. Pretty good whether include in VS2010 SP1 ;)

  • When will VS get { & ( matching in javascript code?

    VS rocks, but I have to use Net Beans for my complex JS files b/c VS doesn't do paren & brace matching. (so far as I know)

    Thanks -Alan

  • I haven't upgraded yet, but these look like some great features! Keep up the good work.

  • The exact example for Quick Access shown above makes Visual Studio crash. I press ctrl+3 and type 'format' and Visual Studio is a goner.

  • I see they're using the Apple'esque checkboxes in Visual Studio now, they're spreading like the plague (seen 'em in websites too). Keep up the good work though :-)

  • Hi,

    I always get "Unable to get code items" in a website, .net 4. Already did restart several times, with several projects.

    Any clue?

    Thanks,
    António mateus

  • I have absolutely no idea when to use all of these features. I'm a professional developer since the early '90s, using .NET since the beginning and VS2010 is really good. But why waste a lot of good men-hours on these things? Core. Fast compiler, good help, easy studio. That's what I'm thinking. I'm also a certified architect (which cost me a good lot of money) but have I used any of the VS tools? No. They look neat, of any use? Would we build a system worth 15,000 men-hrs on those tools. No. And were working on systems much larger that that but no-one has so far been comfortable with these tools. And we are actually monitoring and evaluating every single release and add-on.

    The Studio is really, really great and we build large systems based on the core items. The other things? No.

  • How do I change background color of my Solution Navigator? It's PINK!

  • @Pierre-Alain Vigeant:

    Can you please contact me at westonh AT microsoft.com so we can debug the cause of your crash?

    Thanks,
    Weston Hutchins
    Program Manager - VS Platform

  • Nice! But still no Javascript outlining???? Why has that not been implemented yet? Such a simple thing.

  • Does these tools available for Express SKU ?

  • did u try installing this plugin on low end computers and laptops? its makes VS really slow. seems like room for lot of performance improvements here.

  • These are hugely productive! Thanks! I'm using the regex tab highlighting to distinguish my specs from my other classes.

    .*(S|s)pec(s)?\.cs$

    One request. Could we get some different block indentation options? I find VS over-indents in C# when you span lines in object initialization. For example:

    var response = new ServiceResponse
    {
    StatusCode = HttpStatusCode.OK,
    Value = new BusinessSearchResults24
    {
    InAreaListings = new ListingSummaryCollection24
    {
    TotalListings = 100,
    Listings = new List
    {
    new Listing24
    {
    Name = "listing 1",
    Addresses = new List
    {
    new Address24
    {
    AddressId = 1,
    Address1 = "address1",
    City = "city",
    State = "state"
    }
    }
    }
    }
    },
    SearchInfo = new SearchInfo24 {ExpandedLocation = "King Of Prussia"}
    }
    };

    I'd prefer an option for a single indent, regardless of where you break your line.

  • Hi Scott,

    When is support for F# planned? its a first class citizen in Visual Studio yet tools like this and Code Contracts provide limited support for F#. The Solution Navigator for instance doesn't seem to provide information for F# files :(

  • Hi Scott,

    I had a HUGE fail today with the Power Tools. All my code disappeared from the editor, all the tabs froze, Solution Explorer wouldn't repaint it's windows if stretched beyond 1024x768.

    Not included in todays bugs, the ctrl + click feature has removed the ability to follow a url from the source editor.

    I love the tools, but with the fast release cycles, it seems a good portion of bug testing may be getting overlooked.

    Thanks,

    Cory

  • It crashes my visual studio eveytime I click on any file in the editor.

    -TS

  • COOL!! Keep it comming! ;)

  • My VS10 crashes when i try to use Quick Access, I have tride it a couple of times but it always crashes VS10.

  • Argh.. no drag-drop in solution navigator either!!! C'mon :(

    Karl

  • Hi Scott,
    Just as Cory Fowler mentions in the previous comment, the fast release cycle and the improvement that the plugins brings is amazing, but on my side as well, I am disappointed by the quality of the tools regarding bugs, which could probably be avoided with more careful testing.
    I am working in Oslo, Norway. Norwegian keyboards (and many other european keyboard schemes) use ALT GR + [NUMBER] to print special characters such as @£$€{[]} this combination of keys has been set in the productivity tools to some features, and they don't seem to be configurable. As a result, I just can't use this plugin at all and had to disable it completely. Please make those shortcuts configurable via the usual panel Tools>Options>Environment>Keyboard. This is mandatory for such a plugin.

    Stephane

  • Please could the Mac-style On/Off buttons be replaced with normal checkboxes? This would allow more options to fit on the page; the options dialog doesn't need touchscreen-style UI, and it makes it inconsistent with the rest of the OS :)

    Is it possible to share the source for some or all of the tools, too? It would be great to learn from some official, supported samples and maybe even contribute in the future.

    I also second Pop Catalin's request for ScottGu red shirts via mail order ;) Maybe with proceeds to charity?

  • Scott... you always rock... nice one

  • That´s really innovating. Congrats!

  • So were you *trying* to copy elements of the iPhone interface, or did it just happen naturally?

  • i love the iphone switches -- on my iphone, since its a touch interface. in a desktop app they just seem really, really out of place.

  • Looks like a hybridization of iOS interface elements and OS X/Nextstep... Better than the checkboxes, but wow... Might be some IP issues there.

  • Looks like an improvement, but I have to say -- the fact that the on/off slider is reversed from all common practice confirms my long-standing belief that the "ok/cancel" buttons (with which the slider is presumably designed to harmonize) are backwards.

    There was UI testing, I'm sure, but does this not bother other people?

  • This is a huge productivity booster for me, thank you very much.
    One possible bug I have encountered so far is that
    in the solution navigator the selected tab highlighted only in the All files display mode. It does not seem to work when I click on different tabs in the open files mode. In the open files mode, the highlighted file stays the same even when I click on different tabs.


  • Any more iOS UI elements coming up for VS? Because it looks great... on an iPhone.

  • Thanks for sharing scott, nice features specially the solution navigator.

  • The UI of Visual Studio 2010 reminds me of Windows 2000 and not in a good way. Why on earth does it not use the standard system theme?

  • A great feature (apologies if I ahven't found it) would be an option on interfaces to show all implementations.

  • Just wondering... Why are the disclosure triangles using different styles in different windows? Look at the second and the third screenshot. One of them have only painted borders on collapsed, and solid 45 degree rotated triangles when revealed. The other one has solid triangles in both cases, and 90 degree rotated when revealed.

  • The one thing I'm really missing at the moment is the ability to auto-generate an interface from a class.

    I'm in the vb.net world and am sure I've seen this option before, either with c# or maybe resharper.

  • I really hate the big Apple-style switches. We're developers, not kids on iMacs.

  • It is a great tool but I think you need at least 4 GB Ram for it. :)

  • Scott. Nice One!

    One feature that I really really want is to click on an interface and see right there who implements it. With big solutions like ours, its very tough to be able to see who is implementing a particular interface without resorting to trickery! I sometimes end up using reflectors anaylze feature for our own dlls! I am sure that could be added in the next powertools update. Thanks.

  • Filter in Solution Navigator made me install that Productivity Pack.
    It was surprisingly easy to install.
    Good job!

  • In one Word "AWESOME"
    BUT I have a problem regarding Solution Navigator in ASP.NET aspx pages
    it shows me "Unable to get code items" ?? what's wrong

  • HOW TO Remove guidelines??, the 'Remove guideline' from the menu guideline is always disabled

  • @armadillo.mx

    >>>>>>>> HOW TO Remove guidelines??, the 'Remove guideline' from the menu guideline is always disabled

    You should be able to right-click on the guideline within the editor and then there will be a remove guidline context menu option.

    Hope this helps,

    Scott

  • Re: >>>HOW TO Remove guidelines??, the 'Remove guideline' from the menu guideline is always disabled

    This was a problem for me due virtual spacing (auto-tab). Ensure the caret is on an character and the option to remove becomes available again.

  • "It merges functionality from Solution Explorer, Class View, Object Browser, Call Hierarchy, Navigate To, ...". Does this extension work with VB.net projects if "Call Hierarchy" is a C# specific function?

  • Thanks Scott, for the Power tools install - I will put this to good use. I will check back for more good updates.

  • I can't find the entry for the new Productivity Power Tools section in the Tools > Extras Menu. Could it be possible this is not working in VS 2010 Ultimate German under Windows 7 64bit? By the way: when I install Resharper it is also impossible to find the Resharper Section in the Extras Menu. I already binged and googled the web, but I couldn't find any solution for my problem.

  • Thanks IanMac. I was also unable to remove guidelines due to right-clicking on the dead space area. I had to fill a line full of garbage text to ensure there was a character underneath the guideline so the remove guideline option would be enabled.

Comments have been disabled for this content.