JetBrains

CLion 2024.3 中的 CLion Nova 改进、调试服务器、OpenCV 图像查看器和 Zephyr West 调试

CLion 2024.3 现已推出。适用于 C 和 C++ 的最新版本 JetBrains IDE 包括以下主要功能和更新:

  • 新语言引擎 CLion Nova 的重大改进。

  • 新的 Debug Servers(调试服务器)配置选项。

  • OpenCV 图像查看器。

  • 将调试器附加到未启动的进程。

  • 对 Zephyr West 的调试支持。

Image

您可以使用下面的链接通过 Toolbox App 下载 CLion 2024.3,如果您使用的是 Ubuntu,则可以作为 snap 软件包下载,或者通过版本 2024.2 的补丁更新下载。

下载 CLion 2024.3

CLion Nova

在这个版本中,我们的新语言引擎 CLion Nova 获得了许多重要增强,包括各种语言特定的更新和 UI 更新,以及多项内存使用优化。我们还为现代 C++ 功能提供了改进的语言支持。

此外,为了简化从 CLion Classic 到 CLion Nova 的过渡,我们在 Welcome(欢迎)屏幕和 Configuration(配置)菜单中都添加了一个切换开关。

Image
CLion Nova 切换转换

征集有关 CLion Nova 的反馈

现在,CLion Nova 的性能已经远远超过 CLion Classic。即使是包含数十万行代码的大型项目,它也更加流畅、响应更快。因此,我们为您添加了更多切换到 CLion Nova 的便捷方式。

不过,我们意识到有些 CLion Classic 用户还没有准备好进行切换。在将 CLion Nova 设为每个人的默认引擎之前,我们想了解为什么有些用户更喜欢 CLion Classic 而不是 CLion Nova。因此,我们希望您通过主 IDE 菜单中的 Help | Submit Feedback…(帮助 | 提交反馈…)与我们分享反馈。我们将仔细检查,并尽力解决可能妨碍您充分利用 CLion Nova 的关键问题。

内存使用量改进

多项改进显著降低了 CLion Nova 的内存使用量并提高了整体 IDE 性能。这在 Chromium 这样的大型项目中尤其明显。

Image
Chromium 项目内存使用量

例如,对比 CLion Nova 2024.2 中的 Chromium 项目与 2024.3 中的同一项目的内存使用量,我们发现新版本中 IDE 前端使用的内存少 51%,IDE 后端使用的内存少 15%。简而言之,这意味着 IDE 的响应速度和启动速度都有所提高。

调用层次结构

在 Hierarchy(层次结构)工具窗口中使用 CLion Nova 时,函数调用层次结构现在可用。它会显示调用方和被调用方的层次结构,直观表示函数如何交互,并使用相应图标高亮显示递归调用。

调用层次结构

要查看函数的调用层次结构,在编辑器中选择函数,然后从主菜单中点击 Navigate | Call Hierarchy(导航 | 调用层次结构),或者使用快捷键 ⌃⌥H (macOS) 或 Ctrl+Alt+H (Windows/Linux)。

来自其他项目的预定义代码样式

我们在这个版本中添加的最受期待的功能之一是来自 LLVM、GNU、Qt 和 Google 等其他项目的预定义代码样式。这样,您可以遵循代码结构规则、命名约定和其他高一致性要求 C++ 领域的流行样式指南。您可以通过 Settings | Editor | Code Style | C/C++ | Set from…(设置 | 编辑器 | 代码样式 | C/C++ | 设置自…)选择您喜欢的样式。

Image
预定义代码样式

Quick Definition(快速定义)支持

Quick Definition(快速定义)弹出窗口会显示函数、类、方法和其他项目符号的定义位置和方式。要调用它,在编辑器中将文本光标置于符号处,然后按 ⌥Space (macOS) 或 Ctrl+Shift+| (Windows/Linux)。您也可以通过 View | Quick Definition(视图 | 快速定义)从主菜单访问它。

快速定义

嵌入式开发

在此版本中,我们进一步扩展了 CLion 的功能,以满足嵌入式开发者的多样需求。嵌入式开发的重大更新包括调试服务器、编辑外设寄存器值的功能以及对调试 West 项目的支持。

调试服务器(实验性)

我们引入了一个新的 Debug Servers(调试服务器)配置选项,以简化嵌入式开发和远程开发调试的设置过程。此专属部分位于 Settings | Debugger(设置 | 调试器)中,允许您为特定调试探头配置调试服务器,并使用它运行或调试构建目标。

要启用配置选项,请转到 Settings | Advanced Settings | Debugger(设置 | 高级设置 | 调试器)。您可以从主工具栏切换器中选择 Edit Debug Servers(编辑调试服务器)或转到 Settings | Debugger (设置 | 调试器)并打开 Debug Servers(调试服务器)对话框来配置调试服务器。

调试服务器

请注意,这是一项实验性功能,目前还不能与 PlatformIO 一起使用。不过,也有变通方法。我们鼓励您尝试并与我们分享您的反馈。此外,我们非常乐意安排一次简短的通话来更好地了解您的具体用例和挑战。

对 Zephyr West 的调试支持

现在,您可以直接在 CLion 中原生调试使用 West 元工具的 Zephyr 项目。导入 Zephyr West 项目时,West 运行/调试配置会在 Run/Debug Configurations(运行/调试配置)切换器中自动创建。您还可以从主菜单中选择 Run | Edit Configurations…(运行 | 编辑配置…),点击 +,然后选择 West 模板,创建新的运行/调试配置:

Image
Zephyr West 调试配置

配置完成后,新的 West 运行/调试配置将在 Run/Debug Configurations(运行/调试配置)切换器中可用,您可以使用它来运行调试会话。

