<?xml version="1.0" encoding="UTF-8" ?>

<chapter id="advanced-quanta-3-2">
<chapterinfo>
<title
>Avancerede funktioner</title>
<authorgroup>
<author
><firstname
>Christopher</firstname
> <surname
>Hornbaker</surname
> <affiliation
> <address
><email
>chrishornbaker@earthlink.net</email
></address>
</affiliation>

</author>

&erik.kjaer.pedersen.role; 

</authorgroup>
</chapterinfo>

<title
>Avancerede funktioner</title>

<para
>Dette kapitel giver en oversigt over de avancerede funktioner i &quantaplus;, og hvordan de bruges. </para>

<sect1 id="xml-tools-3-2">
<title
>&XML;-værktøjer</title>

<para
>Udgave 3.2 af &quantaplus; har mange nye XML-værktøjer og funktioner med sig. Værktøjerne er unikke i deres integration med &quantaplus;. Alle værktøjer bruger <application
>Kommander</application
> som grænseflade, med <application
>libxml</application
> og <application
>lixslt</application
> til baggrundsbehandling. Denne kombination giver hurtige, effektive, produktive og komplette værktøjer. </para>

<sect2 id="kde-db-3-2">
<title
>&kde;-dokumentationsværktøj</title>

<para
>&quantaplus; understøtter &kde;'s to hoved-dokumentationsværktøjer: <command
>meinproc</command
> og <command
>checkXML</command
>. </para>

<sect3 id="meinproc-3-2">
<title
><command
>meinproc</command
></title>

<para
>Alle som har arbejdet med dokumentation af &kde; kender til <command
>meinproc</command
>, og hvor fantastisk den er. Nu bliver det yderligere en smule bedre, med en udmærket grafisk grænseflade. Du behøver ikke længere bruge en terminal, klik blot på ikonen som ser ud som en processor, så er du klar! </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Nuværende arbejdsmappe</guilabel
></term>
<listitem>
<para
>Dette program forventer at en fil med navnet <filename
>index.docbook</filename
> findes i en mappe. Hvis <filename
>index.docbook</filename
> findes i denne arbejdsmappe, så lad <guilabel
>Nuværende arbejdsmappe</guilabel
> forblive markeret. Hvis den ikke gør det, så afmarkér <guilabel
>Nuværende arbejdsmappe</guilabel
> og indskriv mappen som du vil behandle i feltet <guilabel
>Anden mappe</guilabel
>. </para>
</listitem>
</varlistentry>
</variablelist>

<note>
<para
>Uddatafiler placeres i samme mappe som kildekodefilerne. Alle &HTML;-filer fjernes hver gang <command
>meinproc</command
> køres. </para>
</note>

</sect3>

<sect3 id="checkxml-3-2">
<title
><command
>checkXML</command
></title>

<para
>Igen, alle som har arbejdet med dokumentation af &kde; kender til dette hjælpsomme program. &quantaplus; tilbyder også her en udmærket lille grafisk grænseflade. </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Nuværende arbejdsmappe</guilabel
></term>
<listitem>
<para
>Hvis den åbne fil er <filename
>index.docbook</filename
>, så  lad <guilabel
>Nuværende arbejdsmappe</guilabel
> forblive markeret. Hvis den ikke er det, så afmarkér <guilabel
>Nuværende arbejdsmappe</guilabel
> og indskriv mappen hvor <filename
>index.docbook</filename
> kan findes. </para>
</listitem>
</varlistentry>
</variablelist>

<note>
<title
>Udskrift</title>
<para
>Hvis der bliver nogen udskrift er din fil ugyldig. Ret de rapporterede fejl og forsøg igen. </para>
</note>
</sect3>
</sect2>

<sect2 id="xmlval-3-2">
<title
>&XML;-validering</title>

