# Utöka &quanta;

Det här kapitlet beskriver hur &quanta; kan anpassas till just dina behov, och hur du kan hjälpa till att göra &quanta; bättre.

## Skapa egna dokument för &quanta;

Troligen är de mest anmärkningsvärda tilläggen till &quanta; för den vanliga användaren, tillägg av dokumentation för de tagg- eller skriptspråk som är mest omtyckta. Med detta syfte, förklarar det här kapitlet hur jag skapar PHP-dokumentationsträdet för min egen användning.

Innan du börjar skapa din egen dokumentation, vill du kanske titta på &quanta;s arkiv för att se om någon redan har gjort den här uppsättningen.

Det finns två delar i processen. Först måste du skaffa befintlig dokumentation för taggspråket, skriptspråket eller något annat språk som du är ute efter. Därefter måste du skapa docrc-filen. Det första får du klara själv, det andra är vad vi täcker här.

Den allmänna formen för docrc-filen är följande:

    #KDE konfigurationsfil
    [Tree]
    Doc dir=<sökväg, relativt denna filen, till dokumentationens HTML-filer> t.ex. php42/
    #toppnivåelement
    Top Element=<Din beskrivning av de här dokumenten
    > t.ex. PHP 4.2 dokumentation

    Section 1=Section1.html
    Section 2=#Sec2.1,#Sec2.2,#Sec2.3
    Sec2.1=Sec2.1.html
    Sec2.2=Sec2.2.html
    Sec2.3=Sec2.3.html
    ...

    [Context]
    ContextList=func1,func2,tag1,tag2,tag3
    func1=func1.html
    func2=func2.html
    tag1=tag1.html
    tag2=tag2.html
    tag3=tag3.html

Filen docrc är uppdelad i två avdelningar: Tree (träd) och Context (Sammanhang).

Avdelningen Tree definierar presentationsaspekter för dokumentet under dokumentationsfliken. Du ser till exempel att i PHP-dokumentationen, har du något som liknar det här:

Med referens till ovanstående, ser min PHP docrc ut så här:

    #KDE konfigurationsfil

    [Tree]

    Doc dir=php42/

    #toppnivåelement
    Top Element=PHP 4.2 dokumentation

    PHP 4.2 dokumentation=Innehållsförteckning,#Komma igång,#Språkreferens

    Innehållsförteckning=index.html

    Komma igång=Inledning, ...
    Inledning=introduction.html
    ...

    Språkreferens=Grundläggande syntax, ...
    Grundläggande syntax=language.basic-syntax.html
    ...

Observera # framför Komma igång och Språkreferens. Det anger att de är delinnehåll i trädet och har eget innehåll. Jag tror inte det finns en angiven gräns för djupet här (utom det som dikteras av sunt förnuft) - använd din egen bedömning.

För innehållsförteckningen, ser du att den direkt refererar till en fil (och som en konsekvens, visas den längst ner i trädvyn, kataloger kommer först).

Mellanslag påverkar ingenting negativt, men se upp med tecknen & och <. Dessa ska troligen ersättas med &amp; och &lt; i alla &quanta;s XML-baserade resursfiler.

Avdelningen Context är den del av docrc-filen som används för att möjliggöra sammanhangsberoende hjälp. Om du till exempel skriver ett PHP-skript, och vill se dokumentationen för funktionen mysql_fetch_array. Du markerar helt enkelt funktionen och trycker &Ctrl;H för sammanhangsberoende hjälp, Svisch! Du ser dokumentationen för mysql_fetch_array. Det finns bara två typer av poster här: ContextList och filsambandsraderna.

ContextList

  Mycket enkel, det här är bara en lista separerad med kommatecken av sammanhangsposterna som du vill ha tillgängliga (för PHP är det dess funktioner).

Filsambandsrader

  De här är på formen Sammanhangspost=HTML-dokumentationssida, t.ex. acos=function.acos.html

En nerbantad version av avdelningen Context från min docrc-fil är följande:

    #Nyckelord för sammanhangsberoende hjälp
    [Context]
    ContextList=abs,acos,acosh,addcslashes,addslashes,...

    abs=function.abs.html
    acos=function.acos.html
    acosh=function.acosh.html
    addcslashes=function.addcslashes.html
    addslashes=function.addslashes.html
    ...

Nu kan du bara spara din docrc-fil. Spara den i `$`HOME`/.kde/share/apps/quanta/doc` eller `$`KDEDIR`/share/apps/quanta/doc` för lokal eller global användning. Skapa sedan en katalog (den som anges i docrc-filen) i samma katalog som docrc-filen finns, och kopiera HTML-dokumentationssidorna dit.

Du måste starta om &quanta;, och då ser du dina egna dokument.