可编辑外设寄存器值

调试定时器、通信接口或 GPIO 端口等电路板外设时,您现在可以在 Peripherals(外设)窗格中直接编辑外设寄存器来即时观察修改的结果。

Image
可编辑外设寄存器值

您可以随时测试不同的配置和设备状态,无需重新编译代码或者重新加载应用程序或电路板。

使用 CLion Nova 支持 

MISRA C++:2023

MISRA 准则对于安全关键型系统的开发至关重要。在此版本中,CLion 的静态分析工具包获得了大量专门针对 C++17 的 MISRA C++:2023 检查。

Image
MISRA C++:2023 检查

调试器

CLion 的调试器已经获得多项更新,其中最重要的是 OpenCV 图像查看器、将调试器附加到未启动进程的功能、带有结构化数据的字符串的格式化视图以及新的捆绑 GDB (15.2) 和 LLDB (19.1.3) 调试器。

OpenCV 图像查看器

如果您正在开发使用 OpenCV 库的 ML 应用程序,现在可以在调试应用程序时以图像形式查看二维 OpenCV 数组。图像将在单独的对话框中打开,带有多个编辑选项。

OpenCV 图像查看器

OpenCV 图像查看器简化了应用程序调试期间的图像处理检查。与将图像保存到硬盘或编写额外代码以在弹出窗口中显示等方法相比,这种方法也更方便。

将调试器附加到未启动的进程

当项目的一部分使用 C++ 编写并在 CLion 中运行,而另一部分用另一种语言编写并在外部环境中运行时,将调试器附加到未启动的本地进程就非常实用。

要试用该功能,请执行以下操作:

  • 在代码中设置一个断点。

  • 从主菜单中选择 Run | Attach to an Unstarted Process…(运行 | 附加到未启动的进程…)。

  • 在 Command line(命令行)字段中,添加使用通配符查找进程的模式:*process_name*。

  • 选择您需要的选项。

  • 选择要附加的调试器。

  • 调试器将开始监视进程。

将调试器附加到未启动的进程

外部进程启动后,调试器就会附加到它。此后,调试会话将正常继续,程序运行并在您设置的断点处暂停。

带有 JSON、XML 或 HTML 数据

的字符串的格式化视图

调试包含 JSON、XML 或 HTML 数据或换行符的字符串时,您可以直接在调试器中根据代码样式查看格式化的字符串。这意味着您不再需要将未格式化的值复制到第三方工具中进行检查。

调试时,点击变量旁边的 View(视图)在单独的窗口中查看结构化数据或原始数据。

Image
带有 JSON、XML 或 HTML 的字符串的格式化视图

其他功能增强

此版本还包含许多用户体验改进,例如更新版云补全、新的项目状态微件以及适用于新终端的更新版 UI。我们还将 CMake 捆绑包更新到 3.30.5。

AI Assistant 赋能的更新版云补全

增强型 JetBrains AI Assistant 插件采用我们内部训练的 C++ LLM,显著提高了 CLion 云代码补全的速度和智能。AI Assistant 现在提供更多的使用场景、更好的后缀匹配,以及更正确的代码段补全。

最显著的增强之一是多行代码补全,它带来了语法高亮显示和逐步接受代码建议的功能。

更新版云补全

多行代码补全与标准代码补全和全行代码补全(后者使用本地 LLM 并且不需要将数据发送到云端)一起工作。这样,您就可以逐步审查和接受建议。您还可以使用快捷键 ⌥→ (macOS) 和 Ctrl+→ (Windows) 逐字接受建议。

项目状态微件

CLion 的项目状态通知会告知您项目配置的潜在问题并提供解决方法。在之前的 CLion 2024.2 中,这些通知在编辑器中显示为黄色横幅,直到问题得到解决。对于某些用户来说,它们并不重要,例如只是想打开第三方项目中的 .cpp 文件来阅读代码的用户。在这种情况下,没有必要在编辑器中一直悬挂通知横幅。

在此版本中,我们将项目状态通知从编辑器顶部移动到状态栏中新增的微件。

Image
项目状态微件

现在,只有将鼠标悬停在 ⚠️ 图标上时,才会出现文件不属于任何项目的通知。点击图标后,微件将建议修正问题。这样既能减少通知的干扰,又能让需要的人获取信息。

新终端的更新版 UI

新终端的界面经过重新设计,减少了填充,更加紧凑。这一更改最大程度增加了屏幕空间,使查看和使用命令更加方便,同时让所有内容清晰和便于阅读。

Image
新终端的更新版 UI

高亮显示所选文本的匹配项

默认情况下,CLion 现在会高亮显示您在任意文件类型中选择的文本的所有实例,而不仅仅是 .c 和 .cpp 文件。这一更改使得跟踪所选文本在整个文件中出现的位置更加简单。

Image
高亮显示所选文本的匹配项

试用 CLion 并向我们提供反馈

我们邀请您试用 CLion 2024.3。如果您拥有有效订阅,您可以立即更新。第一次使用 CLion?现在就开始 30 天免费试用,立即体验所有功能和改进。

我们非常重视您的反馈!如果您有任何需要分享的信息或遇到任何问题,请通过问题跟踪器告诉我们。

下载 CLion 2024.3

本博文英文原作者:Oleg Zinovyev

Image

CLion 相关阅读

Image
Image
Image
Image

关于 CLion

CLion 是用于 Windows、Linux 和 macOS 上 C 或 C++开发的智能 IDE。CLion 了解现代 C++ 标准并提供预处理程序支持。它还集成了 GDB/LDB 和一套单元测试框架。 

进一步了解 CLion

Image

⏬ 戳「阅读原文」了解更多