Что нового в CLion

В CLion 2024.1 стало удобнее редактировать скрипты CMake и появилась возможность отладки нескольких процессов. Кроме того, IDE помогает точнее описывать аппаратное обеспечение в деревьях устройств и предлагает расширенную интеграцию с системами контроля версий.

Главное

Обновление CMake

Обновление CMake

У вас возникают проблемы с редактированием скриптов CMake? В CLion 2024.1 появились расширенные функции помощи в написании и редактировании скриптов для таргетов CMake. CLion предлагает шаблоны Live Templates для создания новых таргетов, автодополнение кода, навигацию, а также функцию поиска Find Usages по именам таргетов.

Подробнее

Улучшения отладки

Улучшения отладки

Мы расширяем возможности интеграции CLion с отладчиками. Новая версия CLion обеспечивает отладку таргетов с несколькими процессами. Пользователей GDB порадует встроенная поддержка самой свежей версии решения — GDB 14.1. Кроме того, добавлен новый параметр для ускорения индексации GDB, что повышает общую скорость отладки.

Подробнее

Поддержка Meson

Поддержка Meson

Мы работаем над улучшением поддержки Meson в CLion. В версии 2024.1 добавлено окно Meson, где много полезных команд, а также появились пользовательские настройки для Meson и возможность создавать проекты Meson в мастере New Project.

Подробнее

Улучшения для VCS

Улучшения для VCS

Поддержка систем контроля версий в CLion и других JetBrains IDE существенно обновлена: мы улучшили инструмент поиска различий и функцию поиска веток, упростили процесс ревью кода и внесли много других полезных изменений в эту подсистему.

Подробнее

CMake

Шаблоны Live Templates

Шаблоны Live Templates

Если вам нужно создать новый таргет CMake, воспользуйтесь новыми шаблонами Live Templates. Они автоматически создают команды CMake add_executable (введите exe) и add_library (введите lib).

Автодополнение имен таргетов

Автодополнение имен таргетов

Новая версия CLion предлагает автодополнение имен таргетов в командах CMake, чтобы было проще привязывать файлы к таргетам и выполнять другие связанные с таргетами операции.

Переход к определениям таргетов

Переход к определениям таргетов

Если вы ищете место в коде, где определен нужный вам таргет, новая версия CLion поможет в один клик перейти к соответствующим командам add_library или add_executable.

Функция Find Usages для таргетов

Функция Find Usages для таргетов

Функция Find Usages (Alt+F7) позволяет найти все использования таргета в проекте. При сортировке найденных объектов отдельно группируются использования и определения.

Требования к версии

Требования к версии

Если CMake не загружается из-за того, что у вас не выбрана минимальная необходимая версия, CLion предлагает нужное исправление в окне CMake. Если нажать Fix..., CLion автоматически обновит команду cmake_minimum_required.

Загрузка предустановок CMake

Загрузка предустановок CMake

Теперь вы можете настроить типы предустановок CMake, импортируемых в CLion. Например, можно выбрать в списке импорта параметр Configure. Для этого перейдите в меню Settings/Preferences | Advanced Settings | CMake | Automatically import CMake Presets.

И последнее: в CLion 2024.1 встроен CMake v3.28.

Meson

Окно Meson

Окно Meson

В предыдущей версии (2023.3) в CLion появилась поддержка проектной модели Meson. Теперь мы добавили отдельное окно Meson (View | Tool Windows | Meson). Там есть список таргетов сборки и полезные команды, например clean, install, test и другие.

Новые проекты Meson

Новые проекты Meson

Если вы создаете проект Meson, воспользуйтесь мастером New Project в CLion: он значительно упростит процесс. Шаблоны файлов для нового проекта Meson можно настроить в меню Settings/Preferences | Editor | File and Code Templates | Meson Project.

Настройки Meson

Настройки Meson

Выбрать путь к исполняемому файлу Meson можно в настройках Meson в CLion. Кроме того, любые дополнительные команды Meson можно указать в поле Setup options.

Отладчик

Отладка процессов с ветвлением

Отладка процессов с ветвлением

Теперь CLion обеспечивает отладку таргетов с несколькими процессами. Новая версия позволяет обновлять политики отслеживания и отключения через контекстное меню. Функция работает на Linux (с LLDB и GDB), а также для удаленных тулчейнов (WSL, удаленные среды и Docker).

Подробнее об этих настройках читайте в документации.

