I know Visual Studio can auto format to make my methods and loops indented properly, but I cannot find the setting.
To format a selection: Ctrl+K, Ctrl+F
To format a document: Ctrl+K, Ctrl+D
See the pre-defined keyboard shortcuts. (These two are Edit.FormatSelection and Edit.FormatDocument.)
Note for macOS
On macOS, use the CMD ⌘ key instead of Ctrl:
To format a selection: CMD ⌘+K, CMD ⌘+F
To format a document:
CMD ⌘+K, CMD ⌘+D
For Visual Studio 2010/2013/2015/2017/2019
Format Document (Ctrl+K,Ctrl+D), i.e. press&hold Ctrl, press&release K then tap D as it is a sequence
Format Selection (Ctrl+K,Ctrl+F)
Toolbar Edit -> Advanced (If you can't see Advanced, select a code file in solution explorer and try again)
Your shortcuts might display differently to mine as I am set up for C# coding but navigating via the toolbar will get you to your ones.
If it isn't working, look for errors in your code, like missing brackets which stop auto format from working
I have installed an extension named "Format document on Save" which formats the whole document every time you save it.
For installing it in Visual Studio 2015 or Visual Studio 2017, on Tools just click the "Extensions and Updates...":
And then just go to "Online" at the left panel and search for "Format document on save":
Go to menu Tools → Extensions & Updates and type "productivity" in search:
Install 'Productivity Power Tools 2015'
Restart Visual Studio.
Go to menu Tools → Options → Productivity Power Tools → Power Commands and check "Format document on save":
Note: In VS2022 we don't have power commands.
If anyone want to have "Format document on save" and "Remove and sort using on save" install Mads Kristensen extension for VS2022 https://marketplace.visualstudio.com/items?itemName=MadsKristensen.CodeCleanupOnSave
After installing this extension it will automatically "Format document on save", "Remove and sort using on save" and "Apply file header preferences".
If we want to customize default settings click on "Configure Code Cleanup" menu item to add/remove any available fixers.
Visual Studio 2019 & 2022
Format Document, While you're holding down Ctrl button, first press K then D
Format Selection, While you're holding down Ctrl button, first press K then F
or just click Edit => Advanced => Format Document / Format Selection
Follow the steps below:
Go to menu Tools
Go to Options
Go to the Text Editor options
Click the language of your choice. I used C# as an example.
See the below image:
You can define new key bindings by going to Tools → Options → Environment → keyboard:
On mac : Shift + Option + F
On ubuntu : Ctrl + Shift + I
SinceVisual Studio 2022 17.1 there is a builtin Feature to run code formatting on save (see devblogs.microsoft), meaning there is no need to install extensions like Format document on Save.
In Visual Studio 2017, 2019, 2022
Format Document is Ctrl + E, D.
But...if you want to add the Format Document button to a tool bar do this:
Right click on tool bar.
Select "Customize.."
Select the "Commands" Tab.
Select the "Toolbar" radio button.
Select "Text Editor" from the pull down next to the radio button (or whatever tool bar you want the button on)
Now...
Click the Add Command button.
Categories: Edit
Commands: Document Format
Click OK
I used to use these combinations. I automated this process on Save of a document. You can try my extension Format Document on Save.
If you display the HTML Source Editing toolbar, there is a "Format the Whole Document" button as well.
The solution provided in accepted answer does not apply to Microsoft Visual Studio 2012.
In case of Visual Studio 2012, the shortcuts are:
For a highlighted block of code:
Ctrl + K, Ctrl + F
For the document-wide formatting:
Ctrl + K, Ctrl + D
In Visual Studio 2019 , "Code Cleanup" (RunDefaultCodeCleanup) is more advanced (taken from ReSharper):
Ctrl + K, Ctrl + E
Options dialog box: Text Editor → C# → Code Style → Formatting
Auto formatting settings in Visual Studio
Select the text you want to automatically indent.
Click menu Edit → Advanced → *Format Selection, or press Ctrl + K, Ctrl + F. Format Selection applies the smart indenting rules for the language in which you are programming to the selected text.
Step (1): Ctrl + A
Step (2): Ctrl + K
Step (3): Ctrl + F
Under menu Tools → Options → Text Editor, then going to the Formatting → General section of whatever language you wish to format you will find General. Check all three formatting check-boxes.
Under menuTools → Options → Text Editor, then going to the TABS section of whatever language you wish to format you will find Indenting. Select Smart and it will activate automatic formatting whenever you use one of the closing elements ; ) } within that block.
There isn't any need for keystrokes.
You can add the buttons to your toolbar by clicking the little drop down arrow to the right of the last toolbar button, select "Add or Remove Buttons" and then click the buttons you want to add a tick to them. The button(s) you select will appear on your toolbar ...
Then you just select text and click the Increase Indent or Decrease Indent buttons. I tested this on Visual Studio 2013 only.
In newer versions, the shortcut for the document-wide formatting is: Shift + Alt + F
Right click:
It works in Visual Studio 2015, maybe earlier version.
The original question said "I cannot find the setting."
Simple answer is: Look at top menu, then
Edit --> Advanced --> Format Document
You will also see the currently assigned key strokes for that function. Nothing special to memorize. This really helps if you use multiple developer environments on different operating systems.
Select the data and the right click and you will find this option.
Format Document and Format Selection:
Just to further Starwfanatic and Ewan's answers, you can customise your IDE to add any button to any toolbar - so you can add the Format button (as the HTML Source Editing toolbar has) to any other toolbar (like Text Editing with all the other edit controls like increase/decrease indent).
Click the arrow to the right of the toolbar → Add or Remove Buttons → Customize... → Commands tab → button.
Document Format and Selection Format are both under the Edit group.
(Tested in Visual Studio 2010 and Visual Studio 2013)
Windows Shift + Alt + F
MacOS Shift + Option + F
Linux Ctrl + Shift + I
With the Continuous Formatting extension (commercial, developed by me), the code is formatted really automatically as you type.
Visual Studio Extension - CodeMaid is pretty fine.
In Visual Studio 2015 and 2017 for C# code.
Scroll to the end of the file
Remove the last "curly bracket", }
Wait until the line above it shows an error
Replace the "curly bracket", }
Fini. :)
If it's still not working then you can select your entire document, copy and paste and it will reformat.
So ...
Ctrl + A
Ctrl + C
Ctrl + V
This is the only thing that I have found that works in Visual Studio Community Edition on Mac.
It's Shift + Alt + F in Windows.
But you can always double check by doing following.
Go to menu View → Command Palette or press Ctrl + Shift + P
Search for Format Document
You can press that to Auto Format Code or its hot key, written in front of it.
You can also use the CodeMaid Extension.
You can get the extension from Visual Studio Market Place.
Here is the link to the extension. CodeMaid
If you can afford it (or if you're eligible for the 30-day free trial) JetBrains' ReSharper can reformat a whole project directory.
Just install → right-click a directory → select Cleanup Code from the context menu.
Related
Prior to Visual Studio v15.4.1 [Ctrl] + [Mouse Left Click] would highlight (equivalent to double-clicking), which made copy and paste a convenient process.
F12: the keyboard shortcut for "Go to definition". ** this is what it does now **
double-click: selects / highlights the entire word. ** this is what it used to do **
Is there a way to revert the [Ctrl] + [Click] shortcut to go back to how it used to be?
Thanks to #Lord_Curdin - I ended up searching for the keyword "mouse" in the Visual Studio Options and found it.
You can disable the setting by going to:
→ Tools
→ Options
→ Text Editor
→ General
[ ] Enable mouse click to perform G̲o to Definition
There were Ctrl+E+C (comment) and Ctrl+E+U (uncomment) in older versions, or Ctrl+K+C and Ctrl+K+U.
But in VS 2012, I can't see key shortcuts:
How to enable those shortcuts?
Keyboard accelerators are configurable. You can find out which keyboard accelerators are bound to a command in Tools -> Options on the Environment -> Keyboard page.
These commands are named Edit.CommentSelection and Edit.UncommentSelection.
(With my settings, these are bound to Ctrl+K, Ctrl+C and Ctrl+K, Ctrl+U. I would guess that these are the defaults, at least in the C++ defaults, but I don't know for sure. The best way to find out is to check your settings.)
You can also add the toolbar in Visual Studio to have the buttons available.
View > Toolbars > Text Editor
Use the keys CtrlK,C to comment out the line and CtrlK,U to uncomment the line.
From your screenshot it appears you have ReSharper installed.
Depending on the key binding options you chose when you installed it, some of your standard shortcuts may now be redirected to ReSharper commands. It's worth checking, for example Ctrl+E, C is used by R# for the code cleanup dialog.
This is how I did it,
Menu Tools → Options on the Environment → Keyboard window
One can alter the default shortcuts following the below steps
Select Edit.CommentSelection in the listbox
Click on "Remove" button
Select "Text Editor" option in the dropdown under "Use new shortcut in:"
Press your own shortcut in the textbox under "Press shortcut keys:"
Example: Pressing Ctrl+E and then C will give you Ctrl+E, C
Click on "Assign" button
Repeat the same for Edit.UnCommentSelection (Ctrl+E, U)
I went to menu: Tools → Options.
Environment → Keyboard.
Show command containing and searched: comment
I changed Edit.CommentSelection and assigned Ctrl+/ for commenting.
And I left Ctrl+K then U for the Edit.UncommentSelection.
These could be tweaked to the user's preference as to what key they would prefer for commenting/uncommenting.
"commentLine" is the name of function you are looking for. This function coment and uncoment with the same keybinding
Shift + alt + a
the command palette is great for finding shortcut keys.
I installed the Visual Studio 2010 productivity power tools, and since then Shift + Enter does not add a new line in the text editor. I've tried disabling all of the productivity tools settings and even uninstalling the productivity power tools entirely, but Shift + Enter still does nothing. I can't find the setting for this.
How can I re-enable shift + enter to add a space (just like enter alone does)?
Go to Tools/Options/Environment/Keyboard.
Switch the "Use new shortcut in:" dropdown to "Text Editor".
Pick the Edit.BreakLine command.
In the Press shortcut keys edit pane press Shift+Enter.
From Options menu, select "Environment", then "Keyboard" that gives you the option of setting keyboard shortcuts. The one you want should be "Edit.BreakLine" - you can search for them. Selecting this, you can then add/remove assosciated shortcuts.
In new versions it was changed to Ctrl+Shift+Enter, And you easily can change it as sbi suggested
Try Ctrl + Shift + Enter to add a line bellow.
Ctrl + Enter will add a line above.
When I have a file open in visual studio/sql server management studio and have it split in to two panes, I'd like to be able to switch between the panes without having to reach for the mouse. Does anyone know if a shortcut key exists for this?
F6 is your friend.
I think you can assign this by going to Tools -> Options -> Keyboard and searching for SplitPane. You should be able to assign shortcut keys for the following values:
Window.NextSplitPane
Window.PreviousSplitPane
CTRL+F6 will cycle through your files and across panes.
In SSMS: right-click toolbars, customize. Under categories, select Window, then under Commands select "Next Split Pane". Drag to toolbar. Right-click and change name to "Next Split P&ane". You can now use alt-a to change split pane.
On Microsoft SQL Server Management Studio (SSMS) 2012, I figured out that it is the combination of Ctrl+Shift+UpArrow(or DownArrow). :-)
This was not easy for me for some reason. This method finally worked (similar to Steve Dignan's answer above but I don't have enough rep to comment yet).
In VS 2012, Tools, Options, Environment, Keyboard.
"Apply the following additional keyboard scheme" set to "Visual C# 2005".
"Use new shortcut in" set to 'Global'.
Enter "splitpane" in "Show commands containing" to get only the 2 desired commands.
Select the first one and remove any shortcuts already assigned.
Click inside the "Press shortcut keys" box and use "Ctrl + Alt + Up Arrow" for prev and down arrow for next.
If either of those shortcut chords are currently used by something else, you may need to search on that command and remove it from there. Then come back to the split pane commands and Assign.
Don't forget to close VS before you open another instance of it.
For Visual Studio 2010 (maybe others as well) F6 will work to jump between split panes if Tools -> Options -> Keyboard does not use the Visual C# 2005 keyboard layout additionally (which was the case for me for I-don't-know-why reasons - maybe I said yes to an installer/first-start question a long time ago).
Of course you will no longer be able to build your project with F6 afterwards. ;-)
For Visual Studio 2012: Tools -> Options -> Keyboard -> search by Window.Split and add a new shortcut.
I know that Ctrl + Shift + B launches a solution build, but I would like a shortcut that just builds the current project. Is a custom shortcut my only option?
Edit: Looks like a custom shortcut is my only option as Shift + F6 does not work for me.
Assigning the shortcut to "Build.BuildOnlyProject" command doesn't seem to work in VS2008.
Assign the shortcut to "Build.BuildSelection". If you have a solution with several projects and files open from the various projects, whatever file you are currently editing will define the project that will be built when you use the assigned shortcut for "Build.BuildSelection".
You'll know the keyboard shortcut is working when you click the Build menu option and you see the keyboard shortcut on the menu itself.
btw - a restart/reboot is not required when assigning keyboard shortcuts.
custom shortcut depending on what keybindings you are using.....if you look in your menu it will tell you if you have a keybinding.
The other thing I have got used to, because I make use of ViEmu, is use the menu shortcuts. Which are actually quite quick to do, and are independent of bindings.
So to build your project you go Alt + B, U
You can use the shortcuts already established in the main menu that are navigated with the Alt key:
At least for VS2013:
Alt + B, B -> Build Solution
Alt + B, R -> Rebuild Solution
Alt + B, U -> Build current project
Alt + B, E -> Rebuild current project
For some reason after installing Resharper I couldn't get a global shortcut to work (tried several times!!!), but as long as what you want to do is on the main menu, there is always an Alt + "Letter1", "Letter2" combination to trigger whatever action you'd like :-)
For C# development:
F6 or Shift+Ctrl+B - Builds all the projects in the solution.
Shift+F6 - Builds the selected project and its dependencies.
Visual Studio 2015/17
ALT + B + E
ALT + B = Open Build Menu
E = Rebuild Current Project
for C# development. Tools -> Options. Select Keyboard, select additional keyboard mapping scheme to "Visual C# 2005". This mapping has F6 as standard shortcut.
VS 2012 has Shift + F6 already mapped for this. I was surprised to learn this.
For Visual Studio 2017 community, you can use Alt+b then press u to build your current project.
Details: ALT Switch to the main menu -> choose b for build -> u choose the option of build your_project_name from the drop list.
In Visual Studio 2019 this has been set to Ctrl+b
In Visual Studio 2017 and 2019, Shift + F6 works for me.
As Happy Mittal said (Alt + B + J) open a drop window that select the project build, but then i had to press enter instead the last "B" (VS 2017).
In Visual Studio 2015, Alt + B, H will build your solution and publish it.
Sometimes I have to use Visual Studio in a language different than English and the navigation using Alt and a combination of keys is different. If there is someone in the same situation, I found out that is more convenient to create a keyboard shortcut to have consistency among languages. I followed the instructions from https://evanjpalmer.wordpress.com/2013/08/20/build-selection-short-cut-for-visual-studio/ to create the keyboard shortcut:
To set this up:
Tools -> Options -> Environment -> Keyboard (Spanish: Herramientas -> Opciones -> Entorno -> Teclado)
Put the cursor in “Press Keyboard Shortcut Keys” and shift CTRL+SHIFT+B
In Show Commands Containing, type: Build.BuildSelection (Spanish: Compilar.Compilarselección)
Select Build.BuildSelection from the drop down list and hit apply
Put the cursor in “Press Keyboard Shortcut Keys” and shift CTRL+ALT+SHIFT+B
In Show Commands Containing, type: Build.BuildSolution
Select Build.BuildSolutionfrom the drop down list and hit apply
???
PROFIT!
In the Visual Studio options window, under "Keyboard", look for the "Build.BuildOnlyProject" command and you can set whatever you want.
press (Alt + B + J + B) these key combinations to build only current selected project of the solution (VS 2010).
It selects "Build" option from toolbar (Alt + B key ) , then goto "project only" (J key ) and then "Build Only XXX" project (B key).