How do you switch focus directly to docked windows in visual studio? - visual-studio

As a vim user, I am used to being able to switch the focus to different windows that are side by side with Ctrl-W [hjkl]. While Visual Studio offers very nice organization using docked windows, I find that using the Ctrl-Tab navigation window disorienting when all I want to do is switch focus to the pane that is to the left or right of the one I'm currently using.
Is there any good way to switch focus in Visual Studio between open windows?
I am using Visual Studio 2012.

As a (Vs)Vim-mer I am also looking for that essential feature.
Yesterday my VS2013 was behaving strange, but today it is working fine again (don't know what happened), i.e.:
When you have enabled VsVim Handling for ctrl+w in
Tools/Options/VsVim/Keyboard
then Visual Studio behaves like gVim.
If it happens that Visual Studio does not behave as expected (like yesterday ;-)) then you may alternatively use the similar shortcut:
ctrl+F6 which is assigned to Window.NextDocumentWindow.
This is quite sufficient to switch between both panes. If you hold the ctrl key down and typing F6 another time then it switches to another window, so release the ctrl key when having switched the pane.
You may add / change to another shortcut for this command via the Environment/Keyboard Option.

Related

Visual Studio 2013 Debug keyboard shortcuts are not working

I just got a new computer with Windows 8 and installed Visual Studio 2013 on it and now I have an issue with debugger shortcuts - I run application in a debug mode and it breaks at the first break point but when I try going further line by line, F10 does not work from the keyboard - only VS Debug menu. Anything I am missing?
P.S. The issue was the function key. It needs to be turned on in order to use F keys
On Lenovo laptops, there is a shortcut to disable the Fn key automatically running the default Windows shortcuts.
Hit the Fn key and the Esc key at the same time to toggle the "Hot Key" default.
Hope this works for other Laptop brands since this is an easy shortcut for newer Lenovo laptops.
Please follow the instruction here, though it talks about visual studio 2010 it should help you to analyze the problem. it may be solved with the steps described there and if not, please let me know...
Why does F10 (step over) in Visual Studio 2010 not work?
Update Adding the answer from the source in case the link will be removed:
In the Options.Keyboard page, please select "Debug.StepOver" from the command listbox, and then put focus to the "Press shortcut keys" textbox and press F10, click Assign button to re-assign shortcut, does it work?
You can also try to run Visual Studio under safe mode, which will
prevents all third-party VSPackages from loading when Visual Studio
starts; if the issue disappear under safe mode, you may consider
checking your installed add-ons or VSPackages.
Second, to log all activity of Visual Studio to a log file for further
troubleshooting, please use the /Log switch, and post the log file
content here, so we can do more investigation on it.
If this feature works well before, and suddenly behave abnormally, it
usually indicate that some files or configurations of Visual Studio
installation is corrupted or missed, you can:
Restores Visual Studio default settings by using "Devenv.exe
/ResetSettings" command. Please backup your settings before restore to
default settings.
Repair/reinstall Visual Studio;
To repair Visual Studio In the Add or Remove Programs dialog box,
select Visual Studio then click Change/Remove.
I resolved my issue and wanted to post an answer in case anyone is looking for it. Enabling function key does not require any complicated solution, it can be enabled by changing settings in:
Control Panel -> Hardware and Sound (Category) -> Windows Mobility Center -> Adjust Commonly Used Mobility Settings
Look Under Function Key Behavior and change the dropdown value to "Function Key" to enable Fn key.
To disable it, select "Multimedia Key" 
See: http://elena-sqldba.blogspot.com/2015/05/how-to-enable-function-key-on-windows.html
Also check 3rd party software. In my case I had Camtasia Recorder open and minimized, which apparently intercepts the F10 input (thanks, TechSmith)
I had the same problem. My solution was a bit different and can apply to any key. My F10 key was not working. After unplugging the keyboard and plugging it back in did not fix the problem, I twisted the keyboard like an ice cube tray and the F10 key started working again.

Is there a way to "bind" my Mouse4 button to "Navigate Backwards" in visual studio?

The title pretty much explains the whole question. I'm using Visual Studio 2010 Premium, I like the Navigate Backward command for when I right click on something and do go to definition and then I want to go back to where I was Navigate Backward works. But I'm so used to my mouse button button doing that, I've noticed I've starting using it in Visual Studio and expecting it to go back but it doesn't. I know how to change the command to a different key press, but is there a way to make it work on a mouse button?
This seems to be a (pointless) Limitation of the C++ IDE in Visual Studio. In C# the mouse buttons work as expected, but not in C++.
There are several Addins for Visual Studio to cover this functionality, I'll point you to the one that I found in this answer:
http://www.codeproject.com/Articles/57119/Forward-Backward-Code-Navigation-with-the-Mouse-Th
This Add-In worked for me. I could also upgrade it to Visual Studio 2012 by simply changing the Version-Tag in the Addin-file to "11.0".

