Новая версия Rider включает в себя полную поддержку Unreal Engine — теперь это полнофункциональная IDE для разработки игр на любых движках.
Кроме того, Rider 2022.1 поддерживает бета-версию нашего нового решения для удаленной разработки: вы можете подключаться к удаленному серверу, на котором запущен бэкенд Rider, из любой точки мира.
В Rider добавлен режим Docker Fast и обновлена главная панель инструментов, а полнотекстовый поиск по всему решению можно запускать из окна Search Everywhere.
Rider уже пользуется популярностью среди Unity-разработчиков, а теперь — с полной поддержкой Unreal Engine — это наша главная IDE для разработки игр.
Rider 2022.1 поддерживает разработку на Unreal Engine под Windows, Linux и macOS. IDE нативно работает с моделью .uproject
: вам не придется тратить время на генерацию промежуточной проектной модели.
Плагин UnrealLink интегрирует Rider с редактором для Unreal Engine от Epic Games. В частности, плагин:
Rider базируется на функциональности ReSharper C++, включающей нативную поддержку современного C++, и предоставляет более 1300 инспекций кода и 290 быстрых исправлений, возможности кодогенерации и рефакторинги, которые можно применить к коду всего проекта. Rider позволяет быстро перемещаться по коду, будь то C++, Unreal Engine или код шейдеров, и поясняет код с помощью встроенных подсказок.
В Rider макросы рефлексии и спецификаторы рефлексии Unreal Engine — это не просто текстовая подстановка. Функции автодополнения и быстрого просмотра документации знают об этих сущностях, и вы можете ими пользоваться. Точно так же Rider отличает удаленный вызов процедур Unreal Engine от обычных функций. Эти вызовы сопоставляются при навигации и генерации кода.
Благодаря интеграции с UnrealHeaderTool вы можете просматривать ошибки компиляции прямо в редакторе, когда пишете код. В новой версии этот процесс практически не влияет на общую производительность.
Rider идентифицирует проекты Unreal Engine и автоматически применяет правила именования Unreal Engine при генерации и анализе кода.
LLDB-отладчик с поддержкой Unreal Engine Natvis поможет найти любые ошибки в коде игры или движке. Вы можете добавлять точки останова для строк, символов, данных и срабатывающие при определенных условиях. Также можно выполнять пошаговую отладку, вычислять выражения и просматривать значения переменных во время сеанса отладки прямо в редакторе Rider.
Rider поддерживает фреймворк автоматизации тестирования Unreal Engine. Вы можете запускать тесты из окна Unit Test или прямо из редактора, смотреть результаты и перезапускать отдельные тесты, только те, что не прошли, или все сразу.
Rider позволяет разрабатывать любые проекты на C++ под Windows: просто откройте в качестве проекта файл .sln.
Для разработки на C++ под Linux или macOS используйте проектную модель .uproject
. Здесь можно узнать, чем Rider, CLion и ReSharper C++ отличаются друг от друга в контексте разработки на C++ и Unreal Engine.
Rider поддерживает удаленную разработку в режиме Beta. Теперь вы можете подключаться к удаленному серверу, на котором запущен бэкенд Rider, из любой точки мира. Вся обработка данных выполняется на мощной удаленной машине, а вы работаете над проектом, как будто он размещен локально. Попробуйте эту функциональность на начальном экране или через специальное приложение JetBrains Gateway (доступно в Toolbox App).
Кроме того, вы можете воспользоваться JetBrains Space — универсальной платформой, охватывающей весь пайплайн разработки. Она позволяет создавать и настраивать удаленные среды разработки, управлять ими, переводить их в режим гибернации и приглашать коллег к совместной работе. Подробнее об этом читайте в нашем блоге.
Нашим пользователям понравилась новая панель инструментов. Однако многие жаловались, что на нее нельзя добавлять свои виджеты и менять существующие. Вы просили — мы сделали: теперь можно добавлять виджеты в левую и правую часть панели, а также реорганизовывать их и удалять ненужные.
Чтобы настроить панель:
Если вы пользовались Rider 2021.3, то могли заметить, что с панели инструментов было невозможно запустить профилирование с помощью dotTrace. В новой версии мы решили эту проблему.
Для доступа к функциям Profile with Timeline, Profile with... и Profile running process... используйте меню More виджета Run/Debug (три вертикальные точки).
Для решений Docker и Docker-Compose появился режим Fast, позволяющий существенно снизить время сборки.
Сборка проекта внутри контейнера намного медленнее локальной. Если же вы включите режим Fast, Rider сначала создаст базовый Docker-образ при помощи docker build
, а затем соберет проект на клиентском устройстве — это гораздо быстрее. В итоге, артефакты проекта монтируются к Docker-контейнеру в качестве тома. Режим работает только для конфигураций Debug: сборка проектов с конфигурацией Release будет выполняться по шагам, указанным в Dockerfile
.
Режим Fast можно отключить для любой конфигурации запуска: Edit Run Configuration | Build | Modify options | Don’t use Docker fast debug.
Search Everywhere позволяет найти в решении, настройках IDE или истории Git все что угодно. Мы добавили в окно вкладку Text: она показывает все вхождения строки, которую вы печатаете, в решении. Для этого запускается полнотекстовый поиск по всему коду и текстовым файлам, включая файлы .cs
, .fs
, .cshtml
, .json
, .js
, .css
, .editorconfig
, .cvs
, .dockerfile
, .md
и .txt
.
Полученные результаты также попадают на вкладку All.
Область поиска можно ограничить:
При этом функция Find in Files осталась неизменной. Вы можете пользоваться обоими видами поиска.
Вместо журнала событий теперь есть окно Notifications. В нем лучше структурированы уведомления IDE и отмечается все самое важное и полезное. Открыть окно можно через панель навигации.
Уведомления в окне Notifications подразделяются на две категории: Suggestions и Timeline.
В раздел Suggestions попадают уведомления, которые, как правило, оказываются наиболее полезны. Они в свою очередь делятся на важные и обычные. Когда приходит важное уведомление, на значке колокольчика на панели навигации появляется красный кружок. Обычные уведомления отмечаются синим кружком.
Раньше было сложно понять, в каком масштабе отображаются данные в редакторе: в интерфейсе не было соответствующего индикатора.
Теперь в нижней части текстового редактора есть специальный виджет, который показывает текущий размер шрифта и позволяет легко сбросить его до стандартного.
Из виджета можно перейти к настройкам и указать, должен ли выбранный масштаб применяться ко всем окнам редактора или только к текущему.
Мы добавили в Rider новый набор сочетаний клавиш «Visual Studio 2022». В отличие от набора сочетаний «Visual Studio», он полностью повторяет сочетания клавиш из IDE Visual Studio (например Alt+Up/Down). Новый набор сочетаний клавиш будет удобен тем, кто привык пользоваться версиями Visual Studio, выпущенными до 2022 года, без ReSharper.
Мы продолжаем улучшать поддержку C# 10, в частности глобальных using-директив. добавлены два новых рефакторинга и соответствующие контекстные действия.
Рефакторинг Extract Global Using поможет внедрить в проект директивы global using. Если запустить его для обычных директив using
, Rider предложит вынести их в файл GlobalUsings.cs
(если в проекте такого файла нет, Rider его создаст). В таком случае обычная директива using
станет не нужна, и Rider удалит ее из файлов проекта.
Рефакторинг Inline Global Using поможет заменить глобальную директиву using
на обычную. Если вызвать рефакторинг для глобальной директивы using
, Rider удалит ее из GlobalUsings.cs
и добавит соответствующую директиву using
во все файлы проекта, где она необходима.
Директивы global using
поддерживаются функцией анализа кода для методов расширения, а также в Find Usages.
Мы рассмотрели предстоящий C# 11 и добавили поддержку обобщённых атрибутов.
[MemberNotNull]
и [MemberNotNullWhen]
для проектов, в которых не используются ссылочные типы, допускающие значение null. Главные улучшения для Razor и Blazor в этой версии:
[EditorRequired]
из .NET 6. Вы можете использовать соответствующую инспекцию и быстрое исправление, когда ссылаетесь на компоненты Blazor, не указывая требуемые параметры. .razor
с компонентами Blazor: теперь она не удаляет объявления @using
. include
из других файлов. InternalVisibleTo
, объявленные в проектах F#, поэтому при доступе к внутренним символам больше не возникает ошибок. Добавлять веб-ссылки в .NET-проекты стало проще. Вот основные улучшения:
.wsdl
, указывая путь к файлу (вам больше не нужно брать URL-адрес из окна Add Web Reference). net.tcp
и net.pipe
. Мы продолжаем улучшать поддержку конечных точек. В представлении Endpoints теперь отображается информация о конечных точках для маршрутизации минимального API из ASP.NET Core 6 и конвенциональной маршрутизации. Это значит, что в дополнение к доступным ранее возможностям, вы можете исследовать такие конечные точки, переходить к ним напрямую и пользоваться умным автодополнением кода.
Rider 2022.1 включает ряд улучшений для Vue 3. Теперь IDE распознает глобальные компоненты в файлах .vue. Также мы улучшили поддержку синтаксиса createApp
: IDE правильно соотносит приложения, созданные с помощью createApp
, с релевантными элементами. Кроме того, мы добавили поддержку Nuxt 3 — новой версии популярного фреймворка для Vue.
Мы продолжаем расширять поддержку Unity и включили в Rider 2022.1 новые возможности, улучшения производительности, исправления и внутренние оптимизации.
Также мы представляем RiderFlow — новый инструмент для работы со сценами. Это бесплатный плагин для редактора Unity, позволяющий дизайнерам, художникам, программистам и другим членам команды с легкостью создавать сцены и управлять ими. Вы можете быстро перемещаться по коду, находить игровые объекты и ресурсы, легко заменять объекты сцены. Используемые в сцене ассеты подсвечиваются. Подробнее о новом инструменте читайте на странице RiderFlow.
Теперь Rider автоматически обновляет файл .asmdef
при добавлении или удалении ссылок на проект. При использовании типа из другого проекта, Rider добавит ссылку в файл .asmdef
и импортирует тип.
Теперь Rider поддерживает файлы Assembly Definition Reference .asmref
, а также файлы .asmdef
: вы можете пользоваться подсветкой синтаксиса и автодополнением, проверять код на соответствие схеме. Нажав Ctrl+Click для названия ссылки, вы попадете в соответствующий файл .asmdef
, а если таких файлов несколько — увидите их в окне Find Usages.
В проектах теперь есть конфигурация для запуска редактора Unity в массовом режиме. С ее помощью удобно запускать юнит-тесты. При этом результаты сохранятся в папке Logs.
Теперь Unity поддерживает новые версии C#, поэтому подсветка типов Unity Color
в Rider теперь покрывает target-typed выражения new
. Вы можете быстро просматривать заданный цвет и пользоваться Alt+Enter для редактирования значения.
Большие проекты Unity теперь загружаются быстрее. Это особенно заметно, если у вас медленный жесткий диск или файловая система. На маленьких проектах разница не так ощутима, но вы наверняка заметите более экономное использование памяти при загрузке.
В новой версии есть и другие оптимизации производительности. Мы ускорили поведение IDE при вводе текста с открытым окном Unity Explorer. Кроме того, Rider быстро отображает длинные записи лога в окне инструментов Unity.
Как всегда, мы добавили много мелких исправлений и улучшений. В частности, появились инспекции, подсказывающие правильную сигнатуру методов [MenuItem]
, исправлены ошибки при поиске места установки документации на Linux, добавлено уведомление о доступных обновлениях пакета Rider. As always, the full details are listed in the changelog.
Rider определяет версию Azure Functions Core Tools на основе поля AzureFunctionsVersion
в вашем проекте.
Если вам нужно установить определенную версию Azure Functions Core Tools, скачайте ее с помощью Chocolatey
, Brew
или npm
и пропишите нужный путь в Preferences / Settings | Tools | Azure | Functions.
По умолчанию Rider самостоятельно управляет Azure Functions Core Tools — скачивает инструменты, которые нужны в вашем проекте, и автоматически обновляет их.
Вы можете запускать команды из файлов Markdown в консоли: для этого используйте иконки запуска на полях редактора.
Мы добавили новые опции в плавающую панель инструментов (она появляется при редактировании файла Markdown — когда вы выделяете текст). Теперь там можно быстро выбрать стиль заголовка и создать список. Вы можете сами выбирать, какие опции должны быть на этой панели: для этого перейдите в Preferences / Settings | Appearance & Behavior | Menus and Toolbars | Markdown Editor Floating Toolbar.
Для Markdown появилось действие Copy code snippet, позволяющее копировать данные в буфер обмена.
Теперь вы можете помечать код, который не нужно анализировать, тем самым исключая его из процесса анализа покрытия и получая более релевантные результаты. To use this feature, install the JetBrains.dotCover.MSBuild NuGet package and add the comments // dotcover disable/enable
around the code. Подробнее об изменениях можно узнать здесь.
Мы переместили иконку Preview Diff с панели Commit в меню и переименовали ее в Show Diff Preview on Single Click. Здесь вы можете прописать действия, которые должны выполняться при нажатии на файл в дереве Changes: для этого выберите файл или откройте окно просмотра Diff.
С помощью Annotate with Git Blame стало проще исследовать изменения. При наведении курсора на аннотацию Rider покажет различия между строками, а при нажатии на аннотацию откроет окно Git Log.
На панели Commit Details теперь содержится информация о подписях GPG и статусе сборки. Раньше эти данные можно было посмотреть только в Git-логе.
Новый интерфейс окна Git File History теперь не зависит от процесса индексирования: данные отображаются, даже если индексирование лога выключено.
Раньше, отображая историю файлов без индексов, IDE работала медленно и не давала вам пользоваться некоторыми возможностями.
Придумывать названия бывает сложно. Если вдруг вам понадобится переименовать целое решение, в окне Solution Explorer вызовите контекстное меню для решения, выберите Edit | Rename и введите новое название.
В окне New Solution/Project теперь можно выбрать SDK из выпадающего списка. Это будет полезно, если вы захотите создать проект для более ранней версии .NET SDK, после того как уже установили новую.
Теперь действие Run Static Method работает в проектах .NET и .NET Core. Можно запустить любой статический метод прямо из редактора: просто нажмите на зеленый треугольник («Run») на полях.
Мы улучшили поддержку анализаторов и генераторов кода Roslyn:
Мы реорганизовали элементы меню Alt+Enter, относящиеся к очистке и форматированию кода. Теперь опции Format selection, Cleanup selection и Apply syntax style вы найдете под пунктом Reformat and Cleanup.
Кроме того, настраивать стиль синтаксиса можно с помощью действий Configure code style и Autodetect code style settings. На панели Preview code style также отображаются изменения стиля синтаксиса.
Мы обновили элементы селектора иконок для пакетов на странице настройки проектов NuGet.