docs.kde.org
Plugin Tools
Prev
Next

Appendix E. Plugin Tools

KDevelop contains a large number of little tools that help you to perform certain task. Most of them are realized as plugins. That means, if you do not need a plugin, you can disable it.

That also means, if you are looking for a functionality that should be there and isn't, then maybe it's implemented in a plugin and that plugin is disabled. For example, in the file menu there is a Quick Open feature, but only if it's enabled in the Project - Project Options dialog.

Technically, plugins are based on the KDevPlugin class defined in lib/interfaces/kdevplugin.h. The following is taken from a comment from there.

KDevPlugin is the base class for all KDevelop plugins. A plugin is a component which is loaded into KDevelop shell at startup or by request. A plugin has a scope that can be either:

Core plugins are global plugins which offer some important "core" functionality and thus are not selectable by user in plugin configuration pages.

Global plugins are plugins which require only shell to be loaded and do not operate on KDevProject interface and/or do not use project wide information. For example, the uimode plugin allows a developer to select which user interface they wish to use.

Project plugins require a project to be loaded and are usually loaded/unloaded along with the project. If a plugin operates on project-related information then it is a project plugin. The Automake Manager, for example, only needs to be active when an Automake based project is currently loaded.

As stated above, core plugins cannot be disabled. Global plugins can be enabled/disabled in Settings->Configure KDevelop... under Plugins. Project plugins can be enabled/disabled in Project->Project Options... under Plugins. Active plugins can have many effects on KDevelop. Depending on their function, they may add extra menus, extra menu items, extra tool buttons, etc.

Plugins which are disabled do not clutter your menus and are not loaded into memory.

The following plugin list is generated by a small script (listplugins.sh) written by Volker Paul. All plugins have a .desktop file where information such as name and comments are written. If in the following these comments are not very useful, it is because the plugin authors made them this way.

The plugins are grouped by scope (Core, Global, Project).

Scope: Core

Scope: Global

Scope: Project

So far the generated plugin list.

Table E.1. Project Management Plugins in KDevelop

antprojectANT Project Manager (Java™ applications)
autoprojectAutomake Project Manager
customprojectCustom Project Manager
trollprojectQMake based Project Manager

The above plugins are currently (May 2005) empty. Maybe project management support will be implemented as plugins in the future.

Table E.2. Language Support Plugins in KDevelop

cppsupportSupport for C/C++
fortransupportSupport for Fortran
javasupportSupport for Java
perlsupportSupport for Perl
phpsupportSupport for PHP
pythonsupportSupport for Python

In the following, some of the plugins will be discussed in detail.

Prev
Next
Home


docs.kde.org