Другие улучшения отладчика

  • В новую версию CLion встроен GDB 14.1. Кроме того, мы исправили представление стандартных типов, которые раньше в CLion отображались некорректно.
  • Если GDB работает недостаточно быстро, попробуйте новую настройку. Она работает на компьютерах под управлением Linux для исполняемых файлов, запущенных из IDE. Когда она включена, CLion готовит индексы для GDB до начала сеанса отладки.

Дерево устройств

Если вы разрабатываете встроенное программное обеспечение и пишете деревья устройств, вам пригодятся функции помощи при создании деревьев устройств, которые появились в CLion 2023.3. В новой версии мы улучшили анализ кода для файлов дерева устройств и обеспечили синхронизацию по умолчанию для CMake с настройками Zephyr.

Проверки типов свойств

Проверки типов свойств

Для валидации свойств узлов с привязками мы добавили новые проверки для недопустимых типов свойств, а также для обязательных или необъявленных свойств.

Дубликаты элементов

Дубликаты элементов

Инспекция Duplicate element выявляет дубликаты элементов в узлах дерева устройств. Это могут быть два или более свойства с одним именем, а также два или более узла.

Проверки значений перечислений

Проверки значений перечислений

Если используется перечисляемый тип, CLion проверяет значения таких свойств и сообщает о недопустимых значениях.

Автодополнение

Автодополнение кода

Чтобы писать деревья устройств было удобнее, мы добавили автодополнение кода для корневого узла.

Новый терминал Бета-версия

Новый терминал

В JetBrains IDE версии 2024.1 доступна бета-версия нового терминала. Переключиться со старого терминала на новый и обратно можно в меню Settings/Preferences | Tools | Terminal | Enable New Terminal.

Мы расширили функционал, улучшили интерфейс и оформили его в соответствии с обновленным внешним видом IDE.

  • Теперь каждая команда размещается в терминале в виде отдельного блока. Они визуально разделены, чтобы было легко найти начало и конец каждого блока. Для быстрой навигации между блоками используйте клавиши со стрелками, а для перехода от запроса к результату и обратно нажимайте Ctrl+↑ и Ctrl+↓.
  • Автодополнение кода с документированием для команд, путей, аргументов, параметров и т. п. поможет быстрее выполнять ваши задачи.
  • В окне Terminal также доступна история команд.
  • Мы изменили цветовую схему в окне Terminal, чтобы улучшить читаемость.

Пока что терминал поддерживает только Bash, Zsh и PowerShell, но мы работаем над поддержкой других командных оболочек. Подробнее

Управление версиями

А вот что нового ждет вас при работе с системами контроля версий в CLion:

  • ревью кода в редакторе для репозиториев GitLab и GitHub;
  • проверки статуса CI в окне Git;
  • предотвращение коммитов больших файлов в репозитории;
  • новая вкладка Stash в окне Commit;
  • возможность исключать файлы и папки из сравнения;
  • и многое другое!

Подробно обо всех изменениях читайте здесь.

Улучшения в интерфейсе

Липкие строки при прокрутке

Липкие строки при прокрутке

Навигация по новым кодовым базам и большим файлам бывает не очень удобной. Чтобы вам помочь, мы добавили в редактор липкие строки: при прокрутке основные структурные элементы, например начала классов или методов, закрепляются в верхней части окна редактора и остаются на виду во время прокрутки кода. Благодаря этому вы все время будете видеть контекст, а для быстрой навигации достаточно просто кликнуть по закрепленной строке.

Изменение масштаба IDE

Изменение масштаба IDE

В предыдущих версиях CLion уже появилась возможность увеличивать и уменьшать размер всех элементов интерфейса одновременно. Однако масштаб можно было менять только в диапазоне от 100% до 200%. Теперь же можно уменьшить масштаб IDE до 90%, 80% или 70%.

Другие улучшения

  • Функция перенаправления входящих потоков, которая работала только для конфигурации запуска CMake Application, теперь доступна также в конфигурациях запуска C/C++ File.
  • Мы обновили представление Assembly, улучшив как его внешний вид, так и функционал:
    • В новой версии корректно работает представление Assembly для таргетов ARM.
    • Настройки представления Assembly теперь применяются сразу, нажимать кнопку Refresh больше не нужно.
    • При редактировании файла, для которого открыто представление Assembly, пользователь теперь видит рекомендацию обновить превью.

Что нового в CLion 2023.3

