# Avancerade funktioner

Christopher
Hornbaker

    chrishornbaker@earthlink.net

Stefan
Asserhäll

    stefan.asserhall@comhem.se

Översättare

# Avancerade funktioner

Det här kapitlet ger en översikt av de avancerade funktionerna i &quantaplus;, och hur de används.

## &XML;-verktyg

Utgåva 3.2 av &quantaplus; för med sig många nya &XML;-verktyg och funktioner. Verktygen är unika i sin integrering med &quantaplus;. Alla verktyg använder Kommander som gränssnitt, med libxml2 och lixslt för bakgrundsbehandling. Denna kombination ger snabba, effektiva, produktiva och kompletta verktyg.

### &kde;-dokumentatiosverktyg

&quantaplus; stödjer &kde;:s två huvudsakliga dokumentationsverktyg: `meinproc` och `checkXML`.

#### `meinproc`

Alla som har arbetat med dokumentation av &kde; känner till `meinproc`, och hur superbt det är. Nu blir det ytterligare ett snäpp bättre, med ett utmärkt grafiskt gränssnitt. Du behöver inte längre använda en terminal, utan klicka bara på ikonen som ser ut som en processor, så är du klar!

Aktuell arbetskatalog

  Det här programmet förväntar att en fil med namnet `index.docbook` finns i en katalog. Om `index.docbook` finns i aktuell arbetskatalog, lämna Aktuell arbetskatalog markerad. Om den inte gör det, avmarkera Aktuell arbetskatalog och skriv in katalogen som du vill behandla i fältet Annan katalog.

Utdatafiler placeras i samma katalog som källkodsfilerna. Alla &HTML;-filer tas bort varje gång `meinproc` körs.

#### `checkXML`

Återigen, alla som har arbetat med dokumentation av &kde; känner till det här hjälpsamma programmet. &quantaplus; erbjuder också här ett utmärkt litet grafiskt gränssnitt till det.

Aktuell arbetskatalog

  Om den aktuella öppna filen är `index.docbook`, lämna bara Aktuell arbetskatalog markerad. Om den inte är det, avmarkera Aktuell arbetskatalog och skriv in katalogen där `index.docbook` kan hittas.

##### Utmatning

Om det blir någon utmatning är filen ogiltig. Korrigera rapporterade fel och försök igen.

### &XML;-validering

&quantaplus; har ett utmärkt &XML;-valideringsverktyg, som använder bakgrundsprogrammet `xmllint`.

Aktuell fil

  Om filen som ska valideras för närvarande har fokus i &quantaplus;, lämna helt enkelt Aktuell fil markerad. Om den inte är det, avmarkera Aktuell fil och välj filen som ska valideras i filväljaren Annan fil.

Kontrollera att välformat

  Om du bara vill veta att en fil är välformad, markera kryssrutan Kontrollera bara att välformat.

Definitionens webbadress

  Om du använder en &DTD;, och den specificeras i &XML;-filen, välj &DTD; (intern), standardvalet, eller välja annars &DTD; (extern) och hitta &DTD;:n med filväljaren för definitionens webbadress. Både för validering av &W3C; &XML; schema och RelaxNG krävs extern definition via filväljaren för definitionens webbadress.

### Behandling av &XSL;

Ja, &quantaplus; har också ett &XSL;-behandlingsverktyg! Det använder verktyget `xsltproc` som tillhandahålls med libxml2.

Aktuell fil

  Om filen som ska behandlas för närvarande har fokus i &quantaplus;, lämna helt enkelt Aktuell fil markerad. Om den inte är det, avmarkera Aktuell fil och välj filen som ska behandlas i filväljaren Annan fil.

Stilmall

  Välj &XSL;-filen som du vill ska användas.

Utdatafilnamn

  Skriv in namnet som du vill att resultatfilen ska kallas. Filen skrivs normalt i din hemkatalog.

Det här programmet saknar flexibilitet. Ursäkta, vi ska bättra oss nästa gång.

## Använda insticksprogram

Mathieu
Kooiman

    quanta@map-is.nl

Stefan
Asserhäll

    stefan.asserhall@comhem.se

Översättare

## Använda insticksprogram

### Vad är ett insticksprogram?

