Visual Studio for Mac: 5 новых крутых функций
За прошедший год команда Visual Studio for Mac обновила редакторы в среде IDE, чтобы они стали быстрее, плавнее и продуктивнее. Мы сделали это, создав нативный интерфейс редактора macOS на основе того же самого бэкенда редактора, что и Visual Studio в Windows. В версии 8.1 мы представили новый редактор C#. За этим последовал новый редактор XAML в 8.2. И совсем недавно мы обновили наши веб-языки для использования новых редакторов в версии 8.3, завершая процесс, который мы намеревались выполнить год назад.
Чтобы отпраздновать это достижение, я хочу поделиться некоторыми подробностями, касающимися дизайна и реализации новых редакторов, а также моими пятью любимыми новыми функциями в редакторах кода Visual Studio для Mac.
В основе обновленных редакторов в Visual Studio для Mac лежит служба общего языка с Visual Studio для Windows. Это означает, что тот же самый бэкэнд, который поддерживает версию Visual Studio для Windows, теперь также поддерживает версию macOS. Все это включает в себя IntelliSense, Roslyn, текстовую логику и все языковые сервисы за кулисами. Единственная часть, не общая в Windows и macOS, это слой пользовательского интерфейса, который остается нативным для каждой платформы.
В случае macOS это означает использование фреймворков macOS, таких как Cocoa и CoreText, для расширения возможностей пользовательского интерфейса. Благодаря использованию нативного пользовательского интерфейса, а также возможности использования нативных методов ввода, есть поддержка языков с написанием справа налево, лигатур шрифтов и других расширенных графических функций.
Теперь, когда у нас есть возможности нового редактора в IDE, давайте взглянем на мои пять самых популярных новых функций редактора. Все функции, которыми я хочу поделиться с вами сегодня, направлены на то, чтобы сделать ваш опыт разработки более продуктивным, интересным и увлекательным. Я надеюсь, что вам нравится использовать их так же, как нам нравилось их создавать!
Редактирование с использованием нескольких точек вставки (Multi-Caret)
Multi-caret позволяет вставлять любое количество caret (точек вставки текста) в редактируемый файл. Это может быть выполнено вручную с помощью щелчков мыши, с помощью control-option-click или с помощью клавиатуры. При выборе клавиатуры вы можете использовать сопоставление с образцом, чтобы вставить следующее сопоставление (Option+Shift+.) или вставить все сопоставление (Option+Shift+;).
Вы также можете удалить последнюю вставленную caret с помощью Option+Shift+, или переместить последнюю caret вниз с помощью Option+Shift+/. На гифке ниже я использую комбинацию Option+Shift+. для вставки следующей подходящей caret дважды, что позволяет мне редактировать все три экземпляра «double» на этой странице.
Редактирование с использованием нескольких точек вставки (Multi-Caret) — это очень мощная функция, которая может значительно сократить время, необходимое для редактирования нескольких строк одновременно. Например, если вам нужно изменить префикс для нескольких переменных или переключить определенные декларирования var на строго типизированные декларации, редактирование с несколькими caret позволяет вам легко это сделать.
IntelliSense Type Filtering
Следующая функция, которую я хочу выделить, — это IntelliSense Type Filtering. С помощью IntelliSense Type Filtering вы можете отфильтровать список завершения по типу завершения. Если, например, вы хотите видеть только классы в вашем списке завершения, вы можете либо щелкнуть значок классов или использовать горячую клавишу «option-c».
У нас есть полный список типов, по которым вы можете фильтровать, а также соответствующие значки и горячие клавиши в нашей документации по Visual Studio для Mac. На гифке ниже я использую фильтрацию типов IntelliSense, чтобы сфокусировать свой список на интерфейсах, структурах и, наконец, на делегатах.
Эта функция действительно полезна, когда вы не можете вспомнить точное название нужного вам элемента или просто хотите сосредоточиться исключительно на конкретном типе. Он также работает очень хорошо в сочетании с моей следующей любимой функцией, Show Import Items.
Показать элементы импорта (Show Import Items)
Часто, когда я работаю над проектом, я не всегда могу вспомнить точное пространство имен, которое мне нужно импортировать в мой файл кода для определенного типа. Это часто приводит меня в панику и заставляет лихорадочно искать где угодно, чтобы найти нужный мне импорт. Следующая функция устраняет эту проблему, показывая не только завершения, которые я уже импортировал, но и завершения, доступные для импорта. Кроме того, если я в итоге выберу одно из еще не импортированных завершений, оператор using будет добавлен в заголовок файла кода.
В приведенной ниже гифке я добавляю «System.ComponentModel.DataAnnotations» в свой проект с помощью функции «Show Import Items». Возможно, вы также заметили, что для элементов, которые еще не импортированы, полное пространство имен указано рядом с типом, что позволяет легко увидеть, что система собирается добавить в ваш заголовок.
Show Import Items в настоящее время по умолчанию отключен, но вы можете легко включить его, открыв Visual Studio > Preferences > Text Editor > IntelliSense и включив «Show Import Items».
Поддержка написания кода справа-налево и нативного ввода
Популярный запрос нашего сообщества — добавить поддержку языков с направлением справа-налево, а также поддержку двунаправленных языков. И мы невероятно рады добавить такую поддержку в Visual Studio 2019 для Mac. В старых редакторах ввод или вставка строк справа-налево, таких как строки на персидском, иврите или арабском языке, приводили к тому, что слова инвертировались. Например, слово «здравствуй» становится «йувтсвардз», меняя текст так, что он кажется перевернутым. С новыми редакторами поддерживается ввод справа-налево и все типы двунаправленного текста.
Мы также добавили поддержку нативного ввода. Поскольку редакторы создаются с использованием встроенного инструментария для macOS, вставка текста в редактор аналогична вставке в любое другое встроенное приложение macOS. Это означает, что вы получаете доступ ко всем расширенным функциям ввода текста в macOS, таким как долгое нажатие для акцентированных и альтернативных символов, а также селектор эмодзи!
Поддержка лигатур
Если вы используете шрифт, который поддерживает лигатуры, например недавно выпущенный Cascadia Code, Visual Studio для Mac 2019 будет автоматически вставлять лигатуры вместо обычных двухсимвольных глифов. Например, знак двойного равенства (==) будет преобразован в удлиненный знак равенства без пробела. Аналогично, восклицательный знак и знак равенства (!=) будут преобразованы в знак равенства с косой чертой, более точно изображая символ «не равно».
На гифке ниже я использую простое выражение «if», чтобы продемонстрировать доступные лигатуры для нескольких различных общих многосимвольных глифов.
Скачайте Visual Studio 2019 для Mac
Это мои пять любимых функций редактора в Visual Studio для Mac 2019, но есть еще много возможностей, которые вы можете опробовать, работая над проектом. Чтобы начать работу с Visual Studio 2019 для Mac скачайте версию 8.3 Visual Studio 2019 для Mac, или если VS для Mac у вас уже установлена – обновитесь до последней версии с использованием стабильного канала!
Если вы столкнулись с какими-либо проблемами в выпуске v8.3, воспользуйтесь меню Справка > Сообщить о проблеме. Вы также можете сделать предложения по дальнейшим улучшениям с помощью меню «Предоставить предложение» (Provide a Suggestion).
Ну и следите за нами в Твиттере в @VisualStudioMac, чтобы быть в курсе последних новостей Visual Studio для Mac и сообщать нам о ваших впечатлениях. С нетерпением ждем вас!