В CLion 2023.3 официально появился JetBrains AI Assistant, который ранее был доступен только в рамках технического превью. Теперь он предлагает еще больше действий, учитывающих контекст конкретного файла и проекта в целом. Благодаря ему разработка на C++ станет еще более продуктивной. Кроме того, в новой версии расширена поддержка моделей проектов, добавлены инструменты для более глубокого анализа кода и просмотра базового кода сборки, а также появилась поддержка файлов деревьев устройств для разработчиков встроенного ПО.

Главные изменения

Официально выпущен AI Assistant

Официальная версия AI Assistant Публичный доступ

В CLion теперь официально доступен JetBrains AI Assistant. Мы добавили ряд новых возможностей и улучшили уже известные функции, чтобы сделать работу в IDE JetBrains еще эффективнее.

В CLion 2023.3 AI Assistant может генерировать более качественную документацию и объяснять причины ошибок, происходящих во время выполнения программы. Кроме того, обновление включает в себя контекстный чат-бот и действия на основе ИИ, учитывающие расширенный контекст проекта для более точных результатов.

Чтобы использовать AI Assistant как дополнительную функцию CLion, вам потребуется подписка на JetBrains AI.

CLion Nova

CLion Nova Предварительная версия

Мы стремимся устранить давние проблемы с качеством и производительностью и обеспечить единообразный подход к работе во всех наших инструментах для C++, поэтому мы выпускаем CLion Nova. Это версия CLion с языковым движком для C++ из ReSharper C++ и JetBrains Rider, которая бесплатно доступна в рамках технического превью. Она предлагает:

  • ускоренную подсветку ошибок;
  • более отзывчивый интерфейс;
  • значительное сокращение числа зависаний при рефакторинге;
  • более быструю работу функции Find Usages;
  • ускоренную индексацию тестов.

Подробнее о предварительной версии CLion Nova и условиях ее бесплатного использования

Больше моделей проектов C и C++

Больше моделей проектов C и C++

Для проектов C и C++ используются разные модели. CLion из коробки поддерживает проекты CMake, Makefiles, Autotools и проекты на основе Compilation Database. В версии 2023.3 появилась долгожданная поддержка Meson, а также устранены многие проблемы с плагином Bazel для CLion.

Подробнее об внесенных изменениях

Повышаем качество кода C++

Повышаем качество кода C++

В CLion есть встроенный анализатор потоков данных, который работает все время, пока вы пишете код, помогая повысить его качество. В версии 2023.3 мы улучшили точность и производительность анализа в целом, а также добавили анализ утечек памяти.

Подробнее о новых возможностях анализа

Глубокий анализ кода

Глубокий анализ кода

CLion помогает вам понять, что именно делает тот или иной код, и найти ошибки в кодовой базе. Новая встроенная опция Run to Cursor ускоряет навигацию по коду в отладчике, а представление файлов Assembly удобно использовать, когда нужно найти ошибку или оптимизировать производительность кода.

Подробнее о новых возможностях

Разработка для встраиваемых систем

CLion для микроконтроллеров

Дерево устройств — это иерархическая структура, которая содержит сведения об оборудовании. Оно широко используется в Zephyr и обеспечивает первоначальную настройку оборудования. В новой версии CLion читать такие файлы, перемещаться по ним и изменять их стало гораздо удобнее. IDE распознает файлы с расширениями .dts и .dtsi как файлы дерева устройств, так что для них теперь доступны функции помощи при написании кода.

Подробнее о поддержке деревьев устройств

Модели проектов

Плагин Bazel для CLion

Были сделаны важные улучшения в плагине Bazel для CLion, созданном Google:

  • теперь CLion учитывает аргумент strip_include_prefix и поэтому использует правильные пути при поиске включенных заголовков;
  • анализ кода в новой версии корректно работает для заголовков с символическими ссылками в виртуальных вставках Bazel;
  • проекты, добавленные в WORKSPACE.bazel с помощью local_repository или new_local_repository, в новой версии CLion корректно синхронизируются и индексируются.

Поддержка Meson

В CLion появилась поддержка Meson! Теперь можно открыть проект Meson в CLion и выполнить его сборку, запуск и отладку. Функция работает на всех платформах и со всеми локальными и удаленными тулчейнами, включая WSL и Docker.

CLion обеспечивает следующие возможности для редактирования файла meson.build:

  • подсветка кода;
  • представление Structure показывает исполняемые файлы и библиотеки, если в файле есть команды executable(...) и library(...).