&quantaplus; kan ladda insticksprogram, som är delprogram (Kparts). Mekanismen med delprogram, är ytterligare en mycket kraftfull funktion i &kde;. Ett delprogram är en relativt liten, återanvändbar behållare för en funktion. Den gör det möjligt för &kde;-utvecklare att enkelt bygga vidare på andra programmerares arbete. Ett exempel på detta är &quantaplus; själv. Editorn som &quantaplus; använder är &kate;s delprogram. &kate;s delprogram har redan en mängd funktioner som &quantaplus; behöver, som syntaxfärgläggning. Genom att integrera det i &quantaplus;, blev det möjligt för &quantaplus; utvecklare att fokusera på vad &quantaplus; ska kunna göra, istället för att hantera de många problem som skulle orsakats av att utveckla en ny editorkomponent från början.

Insticksprogrammen som &quantaplus; laddar, kanske inte har något alls att göra med &quantaplus; själv. Det gör det till ett mycket kraftfullt system. Du kan dra nytta av extra funktioner, och behöver inte vänta på att någon integrerar dem i &quantaplus;. Insticksprogrammen kan laddas till ett antal olika grafiska element. Mer om detta nedan.

### Förstå dialogrutan för att redigera insticksprogram

För att installera ett insticksprogram eller ett delprogram, används menyn Insticksprogram Redigera. Då visas följande dialogruta:

Dialogrutan för att redigera insticksprogram.

Den här dialogrutan låter dig hantera alla definierade insticksprogram, och låter dig lägga till nya. Vi beskriver varje element i gränssnittet här.

Sökvägar

  Här kan du fylla i en sökväg. När du lägger till ett instickprogram utan en Plats, söker &quantaplus; i denna sökväg för att hitta insticksprogrammet.

Lägg till

  Det här visar en dialogruta som låter dig lägga till ett nytt insticksprogram.

Anpassa

  Det här låter dig ändra inställningar för ett visst insticksprogram.

Ta bort

  Tar bort det aktuella markerade insticksprogrammet.

Uppdatera

  Uppdaterar dialogrutans innehåll.

Läs för att lära dig mer om insticksprogram.

## Utveckling i grupp

Ofta har ett projekt mer än en person som arbetar med det, och det finns något sorts hierarkiskt förhållande mellan dem. &quantaplus; stöder begreppet gruppmedlem, och de kan ställas in i dialogrutan &Shift;F7 Projekt Projektegenskaper.

Redigeringsdialogrutan Gruppmedlemmar

Posterna Namn och E-post är självförklarande. Smeknamn är en användares smeknamn och fungerar som en unik identifierare.

Roll anger medlemmens roll i projektet och kan vara en av följande:

- Gruppledare

- Delprojektledare

- Aktivitetsledare

- Enkel medlem

Uppgift är en beskrivning av uppgiften som är tilldelad till medlemmen.

Delprojekt: Du kan välja en lista med delprojekt. Delprojekt kan anpassas och skapas genom att klicka på knappen Redigera delprojekt. Varje delprojekt har ett namn som är synligt för användaren och en plats. Den senare anger en relativ sökväg till en katalog under projektträdet. Det betyder att ett delprojekt är en katalog under huvudprojektet. Huvudprojektet kan till exempel finnas på företagets webbplats, medan ett delprojekt kan vara webbplatsen för intranätet, placerat i underkatalogen `intranät` i projektet.

En medlem kan ha mer än en roll i projektet, som både gruppledare och delprojektledare.

En användare bör välja vem i listan med gruppmedlemmar som han själv är. Det är möjligt genom att markera en gruppmedlem i listan och trycka på knappen Ange som dig själv. Medlemmen som för närvarande är markerad (din identitet) visas med fetstil efter texten Du är:.

Smeknamn och att ställa in dig själv är viktigt rörande meddelanden och noteringar. Se för att lära dig mer om noteringar.

Förutom att hålla reda på gruppen, finns det ytterligare en fördel med att ange gruppmedlemmar: Du kan skapa en händelse som informerar gruppledarna när en viss åtgärd utförs. Se om hur det görs.

## Händelseåtgärder