<para
>&quantaplus; har et udmærket &XML;-valideringsværktøj, som bruger baggrundsprogrammet <command
>xmllint</command
>. </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Denne fil</guilabel
></term>
<listitem>
<para
>Hvis filen som skal valideres for har fokus øjeblikket  &quantaplus;, så lad helt enkelt <guilabel
>Nuværende fil</guilabel
> være markeret. Hvis den ikke er det, afmarkér <guilabel
>Nuværende fil</guilabel
> og vælg filen som skal valideres i filvælgeren <guilabel
>Anden fil</guilabel
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Kontrol af velformateret</guilabel
></term>
<listitem>
<para
>Hvis du kun vil vide at en fil er velformateret, så markér afkrydsningsboksen  <guilabel
>Kontrollér kun velformateret</guilabel
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Definition &URI;</guilabel
></term>
<listitem>
<para
>Hvis du bruger en &DTD;, og den specificeres i &XML;-filen, vælg &DTD; (intern), standardvalget, ellers vælg &DTD; (ekstern) og find &DTD;'en med filvælgeren for definitionens internet-adresse. Både til validering af &W3C; &XML; schema og RelaxNG kræves ekstern definition via filvælgeren for <guilabel
>Definitionens internet-adresse</guilabel
>. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>

<sect2 id="xsltproc-3-2">
<title
>Behandling af &XSL;</title>

<para
>Ja, &quantaplus; har også et &XSL;-behandlingsværktøj! Det bruger værktøjet <command
>xsltproc</command
> som kommer med <application
>libxml2</application
>. </para>

<variablelist>
<varlistentry>
<term
><guilabel
>Denne fil</guilabel
></term>
<listitem>
<para
>Hvis filen som skal behandles for øjeblikket har fokus i &quantaplus;, lad så helt enkelt <guilabel
>Nuværende fil</guilabel
> være markeret. Hvis den ikke er det, afmarkér <guilabel
>Nuværende fil</guilabel
> og vælg filen som skal behandles i filvælgeren <guilabel
>Anden fil</guilabel
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Stilskabelon</term>
<listitem>
<para
>Vælg &XSL;-filen som du vil skal bruges. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Uddatafilnavn</guilabel
></term>
<listitem>
<para
>Indtast navnet som du ønsker at resultatfilen skal kaldes. Filen skrives normalt i din hjemmemappe. </para>
</listitem>
</varlistentry>
</variablelist>

<note>
<para
>Dette program mangler fleksibilitet. Desværre, vi skal forsøge at gøre det bedre næste gang. </para>
</note>
</sect2>

</sect1>

<!-- <sect1 id="kfilereplace-3-2">
<title
>KFileReplace</title>