Подробнее о работе с проектами Meson в CLion

Улучшения для CMake

Новая версия поддерживает условия equals и notEquals для предустановок CMake, поэтому теперь CLion не показывает предустановки, не соответствующие этим условиям.

Представление Assembly

Представление Assembly для файлов

Представление Assembly для файлов

В CLion 2023.3 больше не нужно запускать сеанс отладки, чтобы исследовать базовый код сборки. Новое действие Show Assembly использует настройки компилятора из текущей конфигурации, компилирует код из просматриваемого файла C/C++ в сборку и открывает редактор с предварительным просмотром, где показано, какой исходный код дает ту или иную часть сборки.

Узнать

Синтаксис Intel

Синтаксис Intel

Во всех представлениях Assembly в CLion (как с сеансами отладки, так и без них) теперь можно переключиться на синтаксис сборки x86 (Intel). Для этого в окне представления Assembly откройте меню Options и обновите представление, чтобы применить изменения.

Узнать

Отладчик

Выполнение программы до строки с курсором

Выполнение программы до строки с курсором

В новом интерфейсе CLion 2023.3 появился новый встроенный параметр Run to Cursor. Он позволяет в ходе отладки выполнить код до определенной строки. После приостановки выполнения программы можно навести курсор мыши на строку, до которой нужно выполнить программу, и нажать на всплывающее окно Run to Cursor. Код будет выполняться, пока не дойдет до строки, в которой открыто всплывающее окно.

Разработка для встраиваемых систем

Чтобы помочь вам с гибкой настройкой оборудования, мы добавили в CLion поддержку файлов деревьев устройств. IDE распознает файлы с расширениями .dts и .dtsi как файлы дерева устройств, так что теперь для деревьев устройств доступны функции помощи при написании кода. Подробнее — в онлайн-документации.

Чтение файлов деревьев устройств

Чтобы вам было проще читать существующие файлы деревьев устройств, CLion предлагает:

  • подсветку синтаксиса в файлах деревьев устройств;
  • форматирование кода в файлах деревьев устройств;
  • отображение документации по коду при наведении курсора на элементы дерева устройств;
  • представление Structure и навигация по коду в файлах деревьев устройств.

Написание файлов деревьев устройств

CLion поддерживает следующие функции для более эффективного создания файлов деревьев устройств:

  • автодополнение кода для стандартных узлов, /<commands>/ и меток;
  • валидация для меток и имен узлов во время печати;
  • валидация порядка элементов в дереве, если он заранее определен;
  • проверки размера массива, определенного параметром /bits/.

Статический анализ

Function summaries

В CLion 2023.3 реализован новый подход Function summaries, который позволяет различать контексты разных функций для произвольных вложенных цепочек вызовов. Благодаря этому анализ потока данных дает более точные результаты.

Анализ полей

Анализ полей

Теперь существующие инспекции в рамках анализа потока данных учитывают также и поля. Кроме того, появилась новая инспекция, которая предупреждает разработчика, если не все поля инициализированы.

Анализ утечек памяти

Анализ утечек памяти

Мы реализовали новый анализ утечек памяти. Теперь вы сможете легко найти случаи, когда память была выделена, но не была освобождена, прежде чем она окажется недоступна.

QML

QML

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 Features Trainer — это набор интерактивных обучающих материалов по основным функциям IDE. Его можно открыть по ссылке на начальном экране или через меню Help | Learn IDE Features. Подробнее — в онлайн-документации.

Включайтесь в работу легко

Обучение начинается с общего обзора, где вы познакомитесь с CLion. Вам будут представлены основные действия пользователя: навигация по представлениям и панелями, открытие файлов в редакторе, запуск программ, автодополнение символов, использование быстрых исправлений и поиск символов.

Подробное знакомство с основными возможностями IDE

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

Взаимодействие с IDE

Скрытие главной панели инструментов

Скрытие главной панели инструментов

Если вы хотите сделать интерфейс IDE более компактным, основную панель инструментов можно скрыть в режиме просмотра по умолчанию. Для этого откройте меню View | Appearance и снимите флажок Toolbar.

Цветовая маркировка для вкладок файлов

Чтобы разработчикам было проще ориентироваться, когда они работают в редакторе одновременно с разными типами файлов, мы добавили цветовые обозначения по умолчанию для вкладок редактора — они соответствуют обозначениям в окне Project.