Händelseåtgärder är åtgärder som utförs när en viss händelse inträffar i projektet. Ett exempel kan vara att logga när projektet öppnas och stängs, så att det senare går att granska hur mycket någon arbetade med det, eller skicka e-post när en fil sparas, eller lägga till en ny fil i CVS med hjälp av ett skript när filen läggs till i projektet, och listan kunde fortsätta.

På sidan Händelseinställning i dialogrutan &Shift;F7 Projekt Projektegenskaper kan du skapa, redigera och ta bort händelseåtgärder.

Händelseditorns dialogruta

Posterna i dialogrutan är:

Händelse

  åtgärden utförs när händelsen som väljes i listan inträffar. Händelsenamnen är självförklarande.

Åtgärd

  den utförda åtgärdens typ. Möjliga alternativ är

  Åtgärd utan skript

    en åtgärd som inte är en användardefinierad skriptåtgärd. Se för användaråtgärder.

    Åtgärdsnamn anger åtgärden som ska utföras när händelsen inträffar.

  Skicka e-post

    e-post skickas till mottagaren som väljes i listan Mottagare när åtgärden utförs. Mottagaren kan vara en grupp eller delprojektledare. Se för att definiera sådana ledare.

  Logga händelse

    händelserna loggas i en fil. Åtgärdens argument är:

    Loggfil

      filnamnet med fullständig sökväg

    Information

      Hur mycket information ska loggen innehålla

    Beteende

      Om befintlig loggfil ska skrivas över eller om den nya loggade händelsen ska läggas till sist i den.

  Skriptåtgärd

    en användardefinierad skriptåtgärd. Se för användaråtgärder.

    Åtgärdsnamn anger åtgärden som ska utföras när händelsen inträffar.

Övriga poster beror på typ av åtgärd som beskrivna.

## Noteringar

Noteringar är speciella kommentarer i dokumenten. De skiljer sig från vanliga kommentarer i följande avseenden:

- informationen samlas in av Quanta och visas i verktygsvyn Noteringar.

- informationen kan adresseras till en gruppmedlem

Att skriva in noteringar är enkelt. Du kan antingen använda alternativet Notering i editorns sammanhangsberoende meny, eller skriva in nyckelordet @annotation i ett kommentarområde följt av noteringens text.

### Noteringsexempel i XML

    <!-- @annotation Det är möjligt att den här koden är felaktig. -->

    <!-- @annotation
     Flerraders
     notering.
    -->

### Noteringsexempel i PHP

    /* @annotation
    Använd PHP-kommentarer vid noteringar i ett PHP-omåde
    */

Noteringar kan adresseras till en särskild medlem i gruppen. Syntaxen i detta fall är @annotation(smeknamn) eller @annotation(roll), där smeknamn är gruppmedlemmens smeknamn, medan roll är en projektroll från följande lista:

- gruppledare

- aktivitetsledare

- delprojektledare

Aktivitets- och delprojektledare ska följas av motsvarande aktivitets- eller delprojektnamn, som visas i exemplen nedan.

### Gör en anteckning till en gruppmedlem med smeknamnet eric

    <-- @annotation(eric) Eric, ta en titt på det här. Andras -->

### Informera gruppledaren

    <-- @annotation(gruppledare) Det här är mycket viktigt för gruppen -->

### Informera PHP-delprojektledaren

    // @annotation(delprojektledare:PHP) Vad tror du om det?

Smeknamn och rollnamn är inte skiftlägeskänsliga, men mellanslag omkring parenteser och : gör noteringen ogiltig.

Mer om gruppmedlemmar, roller och smeknamn finns under .

Noteringarna som finns i projektet kan inspekteras i vyn Noteringar. Den består av trädflikar:

Aktuell fil

  Noteringarna som finns i aktuell fil.

För dig

  Noteringar i projektet adresserade till dig. Posterna grupperas per fil.

Alla filer

  Noteringarna som finns i alla projektfiler, grupperade enligt fil.

Noteringarna söks igenom efter externa ändringar vid laddning av projekt och filer. På så sätt känns till och med en notering som någon lägger till utanför &quantaplus; igen. Eftersom sökningen kan ta en viss tid, kan informationsdialogrutan om nya noteringar adresserade till dig dyka upp några sekunder efter projektet laddats.
&debugging-quanta;