[Перевод] Крутые фичи Visual Studio 2019

Несколько дней назад мы объявили об общей доступности Visual Studio 2019. Лично я использую Visual Studio 2019 с момента первой внутренней сборки — задолго до выпуска Preview 1 в декабре 2018 года. За это время обнаружилось много маленьких особенностей, которые заставили меня улыбнуться и сделали мою работу более продуктивной.

Я хочу поделиться некоторыми из них с вами, поскольку они не все очевидны, а некоторые требуют изменения некоторых настроек. Подробности под катом!

r0g529_seiuzxtyie5kvdkclzlm.gif

За перевод спасибо нашему MSP, Льву Буланову.

Загрузка Clean Solution

Когда решение закрыто, его состояние сохраняется, и в следующий раз, когда вы откроете его, Visual Studio сможет восстановить свернутое/развернутое состояние проектов и папок в обозревателе решений (Solution Explorer) и снова открыть оставленные открытыми документы. Это замечательно, но я предпочитаю чистый лист, когда открываю решения — файлы не открываются, а все узлы дерева в обозревателе решений разрушаются.

Я создал расширение Clean Solution, чтобы обеспечить такое поведение в предыдущей версии Visual Studio. Эта функция теперь встроена в Visual Studio 2019 и может быть включена двумя отдельными галочками. Перейдите в поиск (Ctrl+Q) и введите load, чтобы найти страницу Projects and Solutions > General options.

Снимите галочки Reopen documents on solution load и Restore Solution Explorer project hierarchy on solution load.

6ff8b778a6bcb7d398a9f99c8d8e6354.png

Дополнительным преимуществом снятия этих двух галочек является то, что решения будут загружаться быстрее из-за устранения накладных расходов при восстановлении состояния. Win-win.


Git pull сочетанием клавиш


Я много работаю с репозиториями GitHub и часто принимаю запросы от людей. Это означает, что я должен сделать git pull перед тем, как делать последующие коммиты. Но, как оказывалось неоднократно, это можно легко забыть. В результате я сталкивался с конфликтами слияний и другими неприятностями.

В прошлом единственным способом сделать git pull было использование Team Explorer, командной строки или внешнего инструмента. Что я действительно хотел получить, так это сочетание клавиш в Visual Studio, которое бы делало это для меня.

Раньше команда pull в Team Explorer не была командой, которой можно назначать сочетания клавиш, но теперь это так. Перейдите к поиску (Ctrl+Q) и введите «keyboard», чтобы найти страницу Environment > Keyboard. В ней найдите команду Team.Git.Pull в списке. Затем присвойте ей любое сочетание и нажмите кнопку ОК. Я решил использовать Ctrl+Shift+P.

05eba8c1dcca50bccd11ce12bb67e09e.png

Чтобы автоматически выполнить git pull при загрузке решения, попробуйте открытое расширение Git Pull.


Code Cleanup для C#


Ведение аккуратно-отформатированного исходного кода и обеспечение согласованности стилей кодинга — это то, в чем я никогда не был хорош. Новая функция Code Cleanup очень помогает поддерживать мой код в чистоте и порядке, поскольку я настроил его для запуска всех фиксеров по умолчанию.

Для этого перейдите в меню Code Cleanup, расположенное в нижней части окна редактора, и нажмите Configure Code Cleanup.

9cfe560847e44df7f96ce5438496073d.png


В диалоговом окне выберите все фиксеры один за другим на нижней панели и нажмите кнопку со стрелкой вверх, чтобы переместить их наверх. Затем нажмите OK.

a41d7388795f111fa863db6b09976cec.png


Теперь все фиксеры будут запускаться каждый раз, когда вы выполняете очистку кода. Просто нажмите Ctrl+K, Ctrl+E для выполнения. В результате получается хорошо отформатированный документ, в котором применяется набор правил стиля кодирования, таких как добавление недостающих скобок и модификаторов. Вуаля!

IntelliCode


IntelliCode — это новая функция, которая расширяет возможности IntelliSense в зависимости от контекста, в котором вы используете продвинутые алгоритмы машинного обучения. Это полезно для многих сценариев, в том числе при изучении новых интерфейсов или API. Я пишу много расширений Visual Studio, и разнообразность API настолько велика, что есть части, которые я никогда не использовал. Когда я изучаю новую часть API Visual Studio, я нахожу очень полезным, что IntelliCode подсказывает мне, как ее использовать.

291708c61bef414ed828a7d96a5b729c.gif


Чтобы включить эту мощную функцию, вы можете скачать IntelliCode из Visual Studio Marketplace и установить расширение.

IntelliCode работает с C#, C++ и XAML.

Просмотр содержимого Clipboard Ring


Каждый раз, когда вы копируете (Ctrl+C) что-то в Visual Studio, оно сохраняется в Clipboard Ring. Сочетание клавиш Ctrl+Shift+V позволяет циклически перемещаться по элементам в Clipboard Ring и вставлять выбранный элемент. Я считаю очень полезным хранить несколько вещей в буфере обмена одновременно, а затем вставлять различные элементы в определенные места.

В Visual Studio 2019 Clipboard Ring теперь показывает визуальное превью своего содержимого при нажатии Ctrl+Shift+V. Это облегчает навигацию по истории копий и выбор нужного элемента для вставки.

dd2bec93e27c2e319f292cddf597f3c0.png


Новые рефакторинги C#


В C# есть много новых и очень полезных рефакторингов, которыми я пользовался каждый день. Они отображаются как подсказки в виде лампочки.

a352f04d198f326dda66588e3097299a.gif

Чтобы узнать больше о новых рефакторингах и других функциях C # в Visual Studio 2019, ознакомьтесь с с этой статьей в блоге .NET.


Git Stash

Возможность отложить какую-то работу на будущее может быть очень полезна. Git Stash — это то, что дает мне эту возможность без необходимости создавать новую ветку. Если вы знакомы с TFS, то Git Stash очень похож на shelveset.

1d13df28ee41a450754a9a2fcf94c30e.png

Самое приятное, что я могу управлять всеми своими заметками в окне Team Explorer. Их легко создавать и применять, и я стал их использовать гораздо больше, после того как Visual Studio начал их поддерживать по умолчанию.


Попробуйте Visual Studio 2019

Это были лишь некоторые из множества улучшений, добавленных в Visual Studio 2019, которые я считаю особенно полезными. Пожалуйста, делитесь своими лайфхаками или улучшениями, которые вы считаете полезными, в комментариях ниже!


Скачать Visual Studio 2019
 
Mads Kristensen
Mads Kristensen

Senior Program Manager,  Visual Studio Extensibility

© Habrahabr.ru