CLion 2020.3 aporta mejoras significativas que ya estuvimos encantados de anticipar a momentos clave del proceso de desarrollo: análisis del código, aplicaciones de ejecutar y depurar y testeo de unidades. Para proyectos integrados, CLion ahora incluye compatibilidad inicial con MISRA C y C++. Y los usuarios de Qt pueden disfrutar de funcionalidades del IDE adaptadas específicamente al trabajo con código Qt.
CLion 2020.3 puede ejecutar y depurar su aplicación con privilegios root: solo tiene que seleccionar esta opción en la configuración de ejecutar/depurar correspondiente. Funciona con aplicaciones CMake, Makefile, Gradle Native, Custom Build y CTest.
Una nueva acción Run | Open Core Dump… disponible para Linux y macOS le permite abrir un volcado principal existente de un proceso que se ha caído en CLion y depurarlo desde allí. Los usuarios pueden inspeccionar la vista de variables y marcos, comprobar la vista de desensamblado y memoria, evaluar expresiones y ejecutar comandos del depurador desde la consola del depurador. Obtenga más información acerca del proceso de configuración de esta funcionalidad y sus limitaciones conocidas.
Con una nueva acción Set Execution Point to Cursor, puede desplazarse adelante y atrás a través de la ejecución de su programa mientras depura, interrumpir bucles o reiniciarlos, seleccionar otra rama en una cláusula if-else o declaración switch-case, e incluso saltarse los bucles por completo. Es tan sencillo como arrastrar y soltar una flecha en el medianil a la línea que le interesa.
Ahora, cuando la aplicación funciona en modo depuración, el editor muestra consejos inline en los que puede hacer clic para expandirlos y ver todos los campos pertenecientes a una variable determinada. Además, puede modificar los valores de la variable dentro de la lista desplegable o añadir una expresión arbitraria como Inline Watch a esta posición del código.
En CLion ya puede utilizar un script para especificar el entorno en el que se lanzará una configuración de ejecutar/depurar. Para ello encontrará el nuevo ajuste en todas las configuraciones de aplicación y testeo de unidades.
¡No espere más! Las configuraciones de ejecutar/depurar pueden editarse mientras se indexa el proyecto.
CTest, un ejecutor de pruebas específico de CMake, ya es compatible con CLion. Esto significa que se detecta la lista de pruebas ejecutadas con CTest, y el IDE crea automáticamente configuraciones de ejecutar/depurar para ellas. Cuando se lanzan las pruebas, los resultados se presentan en el ejecutor de pruebas integrado, desde donde puede depurar pruebas, volver a ejecutar las pruebas fallidas, y mucho más.
La versión 2020.3 mejora la compatibilidad de CLion con Google Test, el marco de trabajo de testeo de unidades de C++ más popular del mundo (la investigación del ecosistema de los desarrolladores en 2020 muestra que el 31 % de los desarrolladores de C++ utilizan Google Test).
DISABLED en su nombre) ahora también se muestran en el árbol de pruebas con el icono correspondiente.
CLion 2020.3 incluye compatibilidad parcial con MISRA C 2012 y MISRA C++ 2008, directrices utilizadas a menudo en el desarrollo integrado y especialmente en el sector de la automoción. Esta compatibilidad acelera el desarrollo de dichos proyectos mostrando las incompatibilidades en una fase más temprana del ciclo de desarrollo. La lista de comprobaciones actualmente compatibles está disponible en la página de Confluence de CLion.
CLion 2020.3 mejora la inspección de Unused Value, que detecta situaciones en las que un valor variable nunca se utiliza tras haber sido asignado. Ahora puede personalizarse para que siga el estilo que recomienda utilizar inicializadores de variables predeterminados. Se ha añadido a la configuración una nueva opción para desactivar la inspección en esos casos.
Se ha añadido a CLion una nueva refactorización Extract Lambda Parameter. Extrae una expresión o declaración a un nuevo parámetro con una expresión lambda trasladada como un argumento correspondiente. La declaración podría ser, por ejemplo, un comparador trasladado a una función de ordenar.
Los fragmentos de finalización Clang le ayudan a insertar construcciones comunes al escribir palabras clave C++. En algunos casos, por ejemplo al completar una palabra clave typedef, la finalización de código puede sugerir no solo la palabra clave, sino también stubs para el tipo y el nuevo nombre.
CLion 2020.3 mejora la finalización de código, puesto que ahora trabaja con mucha más precisión con los tipos de plantillas. Por ejemplo, se muestran las opciones de finalización para elementos contenedores e iteradores en la plantilla de función.
El cuadro de diálogo New Project sugiere los tipos de proyecto Qt Console Executable y Qt Widgets Executable. También puede seleccionar la ruta de prefijo de Qt CMake, el estándar de lenguaje C++ que se utilizará en el proyecto y la versión de Qt. El nuevo proyecto se genera utilizando las plantillas correspondientes.
Un nuevo elemento QT UI Class del menú New (Alt+Insert) le ayuda a crear simultáneamente una clase Qt junto con un archivo .ui. Rellene el nombre de clase y seleccione la clase primaria (QWidget, QMainWindow o QDialog). Los archivos .h/.cpp/.ui se generarán utilizando la base Filename como su nombre de archivo. Los archivos generados se ajustarán a las plantillas listadas en Settings/Preferences | Editor | File and Code Templates: Qt Class, Qt Class Header y Qt Designer Form.
Las señales y espacios son funciones esenciales de Qt, puesto que se trata de entidades utilizadas para la comunicación entre objetos. CLion ahora entiende cuándo deben completarse las señales o espacios, y filtra únicamente los miembros correspondientes en la lista desplegable de finalización.
Las sugerencias de autoimportación de proyectos Qt en CLion 2020.3 se han adaptado para que empleen el estilo utilizado más habitualmente en Qt.
Los proyectos Makefile que utilizan varios contenedores como ccache, libtool, dolt, slibtool y jlibtool ya pueden cargarse sin problemas en CLion. Obtenga más información sobre algunas de las limitaciones todavía existentes.
Configurar un proyecto Makefile en CLion ahora es todavía más fácil: las configuraciones de ejecutar/depurar se crean automáticamente para los destinos Makefile del nivel más alto al cargar el proyecto. Ahora, para ejecutar y depurar, solo tiene que dirigir la configuración al ejecutable creado.
La acción Recompile (Ctrl+Mayús+F9) le ayuda a agilizar el proceso de desarrollo compilando un solo archivo sin crear el proyecto completo. ¡Ahora también funciona con proyectos Makefile!
Con CLion 2020.3 ya puede mantener varios perfiles CMake configurados en CLion y a la vez deshabilitar los que no esté utiilizando actualmente. Esto mejora los tiempos de carga del proyecto y evita los fallos redundantes procedentes de perfiles temporalmente no disponibles (como para las configuraciones remotas que estén actualmente desactivadas). La opción está disponible desde la ventana de herramientas de CMake y el cuadro de diálogo de configuración de perfiles de CMake.
El cuadro de diálogo Search Everywhere ahora incluye una pestaña Git. Esta ayuda a encontrar hashes de confirmación y mensajes, etiquetas y ramas. También puede realizar cálculos matemáticos sencillos en el campo de búsqueda.
El menú VCS ahora lleva el nombre del sistema de control de versiones que se esté utilizando. Hemos hecho el menú más conciso, dejando solo las acciones más útiles para el control de versiones de su proyecto.
Además, ahora los dos botones más populares, Commit y Commit and Push…, se muestran explícitamente en la pantalla Commit.
Ahora puede probar los cambios directamente desde CLion. Para activar esta funcionalidad, vaya a Preferences / Settings | Version Control | Git y marque la casilla de verificación Enable staging area. Haga clic en el icono + para añadir sus archivos al nuevo nodo Staged en la vista Commit. También puede probar los cambios directamente desde el medianil o en la vista Diff. Para obtener más información, lea nuestra publicación del blog.
Los directorios marcados como Excluded localmente ahora se marcan automáticamente como rutas Excluded para cadenas de herramientas remotas cuando se configuran inicialmente. Y cuando se efectúan cambios en un proyecto ya sincronizado, CLion muestra una notificación de actualización y sugiere actualizar la lista de Excluded paths.
CLion 2020.3 admite Code With Me (EAP), un nuevo servicio de JetBrains para el desarrollo colaborativo y la programación en pares. Code With Me le permite compartir con otras personas el proyecto que tiene abierto en ese momento en su IDE y trabajar juntos en tiempo real. Puede descargarlo hoy mismo desde el marketplace de complementos (Preferences / Settings | Plugins | Marketplace). Eche un vistazo a estas publicaciones para obtener más información sobre Code With Me.
CLion 2020.3 luce una pantalla de bienvenida rediseñada. El nuevo diseño pone las operaciones más habituales al alcance de su mano, y le ofrece acceso inmediato a proyectos recientes, opciones de personalización y ajustes de complementos.
Ahora ya puede dividir un editor arrastrando y soltando una pestaña a un lado de la ventana del editor principal. La acción Open in Right Split divide el editor verticalmente al abrir un archivo.
Puede invocar esta acción desde la vista Project u otras ventanas emergentes de navegación, como Recent Files y Search Everywhere (Mayús+Enter).
CLion ahora puede sincronizarse con el tema de su sistema operativo. Para habilitar esta función, vaya a Settings / Preferences | Appearance & Behavior | Appearance y marque la casilla Sync with OS. Haga clic en el icono de la rueda dentada situado junto a Sync with OS para seleccionar su tema preferido.
IntelliJ Rust ahora es totalmente compatible con funcionalidades Cargo y le permite configurarlas con una nueva interfaz de usuario inteligente. Las funcionalidades de un espacio de trabajo pueden activarse y desactivarse con un solo clic, y la asistencia a la codificación del complemento tendrá en cuenta estos ajustes. Consulte los detalles en este artículo del blog.
Asimismo, el complemento ahora permite utilizar Rustfmt como formateador de código predeterminado. Solo tiene que marcar la casilla correspondiente en Settings / Preferences | Languages & Frameworks | Rust | Rustfmt y todo el reformateo del archivo empleará Rustfmt. Por ahora, si utiliza Reformat Code en una selección, se utiliza el formateador del IDE en su lugar.
El asistente de proyecto del complemento se ha mejorado con más plantillas y con la opción de utilizar plantillas personalizadas cargo-generate.
Entre otras actualizaciones se incluyen la introducción de compatibilidad con proyectos WebAssembly y un nuevo motor experimental para la resolución de nombres.
CLion 2020.2 se asegura de cubrir una gran variedad de proyectos C++ añadiendo proyectos Makefile y mejorando la compatibilidad con CMake. Ofrece una mejor conformidad con el estándar C++20. El análisis del código ahora es más preciso y detecta más errores críticos, como punteros colgantes. También se han mejorado de modo significativo las pruebas de unidades, la cobertura de código y el desarrollo integrado, entre otras áreas.
¿Está desarrollando un proyecto basado en Makefile? Disfrute de las funcionalidades inteligentes de CLion: CLion ahora es directamente compatible con proyectos Makefile. Abra una carpeta con un Makefile de nivel superior como proyecto, o directamente indíquele a CLion un Makefile en el diálogo "Open". El IDE ejecutará make (con la opción --just-print para evitar ejecutar un build real), analizará el resultado del comando make y cargará el proyecto. Compruebe en este artículo del blog los detalles, las limitaciones conocidas y una larga lista de proyectos en los que he hemos puesto a prueba nuestro enfoque.
La configuración de perfil de CMake en Build, Execution, Deployment | CMake dispone de una interfaz de usuario más limpia, y se han incorporado unos pocos consejos útiles para la configuración. Además, ahora dispone de varias acciones para proyectos CMake disponibles en Find Action, y puede asignar un atajo a cualquiera o a todas ellas si las utiliza habitualmente:
CLion ahora incluye CMake 3.17 y añade compatibilidad inmediata para dos de sus funcionalidades más recientes:
-G "Ninja Multi-Config", puede obtener archivos de build CLion generados para cualquier configuración (tenga en cuenta que, durante un tiempo, CLion todavía utilizará solo una configuración seleccionada para el perfil CMake). target_precompile_headers para añadir archivos de encabezado a las propiedades PRECOMPILE_HEADERS o INTERFACE_PRECOMPILE_HEADERS de un destino. CLion tratará correctamente esos encabezados precompilados.
La acción Recompilar un solo archivo le ayuda a agilizar el proceso de desarrollo comprobando rápidamente cambios locales, y ahora está disponible para Ninja y otros generadores utilizados en CMake y compatibles con CLion.
Gracias a una importante corrección de errores, CLion ahora puede crear varios proyectos independientes en paralelo, sin que estos se impidan el arranque entre sí.
El análisis de código se ha actualizado en profundidad en CLion 2020.2, para aumentar la precisión de numerosas comprobaciones y abordar más casos. Esta versión también continúa con la tarea de pulir el análisis del flujo de datos, que se reimplementó anteriormente sobre el motor basado en Clangd.
Los punteros que apuntan a datos no válidos dan lugar a problemas de tiempo de ejecución. Algunos casos típicos son las combinaciones double-free y use-after-free. CLion ahora detecta estos punteros colgantes si aparecen en el ámbito local, no hay ninguna aritmética de puntero implicada y las macros no evitan que CLion realice el análisis.
La inspección de código Simplify es ahora más precisa y aborda más casos. Funciona con los siguientes tipos de instrucciones:
condition == true.condition1? true : condition2.if(condition1) return true; return condition2; Los casos se pueden configurar por separado en Settings | Editor | Inspections | C/C++ | General | Simplifiable statement.
Esta inspección de CLion detecta situaciones en las que una condición de bucle no se actualiza dentro del bucle. Es similar a la clang-tidy:bugprone-infinite-loop de Clang-Tidy, pero funciona para bucles con puntos de salida y puede gestionar casos con lambdas o referencias.
La inspección de Unused code se ha renovado en profundidad. Entre otros cambios, ahora funciona para alias de tipo, para construcciones "using" definidas tanto global como localmente.
Por último, aunque no menos importante, hemos introducido un nuevo widget de inspecciones. Muestra el número de advertencias y errores en el archivo actual y le permite desplazarse entre ellos con facilidad. También puede configurar el nivel de resaltado (igual que lo hacía anteriormente con el denominado icono Hector).
Si hace clic en el widget de inspecciones, se abrirá la ventana de herramientas de la vista de problemas (View | Tool Window | Problems). Muestra la lista de advertencias y errores del archivo actual, le ayuda a desplazarse hasta el punto de su código donde se ha detectado el problema, y le permite resolver los problemas mediante el atajo Alt+Enter directamente desde la ventana de herramientas.
Este año se introduce oficialmente un nuevo estándar de lenguaje para los desarrolladores de C++, y CLion ya incluye compatibilidad para muchas de sus funcionalidades. El motor de lenguaje en CLion 2020.2 también es más estable con código C++20 en general.
CLion 2020.2 es compatible con las nuevas palabras clave en el resaltado y la finalización de código:
char8_tconsteval y constinitco_await, co_return y co_yield
La finalización de código en inicializadores designados ahora funciona con campos de una clase base.
La construcción de C++20 explicit(bool) ahora se resalta correctamente. También está equipada con consejos de nombres para argumentos de condición y es compatible con la navegación y la refactorización.
for basado en intervalo con inicializador Ahora se admiten bucles for basados en intervalo con la instrucción init. Esto incluye refactorizaciones como Rename para variables del bucle.
Se ha añadido una nueva inspección de código que utiliza Concepts. Sugiere restringir variables locales declaradas como auto si se les ha asignado el resultado de una llamada a función restringida.
Estos tipos de pruebas en Catch2 ahora se reconocen y se tratan como el resto de tipos de pruebas.
La macro GTEST_SKIP() en Google Test permite saltarse pruebas en el tiempo de ejecución. Ahora, CLion lo permite.
CLion 2020.2 mejora la experiencia del usuario añadiendo indicadores de cobertura de forma automática cuando hace clic en el botón Run with Coverage (Ejecutar con cobertura). Ahora, si su perfil de CMake seleccionado actualmente no incluye opciones de compilador para la cobertura, CLion buscará un perfil de CMake (y creará uno si no lo encuentra) con los indicadores de cobertura transmitidos vía CMAKE_CXX_FLAGS y CMAKE_C_FLAGS.
Para el desarrollo integrado, hemos actualizado un complemento para PlatformIO, lo cual ha supuesto importantes mejoras:
Los archivos de configuración de proyectos PlatformIO ahora se resaltan correctamente para que pueda leerlos y actualizarlos con más facilidad.
Cuando se crea un proyecto nuevo desde el asistente para proyectos nuevos de CLion, de forma automática se añaden numerosas configuraciones de ejecutar/depurar. Por ejemplo, _PROGRAM, _MONITOR, _CLEAN, _TEST, entre muchas otras.
Ahora, CLion crea de forma automática perfiles de CMake para las entradas CMAKE_CONFIGURATION_TYPES del proyecto de CMake PlatformIO.
Si desarrolla con las cadenas de herramientas WSL2 y utiliza Git en WSL2, ahora disfrutará de que CLion cambie entre ejecutables Git dependiendo de la ubicación del proyecto. Detectará automáticamente el ejecutable Git desde WSL2 para proyectos abiertos desde ahí (a través de la ruta \\wsl$) y cambiará todas las funcionalidades relacionadas con Git para trabajar con este.
CLion 2020.2 presenta una vista nueva y más espaciosa para solicitudes de extracción de GitHub. Muestra todos los detalles de una solicitud de incorporación de cambios en particular (como mensajes, nombres de ramas, autor, usuario asignado, archivos modificados, confirmaciones y línea de tiempo) y presenta los resultados de las comprobaciones previas a la confirmación. También ayuda con numerosas acciones, como iniciar una revisión, solicitar revisiones, añadir comentarios o combinar solicitudes de incorporación de cambios desde el propio IDE.
La acción Go to Declaration or Usages (Ctrl+clic / Ctrl+B) se comporta de forma distinta dependiendo del caso y de la configuración del IDE:
Settings | Editor | General | Go to Declaration or Usages. Se han solucionado algunos problemas de congelación y demoras. Para evitar la degradación en el rendimiento del editor, CLion ahora introduce una barra invertida al pulsar Enter dentro de la definición de una macro. Muy probablemente la definición de la macro continuará en una línea nueva, de modo que así se evita que el IDE efectúe nuevos análisis redundantes.
En la versión 0.3 del complemento, se ha habilitado de forma predeterminada el nuevo motor para la expansión de macros, que hasta ahora había sido experimental. Este motor gestiona declaraciones de módulos y bloques impl generados por macros, y le da información de todo su código, incluyendo contenedores como tokio y async-std. Más información en esta entrada del blog.
Otra gran actualización es la introducción de compatibilidad directa con depuradores para la cadena de herramientas MSVC de Rust. Ahora puede utilizar el depurador basado en LLDB incluido en CLion para la cadena de herramientas de Visual Studio y depurar código Rust creado en Windows utilizando MSVC de Rust.
Entre otras mejoras, se incluyen nuevas refactorizaciones (Move para archivos y elementos de nivel superior e Introduce Constant), compatibilidad directa con or_patterns, resaltado de errores en literales de formato dentro de macros, como println!, representación de la documentación en el editor, consejos de inserciones para llamadas a métodos de cadena y mejoras en el flujo de trabajo del depurador en IntelliJ IDEA.
Settings | Languages & Frameworks | C/C++ | Clangd ahora incluye información sobre la revisión de LLVM Clang utilizada, para que sepa qué esperar en cuanto a compatibilidad de C++ y comprobaciones integradas Clang-Tidy.
Si utiliza el compilador/cadena de herramientas IAR en sus proyectos integrados, ahora puede hacerlo en CLion. El proceso de recopilar la información del compilador ya no falla, lo que significa que los proyectos que utilizan la cadena de herramientas IAR se cargan correctamente y funcionan en CLion.
Cabe destacar algunas cuestiones:
PlatformIO es un ecosistema de nueva generación que está adquiriendo popularidad rápidamente. Para beneficiarse de él en sus proyectos integrados, aproveche un nuevo complemento PlatformIO for CLion, que:
Y mucho más! Consulte la documentación oficial para obtener más información.
El código en CUDA C y C++, incluidas todas las extensiones CUDA específicas, ahora se analizan y resaltan correctamente. Esto significa que la navegación en el código, la documentación de código y otras acciones de asistencia a la codificación funcionan en el código CUDA. Además, CLion puede completar los corchetes angulares para las llamadas de kernel.
Clonemos el proyecto ClaraGenomicsAnalysis de GitHub para descubrir las capacidades de compatibilidad de CUDA en CLion.
El asistente de nuevo proyecto en CLion se ha actualizado e incluye una nueva opción para crear proyectos CUDA: bibliotecas o ejecutables. Al seleccionarse, genera archivos CMakeLists.txt y main.cu de prueba para usted.
Hay nuevas extensiones de archivo CUDA compatibles (.cu y .cuh) disponibles en el cuadro de diálogo de creación de nuevo archivo C/C++. Y la lista de posibles destinos para actualizar este cuadro de diálogo incluye tanto destinos CMake generales y CUDA específicos (creados con los comandos cuda_add_executable y cuda_add_library).
Hemos hecho posible la utilización de clang-cl en CLion en Windows, con compatibilidad para las versiones 8.0 y superiores.
Puede instalarlo desde el sitio web de LLVM o con las herramientas de Visual Studio. Cuando haya terminado, seleccione la cadena de herramientas de Visual Studio en CLion y dirija a clang-cl.exe en la configuración de la cadena de herramientas.
El depurador basado en LLDB para la cadena de herramientas de Visual Studio C++ desarrollada por JetBrains ahora es el depurador por defecto de esta cadena de herramientas. ¡Así que puede empezar a utilizarlo de inmediato!
Tenga en cuenta debe habilitar explícitamente la compatibilidad incluida para los visualizadores nativos en Settings | Build, Execution, Deployment | Debugger Data Views | Enable NatVis renderers for LLDB.
Las configuraciones Remote GDB Server y Embedded GDB Server ahora funcionan con destinos personalizados. Estas configuraciones, que previamente solo funcionaban con destinos CMake, le permiten depurar su aplicación en un host remoto o en el microcontrolador desde la instancia de CLion que se ejecuta en su máquina local.
Si ya ha creado estas configuraciones, CLion 2020.1 guardará los ajustes previos de la configuración de ejecutar/depurar en el directorio projectFilesBackup de la carpeta del proyecto y se lo notificará.
Ahora puede utilizar variables de ruta y macros en los campos Program Arguments y Working Directory en las configuraciones de CMake, Custom Build y Gradle Native Applications. Las macros le ayudan a obtener valores para:
Las macros FilePrompt/Prompt pueden utilizarse para mostrar un cuadro de diálogo seleccionador de archivos o de entrada de cadena al ejecutar/depurar la configuración.
Path Variable puede definir una ruta a la biblioteca que se utiliza ampliamente en sus proyectos, pero que está ubicada fuera del directorio del proyecto.
Si necesita redirigir la entrada de un archivo al stdin de su aplicación, ahora puede hacerlo. Utilice un nuevo campo en la configuración denominado Redirect input from. Introducir:
Data Flow Analysis (DFA) de CLion realiza lo que un compilador no suele hacer por usted: analiza el flujo de datos en su código y detecta posibles incidencias a partir de los resultados. Captura condiciones que son siempre verdaderas o falsas, bucles infinitos, instrucciones de retorno que faltan, recursividad infinita y mucho más. Y con 2020.1, DFA pasa al motor de lenguaje basado en Clangd para ser más preciso y menos pesado en cuanto al rendimiento. ¡Aún estamos trabajando en ello, pero ya dispone de unos buenos resultados!
Un nuevo modo, en el que la finalización la proporciona enteramente el motor de lenguaje basado en Clangd, está habilitado de forma predeterminada. Este modo resuelve la priorización y la organización de las incidencias que ocurren cuando los resultados de la finalización de código de varios motores se mezclan. Este comportamiento está controlado por la configuración Code Completion en Settings | Languages & Frameworks | C/C++ | Clangd.
Decenas de correcciones y mejoras refuerzan la precisión y potencia de este nuevo modo.
Ahora, cuando abre por primera vez un proyecto con un archivo de configuración .clang-format en la raíz del proyecto, CLion lo detectará y cambiará a ClangFormat automáticamente por usted.
Si habilita ClangFormat en un proyecto que no tenga un archivo de configuración .clang-format, CLion le propondrá crear uno por usted.
Cuando se detecta un archivo de configuración .clang-tidy en el proyecto, ahora CLion desactiva automáticamente la utilización de la configuración del IDE para Clang-Tidy. El comportamiento está controlado por Prefer .clang-tidy files over IDE settings en Settings | Editor | Inspections | C/C++ | General | Clang-Tidy.
Los campos de miembro de estructura y los campos de miembros de clase ahora tienen configuraciones de nomenclatura diferentes. Puede echarles un vistazo en Settings | Editor | Code Style | C/C++ | Naming Convention.
#pragma region y #pragma endregion se pueden usar en CLion para plegado de código.
Al llamar a la refactorización Change Signature (Ctrl+F6), CLion actualiza todas las utilizaciones de la función. Un nuevo campo Default value en el cuadro de diálogo Change Signature ofrece la posibilidad de especificar el valor del parámetro que utilizar para todas las utilizaciones. Déjelo en blanco para usar el tipo de valor por defecto al igual que antes.
La misma lógica y un nuevo campo Default value se aplica al arreglo rápido Create Parameter From Usage y a la intención Add Parameter to Constructor.
La documentación rápida, una herramienta universal para previsualizar la documentación y obtener información sobre la firma de función, los tipos inferidos y la sustitución de macros, ahora está disponible al pasar el ratón por encima.
Puede controlarlo en la configuración Show quick documentation on mouse move in Settings | Editor | Code Editing.
La fuente por defecto en el editor ha pasado a ser JetBrains Mono, una nueva fuente de código abierto creada por JetBrains. Ha sido diseñada específicamente para facilitar la lectura de código.
Un nuevo tema claro por defecto, IntelliJ Light, también se muestra ahora como tema estándar en todos los distintos sistemas operativos. Si lo prefiere, utilice View | Quick Switch Scheme | Theme para seleccionar un tema no predeterminado.
Con CLion 2020.1, puede dividir las sesiones de terminal vertical u horizontalmente para que pueda ejecutarlas en paralelo. Puede invocar el menú contextual desde el terminal para crear, navegar y cerrar una sesión de terminal dividida.
Una ventana de herramientas actualizada ofrece más espacio para la lista de archivos modificados y el diff. También le permite añadir cambios a una confirmación cuando están listos, crear un mensaje de confirmación de iteración, y elegir qué cambios provisionales se envían a qué confirmación.
La nueva interfaz de usuario está habilitada de forma predeterminada para los nuevos usuarios; los usuarios existentes pueden habilitarla en Settings | Version Control | Commit.
Un cuadro de diálogo actualizado y realmente interactivo le permite:
La ventana de herramientas Version Control ahora se denomina la ventana de herramientas Git, o Subversion/Mercurial/Perforce si utiliza cualquiera de estas herramientas en lugar de Git.
¡Ya no necesita preinstalar Git manualmente! Cuando abra un proyecto utilizando Git o lo importe desde VCS, si no tiene Git en su máquina, CLion se ofrecerá a descargarlo e instalarlo por usted.
Gracias a las mejoras en la compatibilidad con LLDB, IntelliJ Rust ahora procesa correctamente las enumeraciones y los tipos primitivos, y también muestra claramente los nombres de función en la pila de llamadas.
Otra actualización principal realizada en el complemento es la integración con REPL. Invoque la consola desde Tools | Rust REPL y úsela para realizar el prototipo y revisar su código línea a línea. La integración ofrece el resaltado de sintaxis y la finalización de código, además de algunas prácticas acciones de la consola: historial de comandos, salto de línea suave, desplazamiento rápido hasta el final, etc.
En cuanto a la compatibilidad con lenguajes, IntelliJ Rust ahora gestiona los bloques impl para los alias de tipo. Teniendo en cuenta el rendimiento, solo hemos habilitado esta funcionalidad para los tipos con un número limitado de alias.
Entre otras mejoras, se incluye el resaltado de las variables locales no utilizadas, correcciones de la compatibilidad de los atributos cfg y la nueva inspección Lift return.
Settings | Tools | SSH Configurations.