В CLion 2023.3 официально появился JetBrains AI Assistant, который ранее был доступен только в рамках технического превью. Теперь он предлагает еще больше действий, учитывающих контекст конкретного файла и проекта в целом. Благодаря ему разработка на C++ станет еще более продуктивной. Кроме того, в новой версии расширена поддержка моделей проектов, добавлены инструменты для более глубокого анализа кода и просмотра базового кода сборки, а также появилась поддержка файлов деревьев устройств для разработчиков встроенного ПО.
В CLion теперь официально доступен JetBrains AI Assistant. Мы добавили ряд новых возможностей и улучшили уже известные функции, чтобы сделать работу в IDE JetBrains еще эффективнее.
В CLion 2023.3 AI Assistant может генерировать более качественную документацию и объяснять причины ошибок, происходящих во время выполнения программы. Кроме того, обновление включает в себя контекстный чат-бот и действия на основе ИИ, учитывающие расширенный контекст проекта для более точных результатов.
Чтобы использовать AI Assistant как дополнительную функцию CLion, вам потребуется подписка на JetBrains AI.
Мы стремимся устранить давние проблемы с качеством и производительностью и обеспечить единообразный подход к работе во всех наших инструментах для C++, поэтому мы выпускаем CLion Nova. Это версия CLion с языковым движком для C++ из ReSharper C++ и JetBrains Rider, которая бесплатно доступна в рамках технического превью. Она предлагает:
Подробнее о предварительной версии CLion Nova и условиях ее бесплатного использования
Для проектов C и C++ используются разные модели. CLion из коробки поддерживает проекты CMake, Makefiles, Autotools и проекты на основе Compilation Database. В версии 2023.3 появилась долгожданная поддержка Meson, а также устранены многие проблемы с плагином Bazel для CLion.
В CLion есть встроенный анализатор потоков данных, который работает все время, пока вы пишете код, помогая повысить его качество. В версии 2023.3 мы улучшили точность и производительность анализа в целом, а также добавили анализ утечек памяти.
Подробнее о новых возможностях анализа
CLion помогает вам понять, что именно делает тот или иной код, и найти ошибки в кодовой базе. Новая встроенная опция Run to Cursor ускоряет навигацию по коду в отладчике, а представление файлов Assembly удобно использовать, когда нужно найти ошибку или оптимизировать производительность кода.
Подробнее о новых возможностях
Дерево устройств — это иерархическая структура, которая содержит сведения об оборудовании. Оно широко используется в Zephyr и обеспечивает первоначальную настройку оборудования. В новой версии CLion читать такие файлы, перемещаться по ним и изменять их стало гораздо удобнее. IDE распознает файлы с расширениями .dts и .dtsi как файлы дерева устройств, так что для них теперь доступны функции помощи при написании кода.
Подробнее о поддержке деревьев устройств
Были сделаны важные улучшения в плагине Bazel для CLion, созданном Google:
strip_include_prefix
и поэтому использует правильные пути при поиске включенных заголовков; local_repository
или new_local_repository
, в новой версии CLion корректно синхронизируются и индексируются. В CLion добавлена поддержка Meson! Теперь можно открыть проект Meson в CLion и выполнить его сборку, запуск и отладку. Функция работает на всех платформах и со всеми локальными и удаленными тулчейнами, включая WSL и Docker.
CLion обеспечивает следующие возможности для редактирования файла meson.build:
executable(...)
и library(...)
. Новая версия поддерживает условия equals
и notEquals
для предустановок CMake, поэтому теперь CLion не показывает предустановки, не соответствующие этим условиям.
В CLion 2023.3 больше не нужно запускать сеанс отладки, чтобы исследовать базовый код сборки. Новое действие Show Assembly использует настройки компилятора из текущей конфигурации, компилирует код из просматриваемого файла C/C++ в сборку и открывает редактор с предварительным просмотром, где показано, какой исходный код дает ту или иную часть сборки.
Во всех представлениях Assembly в CLion (как с сеансами отладки, так и без них) теперь можно переключиться на синтаксис сборки x86 (Intel). Для этого в окне представления Assembly откройте меню Options и обновите представление, чтобы применить изменения.
В новом интерфейсе CLion 2023.3 появился новый встроенный параметр Run to Cursor. Он позволяет в ходе отладки выполнить код до определенной строки. После приостановки выполнения программы можно навести курсор мыши на строку, до которой нужно выполнить программу, и нажать на всплывающее окно Run to Cursor. Код будет выполняться, пока не дойдет до строки, в которой открыто всплывающее окно.
Чтобы помочь вам с гибкой настройкой оборудования, мы добавили в CLion поддержку файлов деревьев устройств. IDE распознает файлы с расширениями .dts и .dtsi как файлы дерева устройств, так что теперь для деревьев устройств доступны функции помощи при написании кода. Подробнее читайте в онлайн-документации.
Чтобы вам было проще читать существующие файлы деревьев устройств, CLion предлагает:
CLion поддерживает следующие функции для более эффективного создания файлов деревьев устройств:
/<commands>/
и меток;/bits/
.В CLion 2023.3 реализован новый подход Function summaries, который позволяет различать контексты разных функций для произвольных вложенных цепочек вызовов. Благодаря этому анализ потока данных дает более точные результаты.
Теперь существующие инспекции в рамках анализа потока данных учитывают также и поля. Кроме того, появилась новая инспекция, которая предупреждает разработчика, если не все поля инициализированы.
Мы реализовали новый анализ утечек памяти. Теперь вы сможете легко найти случаи, когда память была выделена, но не была освобождена, прежде чем она окажется недоступна.
CLion выявляет типы QML в проекте, чтобы проанализировать их и обеспечить помощь при написании кода. Однако типы QML из библиотек или из пользовательских плагинов часто расположены в других местах. Для решения этой проблемы мы добавили новую настройку Extra QML imports в Settings/Preferences | Languages & Frameworks | QML. С ее помощью IDE находит импорты QML в указанных местах и анализирует типы из кода пользователя.
При создании нового проекта в CLion с помощью мастера New Project, файл main.cpp или main.c генерируется автоматически. Однако в некоторых случаях вам может быть удобнее использовать пользовательский шаблон для этого файла. В CLion 2023.3 можно посмотреть и отредактировать такие шаблоны в меню Settings/Preferences | Editor | File and Code Templates | Other.
IDE Features Trainer — это набор интерактивных обучающих материалов по основным функциям IDE. Его можно открыть по ссылке на начальном экране или через меню Help | Learn IDE Features. Подробнее читайте в онлайн-документации.
Обучение начинается с общего обзора, где вы познакомитесь с CLion. Вам будут представлены основные действия пользователя: навигация по представлениям и панелями, открытие файлов в редакторе, запуск программ, автодополнение символов, использование быстрых исправлений и поиск символов.
Если вы хотите сделать интерфейс IDE более компактным, основную панель инструментов можно скрыть в режиме просмотра по умолчанию. Для этого откройте меню View | Appearance и снимите флажок Toolbar.
Чтобы разработчикам было проще ориентироваться, когда они работают в редакторе одновременно с разными типами файлов, мы добавили цветовые обозначения по умолчанию для вкладок редактора — они соответствуют обозначениям в окне Project.
Функцию Speed search, которая позволяет быстро переходить к нужному месту в окнах и диалогах, теперь можно вызвать с помощью сочетания клавиш. Выбрав дерево или список, можно легко вызвать поиск через меню Options текущего окна, нажав Ctrl+F либо просто начав вводить запрос.
Если вы хотите быстро вернуться к исходному расположению окон CLion по умолчанию, это можно сделать, воспользовавшись настройкой Window | Layouts | Default.
Чтобы сэкономить время на этапе индексирования тестов, можно вручную настроить в CLion поиск тестов в определенных директориях. Для этого создайте область доступа Tests, и тогда индексация будет проводиться только для файлов, попавших в эту область.
Область доступа Tests можно использовать для фильтрации представления «Project» и быстрого доступа к файлам тестов в проекте. Подробнее.
В CLion 2023.3 значительно расширена поддержка Dev Containers: вы можете легко добавить дополнительные инструменты разработчика, среды выполнения и библиотеки с помощью функций контейнеров разработки, которые упрощают настройку основных компонентов. Кроме того, мы реализовали автоматическую переадресацию портов: переадресуются любые порты, которые приложение начинает слушать в Dev Container. Подробнее об этом читайте здесь.
CLion 2023.3 предлагает обновленный подход к проверке изменений в файлах. Вам больше не нужно просматривать файлы по одному: все измененные файлы из выборки отображаются в едином фрейме с возможностью прокрутки. Новый инструмент поиска различий поддерживает ревью кода в GitLab, GitHub и JetBrains Space.
Мы расширяем интеграцию с GitLab, которая впервые появилась в CLion 2023.2, и добавили поддержку сниппетов GitLab. Теперь разработчик может создавать как общедоступные, так и закрытые сниппеты прямо в IDE.