CLion 2024.3 marca otro hito importante para CLion Nova. Esta versión considerablemente mejorada de nuestro motor de lenguaje viene repleta de algunas de las funcionalidades más solicitadas y ya está lista para la mayoría de los casos de uso. Esta versión también incluye nuevas funcionalidades para el desarrollo integrado, como servidores de depuración y la compatibilidad con la depuración nativa de Zephyr West. Un visor de imágenes OpenCV y la posibilidad de adjuntar el depurador a un proceso no iniciado completan CLion 2024.3.
Nuestro nuevo y más rápido motor de lenguaje, CLion Nova, es ahora el predeterminado para nuevos usuarios. En esta versión hemos implementado algunas de las funcionalidades más solicitadas por los usuarios y hemos solucionado varios errores importantes. Con el tiempo, tenemos previsto que CLion Nova sea el motor predeterminado para todos los usuarios, tanto los actuales como los nuevos. Pero antes, nos gustaría preguntarle si tiene alguna duda al respecto.
Muchas mejoras en CLion Nova han ayudado a reducir el uso de memoria del motor, lo que se nota especialmente en proyectos grandes como Chromium. El IDE ahora responde mejor y se inicia más rápido.
Cuando depura código que contiene un vector OpenCV bidimensional, el depurador ahora le permite verlo como imagen en un cuadro de diálogo por separado y utilizar varias opciones de edición. Esta nueva funcionalidad facilita y hace más cómodo el desarrollo de aplicaciones de visión informática y aprendizaje automático.
Hemos añadido una nueva opción de configuración Debug Servers para facilitar la configuración de depuración para el desarrollo integrado y remoto. Con un servidor de depuración puede elegir en qué sonda de depuración quiere ejecutar o depurar su destino de compilación. Antes había que establecer una configuración de ejecutar/depurar distinta para cada combinación de sonda de depuración y destino de compilación.
En esta versión, nuestro nuevo motor de lenguaje, CLion Nova, ha recibido una serie de funcionalidades clave, como diversas actualizaciones específicas del lenguaje y de la IU. También hemos solucionado algunos errores importantes, incluidos los relacionados con el uso de la memoria. Para facilitar la transición desde CLion Classic, los usuarios ya no tienen que ir hasta Advanced Settings para cambiar al nuevo motor: ahora también hemos incluido la posibilidad de hacerlo en la pantalla Welcome y en el menú Configuration.
Ahora, la superioridad de CLion Nova sobre CLion Classic en términos de rendimiento es aún más evidente. Por este motivo, creemos que CLion Nova está listo para ser el motor predeterminado no solo de los nuevos usuarios, sino de todo el mundo.
No obstante, entendemos que no todos los usuarios existentes están preparados para hacer el cambio, y nos gustaría saber por qué. Por ese motivo, le agradeceríamos que nos dijera por qué prefiere CLio Classic en vez de CLion Nova.
Puede enviarnos sus comentarios seleccionando Help | Submit Feedback... en el menú principal del IDE. Los revisaremos atentamente y nos esforzaremos por solucionar cualquier problema crítico que pueda estar impidiéndole disfrutar de CLion Nova.
Hemos introducido muchas mejoras en CLion Nova para intentar reducir su uso de la memoria. Esto se nota especialmente en proyectos grandes. Si comparamos el uso de la memoria de un proyecto Chromium en la versión 2024.2 de CLion Nova frente al mismo proyecto en la nueva versión 2024.3, el frontend del IDE utiliza un 51 % menos de memoria, mientras que el backend del IDE utiliza un 15 % menos.
Para nuestros usuarios, esto significa lo siguiente:
La jerarquía de llamadas de las funciones muestra las jerarquías de las funciones que llaman y las que reciben la llamada, y le ayuda a comprender mejor cómo interactúan sus funciones.
Para mostrar la jerarquía de llamadas, seleccione una función en el editor y después elija Navigate | Call Hierarchy desde el menú principal o utilice el acceso directo ⌃⌥H (macOS) o Ctrl+Alt+H (Windows/Linux).
Ahora puede seleccionar un estilo de código predefinido como LLVM, Google, Qt o GNU a través de Settings | Editor | Code Style | C/C++ | Set from....
Hemos añadido un icono para las llamadas recursivas al medianil. Esto hace que sea más fácil ver dónde está utilizando funciones recursivas en su código y evitar situaciones potencialmente dañinas como los desbordamientos de pila. El icono también se muestra en la jerarquía de llamadas.
La ventana emergente Quick Definition le muestra dónde y cómo están definidos los símbolos de clase, función, método y otros símbolos del proyecto. Para invocarla, coloque el signo de intercalación en un símbolo en el editor y pulse ⌥Espacio (macOS) o Ctrl+Mayús+| (Windows/Linux). También puede acceder a ella desde el menú principal a través de View | Quick Definition.
Hemos añadido la nueva opción de configuración Debug Servers para facilitar el proceso de configuración de la depuración para el desarrollo integrado y remoto. Hay una sección separada en Settings | Debugger donde puede configurar un servidor de depuración basado en gdbserver.
En primer lugar, debe activar Debug Servers en Settings | Advanced Settings | Debugger. Luego, puede abrir el cuadro de diálogo Debug Servers en Settings | Debugger o invocar Edit Debug Servers en el selector de la barra de herramientas principal.
Tenga en cuenta que se trata de una funcionalidad experimental que aún no funciona con PlatformIO. No obstante, hay una solución alternativa. Le animamos a que la pruebe y que nos cuente sus impresiones. También estaremos encantados de organizar una llamada rápida para aprender más sobre sus casos de uso y desafíos específicos.
En esta versión hemos ampliado la compatibilidad con Zephyr West añadiendo la posibilidad de depurar proyectos West de forma nativa. Esto facilita la configuración y ejecución de sesiones de depuración en el IDE.
Al importar su proyecto Zephyr West, una configuración de ejecutar/depurar se crea de forma automática en el selector Run/Debug Configurations. También puede crear una nueva configuración de ejecutar/depurar a través de Run | Edit Configurations... en el menú principal.
Ahora, al depurar los periféricos de panel como los anclajes o temporizadores de GPIO, puede ver inmediatamente los efectos de sus cambios editando los registros de periféricos en el panel Peripherals de la ventana de herramientas Debug.
MISRA C++:2023 es la última edición de MISRA C++, que proporciona normas para utilizar C++17 en sistemas de seguridad crítica. El conjunto de herramientas de análisis estático de CLion ahora incluye un gran número de comprobaciones MISRA C++:2023.
Si está depurando una aplicación de aprendizaje automático o visión informática que utiliza Open CV, ahora puede ver un vector OpenCV bidimensional como imagen. El depurador muestra dichas imágenes en un cuadro de diálogo independiente y ofrece varias opciones y funcionalidades de edición como la actualización de la imagen al pisarla.
En el cuadro de diálogo del depurador Threads & Variables, haga clic en View as image.
Al depurar las cadenas que almacenan caracteres de línea nueva o datos JSON, XML y HTML, puede verlos formateados según su estilo de código directamente en el depurador. Presione View junto con una variable, y podrá ver los datos estructurados o brutos en una ventana separada.
Ahora puede adjuntar el depurador a procesos locales no iniciados. Estos activarán de forma automática la depuración cuando se inicien. Esta funcionalidad resulta útil cuando, por ejemplo, una parte de su proyecto está escrita en C++ y se ejecuta en CLion, mientras que otra está escrita en otro lenguaje y se ejecuta en un entorno externo.
Para configurarla, seleccione Run | Attach to an Unstarted Process... en el menú principal.
Hemos actualizado los siguientes depuradores integrados:
El complemento de JetBrains AI Assistant actualizado, equipado con nuestro modelo de lenguaje de gran tamaño para C++ entrenado internamente, ha hecho la finalización de código en la nube de CLion más rápida e inteligente. Ahora ofrece una gama más amplia de escenarios de uso, con una concordancia de sufijos mejorada que garantiza que el fragmento de código completa correctamente el código existente.
Una de las mejoras más destacadas es la finalización de código multilínea, que se ha actualizado con resaltado de sintaxis y aceptación incremental de las sugerencias de código.
La finalización de código multilínea funciona junto con la finalización de código estándar y la finalización de código de línea completa (esta última utiliza el LLM local y no requiere el envío de datos a la nube). Esto le permite revisar y aceptar las sugerencias de forma gradual. También puede aceptar las sugerencias palabra por palabra utilizando el acceso directo ⌥→ para macOS y Ctrl+→ para Windows.
Si está empezando con CLion, verá los consejos de incorporación mejorados. Le muestran cómo utilizar algunas de las funcionalidades clave del IDE y le ofrecen una imagen más clara de sus capacidades desde el principio. Esto reduce el tiempo necesario para convertirse en un usuario competente de CLion.
Hemos hecho que las notificaciones de estado del proyecto distraigan menos al trasladarlas de la parte superior del editor a un nuevo widget en la barra de estado. Ahora, si crea un nuevo archivo .cpp en su proyecto, por ejemplo, aparecerá el icono . La notificación de que su archivo no pertenece a ningún proyecto no aparecerá hasta que pase el ratón por encima del icono. Al hacer clic en el icono, el widget ofrecerá añadir el archivo al proyecto CMake. Si no lo necesita, puede cerrar la ventana emergente, dejando solo el icono en la barra de estado.
Se ha implementado un diseño más compacto en la interfaz del nuevo terminal, reduciendo los márgenes para maximizar el espacio en la pantalla. Esto también mejora la visibilidad al trabajar con comandos sin comprometer la legibilidad.
CLion ahora resalta todas las apariciones del texto que haya seleccionado en cualquier archivo, no solo en .c y .cpp, de forma predeterminada. Así es más fácil saber dónde aparece el texto seleccionado en el archivo. Si prefiere el comportamiento anterior, puede desactivar esta función en Settings | Editor | General | Appearance.
El paquete CMake se ha actualizado a la versión 3.30.5.