När du väl är säker på att de är bra, och värda att dela, skicka docrc-filen tillsammans med en beskrivning av passande information om vilka dokument du använde till &quanta;s arkiv för användning av &quanta;s gemenskap. Du blir inte rik, men du känner dig nöjd med vetskap om att du bidragit till den bästa webbutvecklingsmiljön som finns.

Robert
Nickel

## Skapa åtgärder i &quanta;

Åtgärder i &quanta; är grunden för nästan alla utökningar som &quanta; har, och kommer att få i framtiden. Samma mekanism som definierar en åtgärd i &quanta; aktiverar automatisk komplettering och taggdialogrutor. Med åtgärder är gränserna för vad du kan göra näst intill obegränsade. Som ett exempel, använder vi html tidy från våra webbsidor.

Låt oss börja: Inställningar Anpassa åtgärder

När du väl har startat åtgärdsdialogrutan ser du det här fönstret. Till vänster är listan med för närvarande kända åtgärder. Du kan markera en av dem och utföra samma saker med en befintlig åtgärd, som vi ska göra med vår åtgärd "html tidy".

Vi ska skapa en ny åtgärd, så låt oss klicka på knappen Ny (nere till vänster) och börja.

Nu visas ett tomt antal alternativ att fylla i:

Text

  Det här är namnet på åtgärden

Verktygstips

  Vet inte säkert var detta visas. Det är valfritt!

Statustext

  Vet inte vad detta är till för eller var det används. Det är valfritt!

Placera åtgärden på (kryssruta)

  Det här aktiverar kombinationsrutan för att välja en verktygsrad där den här åtgärden ska placeras. Om du inte väljer nu, kan du alltid lägga till den senare med Inställningar Anpassa verktygsrader.

Efter att ha fyllt i de här grundläggande sakerna, kan du välja en ikon för åtgärden genom att klicka på ikonknappen till vänster om inmatningsrutan 'Text'.

Nu till själva kärnan. Definitionen av åtgärden.

Om vi höll på att definiera en tagg, kunde vi här använda fliken tagg för att skriva in taggens parametrar.

Alltså:

<tag >

  Det är här du skriver in taggnamnet som det syns i dokumentet, t.ex. <div align=center>.

</tag >

  Det är här du skriver in den avslutande taggen, om det finns någon, eller avmarkera rutan om ingen finns, t.ex. </div>.

Kör dialogen för Redigera tagg om den finns

  Det här kör dialogeditorn om det finns en taggfil definierad för det här objektet. Titta i avsnittet om taggfiler, för mer information om taggfiler.

Och nu ... Tillbaka till det vanliga programmet i tablån. Vi fortsätter med att skapa åtgärden "html tidy".

Klicka på fliken Skript för att visa följande:

inmatningsruta längst upp

  Här skriver du in det körbara programmet som du är ute efter. I vårt fall skulle det vara /usr/local/bin/tidy, eftersom det är där jag har lagt programmet tidy.

Nu fortsätter vi med flikarna Inmatning, Utmatning och Fel.

Fliken Inmatning

Inget (radioknapp)

  Använd ingen inmatning för skriptet. Det kan vara användbart om du anropade ett TCL/TK-skript som visade ett fönster för användaren, och sedan returnerade sitt resultat. Vi väljer något annat för tidy.

Markerad text (radioknapp)

  Precis vad det säger. Det skickar en kopia av aktuell markerad text till standardinmatningen för skriptet i inmatningsrutan ovan. Vi skulle kunna använda det för tidy, men det är inget roligt att behöva markera allt i ett stort dokument.

Aktuellt dokument (radioknapp)

  Skickar innehållet i editorns version av filen till standardinmatningen för skriptet i inmatningsrutan ovan. Det är vad vi använder för tidy.

Klicka nu på fliken Utmatning. Det är här vi bestämmer vart skriptets utmatning ska skickas.

Inget

  Så dumt. Det här skulle vara bra om du startade ett externt program som bara tar emot indata, men inte skriver ut någonting. Det är inte särskilt användbart för oss med tidy.

Infoga på markörens plats

  Precis vad som sägs. Försäkra dig om att du står där du vill att texten ska infogas. Inte bra för tidy.

Ersätt aktuellt dokument

  Fullständig ersättning av filen här. Det skriver inte över filen på disk, men förstör den nuvarande redigeringssessionen. Använd med försiktighet. Vi använder inte detta för tidy.

Skapa nytt dokument

  Mata ut till ett nytt dokument i redigeringsfönstret. Det här är det bästa valet för tidy.

Meddelandefönster

  Utmatning till meddelandefönstret &Ctrl;M . Det är användbart för avlusning och fliken Fel, men inte för mycket annan utmatning. Inte bra för tidy.

För fliken Fel, är alternativen samma som för fliken Utmatning. Oftast använder man meddelandefönstret, för att hjälpa till med avlusning, eller alternativet Inget.