Что нового в CLion 2024.1

В 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, пользователь теперь видит рекомендацию обновить превью.