Over the last few months, Microsoft has been adding a wide range of new productivity features to its Visual Studio 2017 application development platform based on developer feedback and comments, and now the company wants to highlight those improvements.
“Many of these are the result of your direct feedback coming from the UserVoice requests, Developer Community tickets and direct feedback we’ve encountered while talking to developers,” wrote Allison Buchholtz-Au, the program manager for the Visual Studio platform, in an Aug. 30 post on The Visual Studio Blog.
The latest features are included with Visual Studio 2017 Version 15.8.
Included in the latest version is multi-caret support, which allows users to create multiple insertion and selection points in their code. Called multi-caret or multi-cursor support, many Visual Studio Code users reported that they missed the feature when working in Visual Studio, so it has been added. Now users won’t have to perform workarounds such as opening single files in Visual Studio Code or installing extensions such as MixEdit to gain the benefits of this feature. “We’ve added native support for some of the top requested features in the multi-caret family and we’re just getting started,” wrote Buchholtz-Au.
An assortment of new quick commands was also added to offer a range of keyboard combinations to simplify coding.
- Duplicate line, which lets users duplicate a code selection without affecting what is already on their clipboard. One scenario where this often popped up was when a developer wanted to clone a method and rename it by pasting a name they had previously copied, wrote Buchholtz-Au. The Duplicate Code keyboard combination is Ctrl + D, allowing users to streamline the process of duplicating code.
- Expand or contract a selection lets users expand or contract a code selection by growing it to the next logical code block (Shift + Alt + +) or to decrease it by the same block if they select too much (Shift + Alt + –). In the past, users would have to incrementally add to their selection word by word, use a series of Shift plus arrow keystrokes or use a mouse.
- Moving between issues in a document can now be done with a Next/Previous Issue key combination (Alt + PgUp/PgDn), which lets users navigate to the next error, warning, suggestion or other issue in the current document. This allows users to move between issues in sequential versus severity order and gives you more progressive context as they are moving through the issues.
- Users can now view and prioritize search results from recent files by turning on the recent files filter. The Go To All results will show a list of files opened during that session and then prioritizes results from recent files for the search term. Go To Member is now scoped to the current file by default or can be toggled back to solution level by turning off Scope to Current Document (Ctrl + Alt + C).
- Users can now easily get back to a last edited location by going to Edit > Go To > Go To Last Edit Location (Ctrl + Shift + Backspace). In the past, users could start writing a feature and then realize they needed more information but had no easy way to get back to their earlier work. This combination solves that problem, wrote Buchholtz-Au.
Other new features include two new keyboard profiles for users, Visual Studio Code and ReSharper (Visual Studio), to help developers increase their productivity in Visual Studio. “Learning keyboard shortcuts takes time and builds up specific muscle memory so that once you learn one set, it can be difficult to retrain yourself when the shortcuts change or create mappings that match your previous shortcuts,” wrote Buchholtz-Au. “This problem came to light as we heard from users who frequently switch between Visual Studio and Visual Studio Code, and those who used ReSharper in the past.”
A new C# code clean-up function has also been added through the Format Document command. Code cleanup will respect settings configured in an .editorconfig file, or lacking that rule or file, those set in Tools > Options > Text Editor > C# > [Code Style & Formatting], she wrote. “Rules configured as none in an .editorconfig will not participate in code cleanup and will have to be individually fixed via the Quick Actions and Refactorings menu.”