Appendiks E. Pluginværktøjer

KDevelop indeholder et stort antal små værktøjer, som hjælper dig med at udføre visse opgaver. De fleste fungerer som plugin. Det betyder at hvis du ikke behøver et plugin kan du helt enkelt deaktivere det.

Det betyder også at hvis du leder efter funktioner som skal findes, men ikke gør det, så er de måske implementerede i et plugin og dette plugin er deaktiveret. Der er for eksempel en funktion for hurtigåbning i menuen Fil, men kun hvis den er aktiveret i dialogen Projekt - Projektindstillinger.

Teknisk er plugin baserede på klassen KDevPlugin definered i lib/interfaces/kdevplugin.h. Det følgende kommer fra en kommentar der.

KDevPlugin er basisklassen for alle plugin i KDevelop. Et plugin er en komponent som indlæses i KDevelop-skallen ved start eller efter forespørgsel. Et plugin har en omfattelse som enten kan være:

Kerneplugin er globale plugin som tilbyder nogle vigtige funktioner for "kernen", og derfor ikke kan vælges af brugeren på indstillingssiderne for plugin.

Globale plugin er dem som kun kræver at skallen er indlæst og ikke benytter sig af grænsefladen KDevProject og/eller bruger information der berører hele projektet. For eksempel tillader pluginnet grafisk grænsefladetilstand udviklere at vælge hvilke brugergrænseflade de vil bruge.

Projektplugin kræver at et projekt er indlæst, og indlæses eller fjernes sammen med projektet. Hvis et plugin benytter sig af projektrelateret information er det et projektplugin. Håndtering af Automake behøver for eksempel kun være aktivt når et projekt baseret på Automake for øjeblikket er indlæst.

Som nævnt ovenfor kan kerneplugin ikke deaktiveres. Globale plugin kan aktiveres eller deaktiveres med Opsætning->Indstil KDevelop... under plugin. Projektplugin kan aktiveres eller deaktiveres med Projekt->Projektindstillinger... under plugin. Aktive plugin kan give mange effekter i KDevelop. Afhængig af deres funktion kan de tilføje ekstra menuer, ekstra menupunkter, ekstra knapper i værktøjslinjen, osv.

Plugin som er deaktiverede roder ikke menuerne til og indlæses ikke i hukommelsen.

Følgende liste over plugin genereres af et lille script (listplugins.sh) skrevet af Volker Paul. Alle plugin har en .desktop-fil hvor information såsom navn og kommentarer skrives. Hvis kommentarerne i det følgende ikke er særligt nyttige, skyldes det på at pluginnets forfattere lavede dem på den måde.

Pluginnerne er grupperede efter omfattelse (Kerne, Global, Projekt).

Omfattelse: Kerne

Omfattelse: Global

Omfattelse: Projekt

Indtil videre den genererede liste over plugin.

Tabel E.1. Plugin for projekthåndtering i KDevelop

antprojectANT-projekthåndtering (Java™-programmer)
autoprojektAutomake projekthåndtering
customprojectEgen projekthåndtering
trollprojectQmake-baseret projekthåndtering

Ovenstående plugin er for øjeblikket (maj 2005) tomme. Måske vil projekthåndteringsunderstøttelse blive implementeret som plugin i fremtiden.

Tabel E.2. Plugin for sprogunderstøttelse i KDevelop

cppsupportStøtte for C/C++
fortransupportStøtte for Fortran
javasupportStøtte for Java
perlsupportStøtte for Perl
phpsupportStøtte for PHP
pythonsupportStøtte for Python

Visse plugin beskrives i detalje i det følgende.