Aller directement au contenu

Fonctionnalités


Langues prises en charge

Prise en charge par KDevelop pour les langages C /C++

The following languages are fully supported, which means they have semantic syntax highlighting, code navigation and completion:

For virtually all non-supported languages, there is still basic syntax highlighting and text-based code completion.

Systèmes de contrôle de version pris en charge

La fonctionnalité « Afficher les annotations » avec Git VCS.

Les systèmes suivants de contrôle de version proposent une intégration avec une interface graphique utilisateur :

  • Git
  • Bazaar
  • Subversion
  • CVS
  • Mercurial (hg) (Module externe optionnel)
  • Perforce (Depuis 5.1)

An especially useful feature is the Annotate border, which shows who last changed a line and when. Showing the diff which introduced this change is just one click away!

Systèmes compilés pris en charge

Boîte de dialogue de KDevelop pour la configuration de CMake

The following build systems are supported, which means that KDevelop can automatically obtain run and build targets as well as include paths from them:

  • CMake
  • QMake
  • Fichiers « Make » personnalisés (Partiellement)
  • Système compilé générique (Aucune détection automatique d'inclusions d'emplacements)

KDevelop knows how to invoke build automation tools such as make and ninja and has dedicated configuration pages for them.

Fonctionnalités de prise en charge des langages

Pour tous les langages pris en charge, KDevelop prend en charge les fonctionnalités suivantes :

Composant graphique de navigation

Navigation widget popup when moving the mouse over items, or when pressing Alt with the text cursor over them. The widget allows navigation, i.e. you can for example navigate to the parent class of the class you are viewing to look at the navigation widget of that parent class.

  • Trouver l'utilisation de symboles (variables, types, etc.)
  • Basculer vers une déclaration / définition
  • Ouvrir rapidement, vous permet de rechercher n'importe quelle fonction, classe ou fichier sur l'ensemble du projet.
  • Navigateur de projet, de classes et de fonctions

The code browser mode (press Ctrl when clicking on an symbol) makes it super easy to browse through an unknown code base.

Compréhension remarquable du code

Complétement de code pour KDevelop

KDevelop always prided itself for its state of the art C/C++ language support. With the Clang adoption in 5.0, we get 100% correct code parsing functionality, which means the IDE can accurately check for coding faults even without having you to invoke the compiler! Not limited to C/C++, all supported languages share below features.

  • Semantic highlighting: Highlighting which takes the semantics of the language into account, and for example highlights class names differently from variable names, even if this cannot be recognized from the syntax of the code alone.
  • Rainbow highlighting: Highlights each occurrence of the same variable in a specific color, changing on a per-variable basis. Try it out, you will love it once you get used to it. Optional.
  • Context-sensitive, semantic code completion: KDevelop has sophisticated heuristics designed to present you with the most likely suggestions at the current cursor position. For Python, PHP and JS, those completions are generated from KDevelop's cached code representation and are thus available instantly -- without noticeable delay.

Persistent disk cache for the code database. Depending on the size of complexity of your project, analysis might take a while at first; but after that first time, everything is cached on disk and loaded in few seconds on each subsequent startup of the IDE.

Personnalisable

KDevelop avec le thème sombre

Facile pour s'adapter à votre propre style !

  • Possibilité de réorganiser, activer ou désactiver n'importe quel bouton de la barre de menus
  • Vues arbitrairement scindées
  • Disposition arbitraire des affichages d'outils dans la fenêtre principale
  • Thème de couleurs librement configurable, de façon séparée entre applications et éditeur.
  • Permettre l'allocation de raccourcis à la plupart des actions de l'environnement de développement intégré (IDE)

Intégration de la documentation

Intégration de la documentation avec KDevelop (ici : QtHelp)

KDevelop provides seamless integration with a variety of documentation providers. The supported systems are:

  • Fichiers de documentation pour QtHelp (QCH)
  • Pages de manuel (Celles que vous pouvez simplement afficher avec la ligne de commande « man »)
  • Pages d'aide de CMake

You can simply open a documentation page by hovering a symbol and then selecting "Show documentation for ..."

Autres morceaux

  • Démarrage rapide et généralement avec une faible empreinte mémoire.
  • Generally designed to behave like a simple text editor in many cases, for example you can just run kdevelop file.cpp from your terminal and it will open that file in the current session.
  • Fully scriptable, powerful code snippets with template fields (press Tab to cycle between user-defined fields, can have fields with scriptable contents, etc); those can also be configured to show up in the code completion list
  • Recherche et remplacement très performants, également sur la totalité de projets, optionnellement avec des expressions régulières
  • Intégration de tests unitaires
  • Filterable Problems toolview, showing all problems (syntax and semantic errors, TODOs, etc)
  • Prise en charge d'un débogage graphique (C / C++, Python, PHP grâce à un module externe additionnel)
  • Code formatter support (several predefined ones for C/C++ and Python, as well as custom formatter scripts)
  • Modèles de fichiers et de projets (Des modèles additionnels peuvent être téléchargés ou installés)
  • Can view almost any file type as a tab / document inside the IDE through KParts (e.g. a PDF)
  • Affichage des outils de console
  • Prise en charge de scripts externes
  • Mode d'entrée compatible avec Vim