Ir al contenido

Funcionalidad


Compatibilidad con lenguajes

Compatibilidad de KDevelop con el lenguaje C/C++

Los siguientes lenguajes están completamente implementados, lo que significa que disponen de resaltado sintáctico semántico, navegación por el código y terminación automática:

  • C/C++ y ObjC (respaldados por las bibliotecas de Clang/LLVM)
    • Incluidas algunas características adicionales para Qt Framework
    • Incluidas las implementaciones del lenguaje para CUDA y OpenCL
  • Qt QML y JavaScript
  • Python (complemento opcional)
  • PHP (complemento opcional)

Incluso para prácticamente todos los lenguajes no admitidos, se puede usar un resaltado de sintaxis básico y la terminación de código basada en texto.

Sistemas de control de versiones compatibles

La función «Mostrar anotación» con Git.

Los siguientes sistemas de control de versiones disponen de integración con la interfaz gráfica:

  • Git
  • Bazaar
  • Subversion
  • CVS
  • Mercurial (hg) (complemento opcional)
  • Perforce (desde 5.1)

Una funcionalidad especialmente útil es el borde de Anotaciones, que muestra quién fue la última persona que modificó cada línea y cuándo lo hizo. ¡Mostrar las diferencias introducidas en estos cambios está a un solo clic de distancia!

Sistemas de compilación compatibles

Diálogo de preferencias de CMake de KDevelop

Los siguientes sistemas de compilación están admitidos, lo que significa que KDevelop puede obtener automáticamente objetivos de ejecución y de compilación, así como rutas de inclusión de ellos:

  • CMake
  • QMake
  • Makefiles personalizados (parcialmente)
  • Sistema de compilación genérico (sin detección automática de rutas de inclusión)

KDevelop sabe cómo invocar herramientas de automatización de compilación, como make y ninja, y posee páginas de configuración para ellas.

Funcionalidades de compatibilidad de lenguajes

Para todos los lenguajes compatibles, KDevelop dispone de las siguientes funcionalidades:

Widget de navegación

Ventana emergente del widget de navegación al situar el ratón sobre los elementos o al pulsar Alt con el cursor de texto sobre ellos. El widget permite navegación (es decir, puede, por ejemplo, navegar hasta la clase padre de la clase que está viendo para ver el widget de navegación dicha clase).

  • Encontrar usos de símbolos (variables, tipos, etc.).
  • Saltar a la declaración/definición.
  • Apertura rápida, que permite buscar cualquier función, clase o archivo en todo el proyecto.
  • Navegador del proyecto, clases y funciones.

El modo de exploración de código (pulse Ctrl al hacer clic sobre un símbolo) hace que sea muy fácil examinar una base de código desconocida.

Extraordinaria comprensión del código

Terminación de código de KDevelop

KDevelop siempre se ha enorgullecido de su implementación del lenguaje C/C++ de última generación. Con la adopción de Clang en 5.0, obtenemos una funcionalidad de análisis de código correcta al 100%, lo que significa que el IDE puede verificar con precisión los fallos de programación ¡incluso sin tener que invocar al compilador! Y no está limitado a C/C++; todos los lenguajes admitidos comparten las siguientes funcionalidades:

  • Resaltado semántico: Es un resaltado que tiene en cuenta la semántica del lenguaje y, por ejemplo, resalta los nombres de las clases de forma diferente a los nombres de las variables, incluso si no se pueden reconocer solo a partir de la sintaxis del código.
  • Resaltado en arco iris: Resalta todas las ocurrencias de la misma variable con un color específico, que cambia para cada variable. Pruébelo. Le encantará en cuanto se acostumbre. Es opcional.
  • Terminación de código semántica y sensible al contexto: KDevelop posee una heurística sofisticada, diseñada para presentarle las sugerencias más probables en la posición actual del cursor. Para Python, PHP y JS, dichas terminaciones se generan a partir de la representación del código en caché de KDevelop, por lo que están disponibles instantáneamente (sin demora apreciable).

Caché en disco persistente para la base de datos del código. Según el grado de complejidad de su proyecto, el análisis puede tardar un poco al principio. Pero después de esa primera vez, todo se almacena en caché en el disco y se carga en unos segundos durante cada inicio posterior del IDE.

Personalizable

KDevelop con un tema oscuro

Fácil de adaptar a su propio estilo:

  • Libertad para reordenar, activar o desactivar cualquier botón de la barra de menú.
  • Vistas divididas según su gusto.
  • Diseño personalizado de las vistas de herramientas dentro de la ventana principal.
  • Esquema de color totalmente configurable, de forma independiente para la aplicación y el editor.
  • Permite asignar accesos directos a casi todas las acciones del IDE.

Integración de la documentación

Integración de documentación en KDevelop (aquí: QtHelp)

KDevelop proporciona una integración perfecta con una amplia variedad de proveedores de documentación. Los sistemas admitidos son:

  • Archivos de documentación de QtHelp (QCH)
  • Páginas man (las que se pueden ver en la línea de órdenes con man)
  • Páginas de ayuda de CMake

Puede abrir una página de documentación con solo situar el cursor sobre un símbolo y seleccionar a continuación «Mostrar documentación para...».

Y unas cuantas cosas más...

  • Inicio rápido y uso de memoria normalmente pequeño.
  • En general, está diseñado para comportarse como un simple editor de texto en muchos casos. Por ejemplo, puede ejecutar «kdevelop file.cpp» en el terminal para abrir dicho archivo en la sesión actual.
  • Fragmentos de código potentes y completamente programables con campos de plantilla (pulse el Tabulador para alternar entre los campos definidos por el usuario, puede tener campos con contenido programable, etc.); también se pueden configurar para que aparezcan en la lista de terminación de código.
  • Potente herramienta para buscar y sustituir, que también funciona en proyectos completos y admite el uso opcional de expresiones regulares.
  • Integración de pruebas unitarias.
  • Vista de la herramienta de problemas, que se puede filtrar y que muestra todos los problemas (errores de sintaxis y semánticos, mensajes TODO, etc.).
  • Implementación de depurador gráfico (C/C++ y Python; PHP mediante un complemento adicional).
  • Uso de formateadores de código (varios predefinidos para C/C++ y Python, así como scripts de formateadores personalizados).
  • Plantillas de archivos y de proyectos (se pueden descargar e instalar plantillas adicionales).
  • Permite ver casi cualquier tipo de archivo como una pestaña/documento dentro del IDE mediante el uso de KParts (por ejemplo, un PDF).
  • Vista de la herramienta de consola.
  • Uso de scripts externos.
  • Modo de entrada compatible con Vim.