Сочетание клавиш для функции быстрого поиска

Сочетание клавиш для функции Speed search

Функцию Speed search, которая позволяет быстро переходить к нужному месту в окнах и диалогах, теперь можно вызвать с помощью сочетания клавиш. Выбрав дерево или список, можно легко вызвать поиск через меню Options текущего окна, нажав Ctrl+F либо просто начав вводить запрос.

Восстановление расположения окон по умолчанию

Восстановление расположения окон по умолчанию

Если вы хотите быстро вернуться к исходному расположению окон CLion по умолчанию, это можно сделать, воспользовавшись настройкой Window | Layouts | Default.

Другие улучшения

Область доступа Tests

Чтобы сэкономить время на этапе индексирования тестов, можно вручную настроить в CLion поиск тестов в определенных директориях. Для этого создайте область доступа Tests, и тогда индексация будет проводиться только для файлов, попавших в эту область.

Область доступа Tests можно использовать для фильтрации представления «Project» и быстрого доступа к файлам тестов в проекте. Подробнее

Улучшенная поддержка Dev Containers

В CLion 2023.3 значительно расширена поддержка Dev Containers: вы можете легко добавить дополнительные инструменты разработчика, среды выполнения и библиотеки с помощью функций контейнеров разработки, которые упрощают настройку основных компонентов. Кроме того, мы реализовали автоматическую переадресацию портов: переадресуются любые порты, которые приложение начинает слушать в Dev Container. Подробнее

Единый инструмент поиска различий

CLion 2023.3 предлагает обновленный подход к проверке изменений в файлах. Вам больше не нужно просматривать файлы по одному: все измененные файлы из выборки отображаются в едином фрейме с возможностью прокрутки. Новый инструмент поиска различий поддерживает ревью кода в GitLab, GitHub и JetBrains Space.

Поддержка сниппетов GitLab

Мы расширяем интеграцию с GitLab, которая впервые появилась в CLion 2023.2, и добавили поддержку сниппетов GitLab. Теперь разработчик может создавать как общедоступные, так и частные сниппеты прямо в IDE.

Что нового в CLion 2023.2

В CLion 2023.2 переосмыслена интеграция с PlatformIO, улучшена поддержка vcpkg, добавлена функция AI Assistant, которая естественным образом встраивается в основные рабочие процессы, расширены возможности низкоуровневой и удаленной отладки, а также отладки для встраиваемых систем.

Главное

AI Assistant

AI Assistant Ограниченный доступ

В CLion 2023.2 появился AI Assistant — помощник на основе искусственного интеллекта, который органично вписывается в ключевые процессы работы в IDE. Для языков C и C++ он умеет пояснять выделенный код, предлагать наилучшие способы рефакторинга и находить потенциальные проблемы в выбранном фрагменте. AI Assistant также генерирует сообщения коммитов и поясняет ошибки CMake.

Подробнее

Обновления отладчика

Обновления отладчика

В CLion 2023.2 низкоуровневая отладка стала проще благодаря возможности просмотра регистров текущего фрейма. Кроме того, значения регистров можно увидеть прямо в окне дизассемблированного кода. Обновленный диалог Attach to Process позволяет подключаться к удаленным и WSL-процессам.

Подробнее

Интеграция с PlatformIO

Интеграция с PlatformIO

PlatformIO — это платформа с открытым исходным кодом, которая помогает разработчикам встраиваемых систем в работе над проектами. В CLion 2023.2 появилась нативная интеграция с ней. IDE работает непосредственно с файлом platformio.ini: отслеживает изменения в нем и обновляет информацию о проекте соответствующим образом.

Подробнее

Интеграция с vcpkg

Интеграция с vcpkg

vcpkg — один из самых популярных менеджеров пакетов для C++. В работе с vcpkg существует два подхода — классический режим и режим Manifest. В CLion 2023.2 поддерживаются оба. В интерфейсе CLion их легко различить и можно быстро переключиться в режим Manifest, нажав на специальную кнопку.

Подробнее

AI Assistant
Ограниченный доступ

Версия 2023.2 наших IDE на базе IntelliJ и .NET-инструментов включают важную новую функцию AI Assistant — помощник на основе искусственного интеллекта. Он находится на ранней стадии разработки, но вы уже можете оценить наш подход к внедрению искусственного интеллекта в привычные процессы работы в IDE и интеграцию его возможностей с анализом кода. Подробнее