<para>
KFileReplace is a terrific new addition to &quantaplus;. It allows one to
quickly replace strings over multiple files in only a few clicks of the
mouse. Imagine you have converted all your GIF images to PNG images
(hasn't everyone done this already?), only the extension has changed, and
you have the &lt;img /> tag scattered throughout 50 XHTML files. Are you
going to do a Find &amp; Replace on every file? Surely not when you can do
them all at the same time! This is only one of the many situations where
you will find KFileReplace a seriously helpful tool. This section will show
you how to use this wonderful feature.
</para>

<sect2 id="using-kfr-3-2">
<title
>Using KFileReplace</title>

<para>
With all these wonderful features KFileReplace has, surely you are
incredibly interested in how to use it! Well, make sure your swim suit
is on tight, because we are about to dive in!
</para>

<sect3 id="start-kfr-3-2">
<title
>Starting KFileReplace</title>

<para>
You will find KFileReplace in two places: &quantaplus;' main toolbar and the
menubar (Plugins -> KFileReplace). It is represented by this icon:
<inlinemediaobject>
<imageobject>
<imagedata fileref="kfr-icon.png" format="PNG"/>
</imageobject>
</inlinemediaobject
>.
By executing it from either location, you will be presented with the New
Search &amp; Replace Project dialog.
</para>

<mediaobject>
<imageobject>
<imagedata fileref="kfr-new-dialog.png" format="PNG"/>
</imageobject>
<caption
><para
>KFileReplace's New Search &amp; Replace Project dialog.</para
></caption>
</mediaobject>

</sect3>

<sect3 id="replace-string-kfr-3-2">
<title
>Replacing Strings in Files Over Multiple Folders</title>


<para>
Your boss just gave word that:

<orderedlist numeration="arabic">
<listitem>
<para
>all image formats will be PNG from now on;</para>
</listitem>
<listitem>
<para
>all current images must be converted to PNG;</para>
</listitem>
<listitem>
<para
>and it all needs to be done in one hour.</para>
</listitem>
</orderedlist>

<quote
>One hour!?!?</quote
> you think to yourself. <quote
>It'll take at
least 45 minutes to convert the images!</quote
> Calm down. Convert
the images, load up your project, and fire up KFileReplace. Filter for
only the file types you want to change. Press the <inlinemediaobject>
<imageobject
><imagedata format="PNG" fileref=""/></imageobject>
</inlinemediaobject
> and for, say GIF images, .gif for the string to
replace and .png for the replacement string.
</para>

</sect3>
</sect2>
</sect1
> -->

<sect1 id="kparts-3-2">
<sect1info>
<title
>Brug af plugin</title>
<authorgroup>
<author
><firstname
>Mathieu</firstname
> <surname
>Kooiman</surname
> <affiliation
> <address
><email
>quanta@map-is.nl</email
></address>
</affiliation>
</author>

&erik.kjaer.pedersen.role; 

</authorgroup>
</sect1info>

<title
>Brug af plugin</title>

<sect2 id="what-is-a-plugin-3-2">
<title
>Hvad er et plugin?</title>

<para
>&quantaplus; kan indlæse plugin, som er delprogrammer (Kparts). Mekanismen med delprogrammer, er yderligere en meget kraftfuld funktion i &kde;. Et delprogram er en relativt lille, genbrugbar beholder for en funktion. Den gør det muligt for &kde;-udviklere at bygge videre på andre programmørers arbejde på en enkel måde. Et eksempel på dette er &quantaplus; selv. Editoren som &quantaplus; bruger er &kate;'s KPart-delprogram. &kate;'s delprogram har allerede en mængde funktioner som &quantaplus; behøver, såsom syntaksfarvelægning. Ved at integrere den i &quantaplus;, blev det muligt for &quantaplus;' udviklere at fokusere på hvad &quantaplus; skulle kunne gøre, i stedet for at håndtere de mange problemer som ville komme ved at udvikle en ny editorkomponent fra begyndelsen. </para>

<para
>Plugin som &quantaplus; indlæser, har måske ikke noget overhovedet at gøre med &quantaplus; selv. Det gør det til et meget kraftfuldt system. Du kan drage nytte af ekstra funktioner, og behøver ikke vente på at nogen integrerer dem i &quantaplus;. Plugin kan indlæses til et antal forskellige grafiske elementer. Mere om dette nedenfor. </para>

</sect2>

<sect2 id="plugin-dialog-3-2">
<title
>Forstå dialogen til at redigere plugin</title>

<para
>For at installere et plugin eller et delprogram, bruges menuen <menuchoice
><guimenu
>Plugin</guimenu
> <guimenuitem
>Redigér</guimenuitem
></menuchoice
>. Det får følgende dialog frem: </para>

<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="plugin-edit.png"/>
</imageobject>
<caption
><para
>Dialogen til at redigere plugin.</para
></caption>
</mediaobject>

<para
>Denne dialog lader dig håndtere alle de definerede plugin, og lader dig tilføje nye. Vi beskriver hvert element i grænsefladen her. <variablelist>
<varlistentry>
<term
><guilabel
>Søgestier</guilabel
></term>
<listitem>
<para
>Her kan du udfylde en søgesti. Når du tilføjer en plugin uden en <guilabel
>Plads</guilabel
>, søger &quantaplus; i denne søgesti for at finde dit plugin. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Tilføj</guilabel
></term>
<listitem>
<para
>Dette viser en dialog som lader dig tilføje et nyt plugin. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Indstil</guilabel
></term>
<listitem>
<para
>Dette lader dig ændre indstillinger for et bestemt plugin. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Fjern</guilabel
></term>
<listitem>
<para
>Fjerner det markerede plugin. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><guilabel
>Opdatér</guilabel
></term>
<listitem>
<para
>Opdaterer dialogens indhold. </para>
</listitem>
</varlistentry>
</variablelist>
</para>
</sect2>
</sect1>
&debugging-quanta; </chapter>