Dock Code Windows in Visual Studio 2010

In Visual Studio, you are able to dock code windows in horizontal and vertical tab groups (something you can also do with tool windows).
However, when doing so you may end up with a lot of redundant screen space. What would be ideal would be if you could mix docking orientations for code windows. This is possible with tool windows in Visual Studio 2010. Here is an image showing the feature used for tool windows:
My question is: is it possible to get this same functionality with the code windows - i.e. being able to mix horizontal and vertical docking, like with the tool windows shown? I've heard rumours that its possible, but I've been unable to find any truth in that.
I too wish this was a naitive feature in visual studio, but there is one workaround by using the 'floating tab group' feature of visual studio
Move the visual studio main window out of the way (maybe to another monitor, or to smallest area of the monitor needed to see the tooling windows)
"Tear out" or Right Click > Float on the desired tab
Position the tab to your desire (I suggest using WinSplitRevolution, via codinghorror)
Repeat, note that you can move a tab to an existing 'floating' tab group
And voila!
There are some setbacks, some commands will pop up over the main tooling window instead of your current tab group etc. but its still pretty nice. I'm not sure if there's any changes coming in VS2012, but I haven't heard about anything related.

Ctrl+' (Apostrophe) Refactor! binding doesn't work when Notepad++ is open?

This is a really odd one that has been annoying me for some time, I use CodeRush and Refactor Pro at home and at work, since the switch to Visual Studio 2010 I have been unable to use the keyboard shortcut (Ctrl+') for the Refactor/CodeRush context menu:
For a long time I blamed VS2010 or CodeRush/Refactor! Pro for the issue and just worked round it with the mouse. At some point in time I realised that if Notepad++ was open the shortcut key didn't work.
Depending on what type of file is loaded in Notepad++ alters the effect; for example, if I have an XML/HTML/XAML file open a tag and all of it's children are removed.
I have just tried Notepad++ v5.8.6 with some source files opened and IDETools 10.2.4 in Visual Studio 2010, Windows 7 and everything seems to work fine - the CTRL+' shortcut works as expected. Probably you might want to change the shortcut to something similar like CTRL+1 in the DevExpress\Options\IDE\Shortcuts options page.

Navigating backward and forward with the mouse in Visual Studio 2008

My install of Visual Studio 2008 does not support IE style back and forward navigation withe the mouse in the C# code editor.
Searches show that multiple people have run into this problem but I have yet to find a correct solution.
There's even a VS add-in hack just to work around the "bug".
Any idea why this functionality fails for some users and how to fix it?
You can mitigate the problem by AutoHotKey tool (free, open source).
Let's assume your Visual Studio 2008 has these editor commands and their respective shortcuts:
View.NavigateBackward = Ctrl+-
View.NavigateForward = Ctrl+Shift+-
You should be able to verify these shortcuts in keyboard options. Verified? Let's proceed.
So will you be just fine if your mouse will send these keyboard shortcuts if the Visual Studio's main window is active?
Then install the tool and add the following two mappings:
XButton1::^-
XButton2::^+-
These correspond to above keyboard shortcuts: ^ = Ctrl, + = Shift, - = -
Using AutoHotKey icon in notification area, reload definition file you just updated. Now your mouse buttons should produce the above shortcuts. Test them.
If they work for you in Visual Studio editor, you can limit them only to Visual Studio main window, otherwise they work across the entire desktop:
SetTitleMatchMode, RegEx
#IfWinActive, .*- Microsoft Visual Studio
XButton1::^-
XButton2::^+-
#IfWinActive
Feel free to adjust title-matching regex if needed.
Do not forget to reload definitions file to apply any changes you made.
Bonus:
And here are some other handy operations if you are holding Shift or Ctrl:
(You have those mouse buttons, let's use them... for commands across the entire desktop.)
+XButton1::^c
+XButton2::^v
^XButton1::^x
^XButton2::^z
(Letters must be lowercase, because uppercase means Shift+letter.)
(And always make sure you are running AHK elevated (as administrator.))
Enjoy!
Visual Studio 2008 is an editor and the apps built in it can also be built in any later version such as Visual Studio 2015. Not trying to be flippant, but the fix is to move to a later version of Studio. If money is a factor look into the Community version. (See Free Dev Tools - Visual Studio Community 2015)

Resources