F5 hotkey should run the application, not refresh various views
The menu says that "Start Debugging" is F5. However, more and more of the views in VS grab F5 for their own evil ends.
While this is consistent with Explorer and Internet Explorer, it is wrong and annoying. F5 has for many years been defined in VS as "Start Debugging".
For F5 to work in VS2013 you have to have a source code file open and click in it to give it focus before pressing F5. I am now constantly finding myself refreshing Team Explorer, Pending Changes, etc etc instead of running the program I'm developing. If I make the mistake of closing all my source code windows and then decide to run the program, I actually have to locate a source code file and load it before I can run using the run hotkey.
This is probably the most used hotkey in the whole IDE. Please stop all the other views stealing it to do an operation that should never be needed in the first place (refresh pending changes never does anything useful because it always keeps itself up to date!)
Thanks for taking the time to share this suggestion. This item has been around for a couple of versions of Visual Studio and we haven’t acted on it. Looking at the VS “15” plans, we’re not going to take action on this item, so we’re going to close it. If the suggestion is still relevant, please either take a look to see if there’s another suggestion that’s similar that you can vote on, or open a new suggestion.
- The Visual Studio Team
@Maria, the problem is that *many* views use *global* F5 for "refresh" (DOM explorer, WorkItemEditor, WorkItem Query View, Work Item Results View, Team explorer, Build Detail Editor) as well as Debug.Start. By any standard, "Global" hotkeys should only have *one* default binding, not seven. Debug.Start had the binding first, so my argument is that it was poor design to corrupt it.
If users want Team Explorer to grab F5 away from this global binding, then it should be an *opt-in* feature of Team Explorer, not an opt-out feature for Visual Studio. Isn't it cleaner for users to *add* bindings if they want F5 to refresh? (or they could use Ctrl+R, which is *also* a Windows standard keypress for "refresh" - why do we need two hotkeys for the same thing)?
I would argue that "refresh" in all of the cases in point is just the programmer avoiding detecting when their cached state is out of date - indeed, Pending Changes now (VS 2013/2015) keeps its state properly up to date but it *still* steals F5!
Maria Ghiondea - MSFT commented
F5 was bound to refresh when Team Explorer was redesigned to have a more web-like navigation model with back/forward buttons and lots of links inside the pages. The majority of users requested this and the users who don’t like it can still unbind it in their settings:
go to Tools\Options\Environment\Keyboard
You’ll want to select View.Refresh as the command name, and choose “F5 (Team Explorer)” in the Shortcuts for selected command combobox. Then click Remove. This will unbind View.Refresh from the F5 key in the Team Explorer keyboard namespace.
caesar hernandez commented
Shift + F10 brings up the context menu, then hit G, then S
Xavier Decoster commented
You can assign a shortcut to the ClassViewContextMenus.ClassViewProject.Debug.StartNewInstance in Tools>Options>Environment>Keyboard.
I used CTRL+S+N for instance.
Worked for me :)
Tom Kerkhove commented
You can add a shortcut in Visual Studio for information check http://twitpic.com/995tq4
Tom Kerkhove commented
Well it's not really a TFS-issue but I think that rightclicking your project > Debug > Start New Instance should get a shortcut so that you'll work faster if you just want to build that single application that is your "Startup project"