AI Assistant пока не входит в стабильные версии IDE JetBrains и устанавливается как отдельный плагин. Доступ к AI Assistant временно ограничен, и вы можете оказаться в листе ожидания.

Чат c AI Assistant

Чат c AI Assistant

AI Assistant специализируется на вопросах программирования и понимает контекст вашего проекта. Общение происходит в отдельном окне, и если вас устраивает сгенерированный искусственным интеллектом код, используйте действие Insert Snippet at Caret, чтобы поместить этот код в редактор, или просто скопируйте его вручную.

Меню AI Actions...

Меню AI Actions...

Выделите фрагмент кода в редакторе и вызовите действие из контекстного меню AI Actions....

AI Assistant умеет:

  • находить потенциальные проблемы в выделенном фрагменте;
  • предлагать наиболее удачный рефакторинг;
  • пояснять выделенный код;
  • обсуждать выделенный код в чате.
Генерация сообщений коммитов

Генерация сообщений коммитов

AI Assistant поможет вам описать внесенные изменения. Нажав кнопку Generate Commit Message with AI Assistant в диалоге сообщения коммита, вы отправите дифы изменений в LLM, и он сгенерирует сообщение, описывающее ваши изменения.

Пояснения к ошибкам CMake

Пояснения к ошибкам CMake

Если при выполнении CMake произошел сбой, нажмите Explain with AI в окне CMake, и искусственный интеллект поможет разобраться, что пошло не так и как это исправить.

Отладчик

Диалог Attach to Process

Диалог Attach to Process позволяет отлаживать процессы, запущенные вне CLion — локально или удаленно, — и при этом пользоваться интеграцией с отладчиком IDE.

Начиная с версии 2023.2, вы можете:

  • подключаться к локальным, удаленным и WSL-процессам;
  • выбирать любой отладчик, сконфигурированный в тулчейнах;
  • подключаться к удаленным процессам с правами администратора.
Регистры в отладчике

Регистры в отладчике

Низкоуровневая отладка становится проще, когда есть возможность просматривать регистры текущего фрейма. CLion теперь показывает значения регистров на вкладке Variables в окне отладчика.

Языки ассемблера для ARM

Языки ассемблера для ARM

CLion теперь поддерживает языки ассемблера ARM. Это означает, что в окне дизассемблированного кода для них работает подсветка синтаксиса.

Регистры ассемблера при отладке

Регистры ассемблера при отладке

При отладке дизассемблированного кода CLion теперь показывает значения регистров прямо в окне просмотра дизассемблера.

Другие улучшения отладчика:

  • CLion включает в поставку LLDB v16 и GDB v13.1.
  • Memory View поддерживает редактирование памяти на лету и показывает значение сразу после редактирования.
  • Для улучшения отладки внешних библиотек для удаленных тулчейнов CLion теперь корректно обрабатывает установленные в них точки останова и по требованию загружает недостающие исходные файлы.

Разработка для встраиваемых систем

Нативная интеграция с PlatformIO

Нативная интеграция с PlatformIO

PlatformIO — это платформа с открытым исходным кодом, которая помогает разработчикам встраиваемых систем в работе над проектами. В CLion 2023.2 из интеграции с PlatformIO был исключен промежуточный уровень CMake. Теперь IDE работает непосредственно с файлом platformio.ini: отслеживает изменения в нем и соответствующим образом обновляет информацию о проекте.

О том, как установить плагин PlatformIO и с его помощью создать новый или открыть существующий проект, читайте в документации.

Действия и окно PlatformIO

Действия и окно PlatformIO

Некоторые команды pio теперь можно вызывать прямо из IDE (Tools | PlatformIO) — нет необходимости переходить в терминал. К ним относятся перезагрузка проекта, запуск статического анализа кода проекта, вызов монитора устройства и другие.

Окно PlatformIO обеспечивает быстрый доступ к наиболее часто используемым командам и действиям над проектом.

Другие улучшения:

Для корректной отладки с использованием GDB-сервера Segger J-Link, помимо обычных сигналов SIGINT и SIGSTOP, CLion теперь обрабатывает сигнал SIGTRAP.

vcpkg

Чтобы вам было проще управлять зависимостями проекта и внешними библиотеками, в CLion есть интеграция с vcpkg — менеджером пакетов для C/C++. В версии 2023.2 мы обновили эту интеграцию, расширив набор поддерживаемых сценариев.

Режим Manifest

Режим Manifest

В работе с vcpkg существует два подхода: классический режим и режим Manifest. Теперь в интерфейсе CLion их легко различить и можно быстро переключиться в режим Manifest, нажав на специальную кнопку.

Вкладка Console

Вкладка Console

Чтобы вам было удобнее работать в классическом режиме vcpkg, мы добавили в окно vcpkg вкладку Console, на которой отображаются все команды и результаты.

CMake

Создание таргетов CMake при добавлении файлов в проект

Создание таргетов CMake при добавлении файлов в проект

В CLion 2023.2 улучшен диалог создания файлов C/C++ для случаев, когда таргет CMake, в который хотелось бы добавить файл, отсутствует. Действие Add new target... создает новый таргет и добавляет его в выбранный файл CMakeLists.txt. После этого можно добавлять в таргет новые файлы.

Поддержка CMake 3.25 и 3.26

Поддержка CMake 3.25 и 3.26

В CLion 2023.2 добавлена подсветка и автодополнение для новых параметров из CMake 3.25 и для новой команды block, используемой для выполнения нескольких команд в определенной области видимости. В CLion эта команда правильно подсвечивается, форматируется, документируется и сворачивается.

CLion 2023.2 включает CMake 3.26.

Parameter Info для CMake

Parameter Info для CMake

Подсказки Parameter Info показывают варианты сигнатур по мере ввода и теперь работают для команд CMake. Они помогают понять, какой параметр вводить следующим, что особенно полезно в командах, имеющих несколько вариантов.

Docker в WSL

Docker в WSL

Если в вашем проекте есть Docker-файл с окружением на базе Linux и вы хотите разрабатывать в нем свое приложение с компьютера Windows, можете делать это в CLion при помощи WSL и Docker.

Терминал в консоли вывода

Docker в WSL

Эмуляция терминала в консоли вывода теперь включается и выключается отдельно для каждой конфигурации. По умолчанию она отключена, а настройка, управляющая ею, перенесена из раздела Advanced Settings в Run Configuration.

В Windows ею можно пользоваться для MSVC-LLDB-отладки как с обычными правами, так и с правами администратора.

Взаимодействие с IDE

Светлая тема со светлыми заголовками

Светлая тема со светлыми заголовками

Мы усовершенствовали светлую тему, добавив альтернативный вариантLight with Light Header. В нем заголовки окон, всплывающие подсказки и уведомления тоже светлые.

Закрепленные конфигурации запуска

Закрепленные конфигурации запуска

Чтобы вам было проще управлять несколькими конфигурациями запуска, наиболее часто используемые теперь можно закреплять в виджете Run.

Обновленные элементы управления окнами на macOS

Обновленные элементы управления окнами на macOS

При работе в полноэкранном режиме на macOS с использованием нового интерфейса элементы управления окном теперь располагаются прямо на главной панели инструментов, а не на плавающей панели, как было раньше.

Отсутствие строки заголовка на Linux

Отсутствие строки заголовка на Linux

Для удобства пользователей Linux в новом интерфейсе мы убрали нативный заголовок операционной системы, уменьшив таким образом визуальный шум. Теперь по умолчанию вы видите только заголовок окна IDE, который можете настроить, как вам нравится.

Цветные заголовки проектов

Цветные заголовки проектов

В новой версии заголовки проектов стали цветными. Это упрощает навигацию, когда открыто несколько проектов. Каждому проекту можно присвоить уникальный цвет и значок, чтобы вам было проще различать их во время работы.

Кастомизация главной панели инструментов

Кастомизация главной панели инструментов

Мы расширили возможности кастомизации главной панели инструментов в новом интерфейсе. Теперь в выпадающем меню можно быстро выбрать действия, которые вы хотите добавить на панель. Для этого кликните правой кнопкой мыши по любому виджету и выберите опцию Add to Main Toolbar, чтобы увидеть доступные варианты.

Текстовый поиск в Search Everywhere

Функция Search Everywhere в основном используется для поиска файлов, классов, методов, действий и настроек. Теперь же она включает в себя текстовый поиск, аналогичный Find in Files.

Другие улучшения

  • В CLion и других IDE на базе IntelliJ появилась начальная интеграция с GitLab: теперь можно пользоваться функцией Merge Request прямо в IDE, оптимизируя свой рабочий процесс.
  • В системах Windows с отличной от ARM архитектурой CLion теперь по умолчанию использует архитектуру тулчейна Visual Studio amd64, а не x86.