<chapter id="tinkering-under-the-hood">
<!-- Uncomment the <*info
> below and add your name to be -->
<!-- credited for writing this section. -->

<!--
<chapterinfo>
<authorgroup>
<author>
<firstname
>Your First Name here</firstname>
<surname
>Your Surname here </surname>
</author>
</authorgroup>
</chapterinfo>
-->

<title
>Leg med de indre dele af &kde;</title>

<sect1 id="hand-editing-config-files">

<sect1info>
<author
><personname
> <firstname
>Nicolas</firstname
> <surname
>Goutte</surname
> </personname
> <email
>goutte@kde.org</email
> </author>
</sect1info>

<title
>Redigér indstillingsfiler i hånden</title>

<sect2 id="hand-editing-intro">
<title
>Indledning</title>
<para
>Indstillingsfilerne i &kde; er enkle at redigere med en almindelig editor såsom &kate;, eftersom indstillingsfilerne er tekstfiler.</para>

<para
>Et eksempel på en tekstfil:</para>

<programlisting
>[General]
AutoSave=1
LastFile=/var/tmp/test.txt</programlisting>

<para
>Brugerspecifikke indstillingsfiler opbevares i <filename class="directory"
>.kde/share/config</filename
> (erstat <filename
>.kde</filename
> med din indstilling af $<envar
>KDEHOME</envar
>) og de globale er i undermappen <filename class="directory"
>share/config</filename
> i &kde;'s installationssøgesti. (Du kan finde søgestien ved at køre kommandoen <command
>kde-config --prefix</command
>.) Filnavnene slutter typisk med rc (uden indledende punktum), for eksempel <filename
>kopeterc</filename
>.</para>

<warning
><para
>At redigere indstillingsfiler i hånden kan udgøre en risiko for stabiliteten af din installation af &kde;. Programmer tjekker oftest ikke hvad de læser i indstillingsfiler. Det betyder at de kan forstyrres af hvad de får som indstillinger, og kan til og med bryde sammen.</para
></warning>

</sect2>

<sect2 id="hand-editing-backups">
<title
>Sikkerhedskopier</title>

<para
>Den første regel er altså at lave en sikkerhedskopi af filen inden du ændrer den. Det er bedst at opbevare sikkerhedskopien udenfor en undermappe i <filename class="directory"
>.kde</filename
> (eller tilsvarende $<envar
>KDEHOME</envar
> mappe). Sikkerhedskopier er under alle omstændigheder en god idé i tilfælde af en større fejl i &kde; som ville forstyrre vigtige indstillingsfiler (for eksempel dine indstillinger af &kmail;, som findes i filen <filename
>kmailrc</filename
>). En sådant større fejl skulle ikke indtræffe, men det kan ske alligevel.</para>
</sect2>

<sect2 id="hand-editing">
<title
>Redigering</title>

<para
>Hvorfor skulle du ville røre indstillingsfilerne i det hele taget? Ja, først og fremmest behøver du det hvis du vil oprette en kiosktilstand. Måske har en udvikler bedt dig om at tilføje en indgang for at hjælpe til med at løse et problem i programmet. Måske vil du komme ud af fra et problem uden at behøve fjerne hele <filename class="directory"
>.kde</filename
> mappen. Måske vil du gerne lære dig mere om de interne funktioner i &kde;.</para>

<para
>Under alle omstændigheder, hvilken grund du end har, vil du ændre en indstillingsfil i hånden.</para>

<para
>Når du tænker dig at redigere en sådan fil, så sørg for at programmet som bruger den ikke kører. Hvis det er en af de grundlæggende indstillingsfiler, så overvej at redigere filen når &kde; slet ikke kører.</para>

<para
>Klar? Lav når en sikkerhedskopi af filen (det har vi vel allerede talt om?). Starte din favoriteditor (lad os antage at det er &kate;), indlæs filen (Var forsigtig med at indlæse den som UTF-8, som &kate; viser som <quote
>utf8</quote
>).</para>

<para
>Nu har du en fil som ser sådan her ud:</para>

<programlisting
>[Group]
Key1=Value1
Key2=Value2
Key3=Value3</programlisting>

<para
>Du kan nu ændre den (med forsigtighed) og derefter gemme den (Sørg igen for  at det er som <acronym
>UTF-8</acronym
>).</para>

<para
>Nu kan du teste programmet og hvis det ikke længere kører som det skal, så luk programmet og genopret indstillingsfilens sikkerhedskopi.</para>

<itemizedlist>
<title
>Relateret information</title>


<listitem
><para
><xref linkend="kde-for-administrators"/> har mere information om &kde;'s mappestruktur, for at hjælpe dig finde filen du behøver redigere.</para>
</listitem>

</itemizedlist>

</sect2>

</sect1>

<sect1 id="scripting-the-desktop">
<title
>Brug scripter med skrivebordet</title>
<para
>En kort introduktion til DCOP-script. kdcop.</para>
</sect1>

<sect1 id="adding-extra-keys">
<title
>Tilføj til ekstra tastebindinger til &kde;</title>

<para
>Mange moderne tastaturer har ekstra taster som normalt ikke er tildelte til nogen handling.</para>

<para
><quote
>Multimediataster</quote
> genererer ofte et signal, og kan helt enkelt vælges som en genvejstast i et program præcis som at vælge en hvilken som helst anden tast. Visse taster detekteres dog ikke, og at trykke på dem i <guilabel
>Indstil genveje</guilabel
> har ingen effekt.</para>

<para
>For eksempel har visse bærbare maskiner fra IBM ekstra taster omkring venstre- og højrepilene, som ser ud som <guiicon
>side venstre</guiicon
> og <guiicon
>side højre</guiicon
>.</para>

<procedure>
<step
><para
>Brug <command
>xev</command
> til at finde tasternes koder. I dette tilfælde er de 233 og 234. </para
></step>
<step
><para
>Vælg tastsymboler. Der er et helt sæt sådanne som ikke normalt bruges, altså er mange ledige. Du finder listen i <filename
>/usr/X11R6/include/X11/keysymdef.h</filename
> (eller tilsvarende på dit system).</para
></step>
<step
><para
>Opret en fil i din hjemmemappe som hedder <filename
>.Xmodmap</filename
>, og tilføj følgende:</para>
<screen
>keycode 233 = Next_Virtual_Screen
keycode 234 = Prev_Virtual_Screen</screen>
</step>
<step
><para
>Kør kommandoen <userinput
><command
>xmodmap</command
> <filename
>~/.Xmodmap</filename
></userinput
></para
></step>
</procedure>

<para
>Nu skal du kunne køre <command
>xev</command
> igen og se at tasterne nu genererer tastsymbolerne som du tildelte dem. Du kan nu helt enkelt tildele dem til en hvilken somhelsthandling som normalt.</para>

<itemizedlist>
<title
>Relateret information</title>
<listitem
><para
>Manualsiden for <command
>xev</command
>. Du kan kigge på den ved at skrive <userinput
>man:/xev</userinput
> i et &konqueror;-vindue eller ved at skrive <userinput
><command
>man</command
> xev</userinput
> i en terminal.</para
></listitem>
</itemizedlist>

</sect1>

<sect1 id="keys-for-scripts">
<title
>Tilføj tastebindinger for nye handlinger</title>

<para
>De fleste handlinger enten på desktoppen eller i programmer er enkelt tilgængelige at tildele en tastebinding til. Hvis handlingen du vil have en genvejstast for er noget du selv har skrevet, eller på anden måde ikke er tilgængelig, kan du alligevel tildele den en genvejstast.</para>

<para
>For at sammenknytte de to foregående afsnit, vil du måske tildele en tast på tastaturet som ellers er ubrugt til et script eller en DCOP-kommando. Vort eksempel her er at tildele de to taster vi har tilføjet i <xref linkend="adding-extra-keys"/> til at gå til foregående eller næste virtuelle desktop, hvilket man behøver DCOP for at gøre (som beskrevet i <xref linkend="scripting-the-desktop"/>).</para>

<para
>Det kan enkelt opnås med følgende metode:</para>

<procedure>
<step>
<para
>Åbn kontrolcentret og vælg <guilabel
>Khotkeys</guilabel
> under afsnittet <guilabel
>Region og tilgængelighed</guilabel
></para>
</step>
<step>
<para
>Vælg <guibutton
>Ny handling</guibutton
></para>
</step>
<step>
<para
>Navngiv den nye handling, f.eks. <userinput
>Næste virtuelle skærm</userinput
></para>
</step>
<step>
<para
>Vælg <guilabel
>Tastaturgenvej -> Kommando/URL (enkel)</guilabel
> som <guilabel
>Handlingstype:</guilabel
></para>
</step>
<step>
<para
>Under fanebladet <guilabel
>Tastaturgenvej</guilabel
>, klik på knappen som du vil bruge til at udføre kommandoen. I dette eksempel, skal du trykke på den med ikonen <guiicon
>Næste side</guiicon
>, Så vises <keysym
>Next_Virtual_Screen</keysym
> som tastebilled.</para>
</step>
<step>
<para
>Under fanebladet <guilabel
>Indstillinger for kommando/URL</guilabel
>, skrives kommandoen at køre i feltet: <userinput
><command
>dcop kwin default nextDesktop</command
></userinput
></para>
</step>
</procedure>

<para
>Gentag ovenstående med tasten <keysym
>Prev_Virtual_Screen</keysym
> og <userinput
><command
>dcop kwin default previousDesktop</command
></userinput
>.</para>

<para
>Ved nu at trykke på <keysym
>Prev_Virtual_Screen</keysym
> eller <keysym
>Next_Virtual_Screen</keysym
> skifter du til foregående eller næste virtuelle desktop.</para>

<para
>Åbenbart kan du tildele en hvilken som helst ledig tast til en handling.</para>

<itemizedlist>
<title
>Relateret information</title
> 
<listitem
><para
>Se dokumentationen for <application
>Khotkeys</application
> ved at slå op den i hjælpecentret, eller skrive <userinput
>help:/khotkeys</userinput
> i et &konqueror;-vindue.</para
></listitem
> 
<listitem
><para
><xref linkend="adding-extra-keys"/></para
></listitem>
<listitem
><para
><xref linkend="scripting-the-desktop"/></para
></listitem>
</itemizedlist>

</sect1>

<sect1 id="kdebugdialog">
<sect1info>
<authorgroup>
<author
><personname
> <firstname
>Adriaan</firstname
> <surname
>de Groot</surname
> </personname
> <email
>groot@kde.org</email
> </author>
</authorgroup>
</sect1info>

<title
>&kdebugdialog;: Styr &kde;:s fejlsøgningsudskrift</title>

<sect2 id="kdebugdialog-basic-usage">
<title
>Basal brug</title>

<para
>&kdebugdialog; ses ikke normalt i K-menuen. Du skal starte det fra en skal eller fra Kør program med kommandoen <userinput
><command
>kdebugdialog</command
></userinput
>. &kdebugdialog; viser et vindue med en lang liste over fejlsøgningsområder. Hvert område har et afkrydsningsfelt som du kan markere eller afmarkere for at aktivere eller deaktivere fejlsøgningsudskrift for den del af &kde;.</para>

<para
>Listen med fejlsøgningsområder er sorteret i nummerrækkefølge, ikke alfabetisk, så kio (127) kommer før artskde (400). Numrene går op til omkring 200000, men der er egentlig kun 400 områder. Du behøver dog ikke gennemsøge hele listen for at finde området du vil have. Der er et linjeeditorfelt længst oppe i dialogen hvor du kan indtaste en del af navnet på området du vil have. Listen med indgange som vises filtreres så  kun de fejlsøgningsområder som indeholder teksten du har skrevet vises. Ved f.eks. at indtaste <userinput
>k</userinput
> filtreres ikke særligt meget, men skrives <userinput
>kont</userinput
>  vises kun fejlsøgningsområder for &kontact;. Som en endnu hurtigere måde at aktivere eller deaktivere fejlsøgningsuddata, er der også knapperne <guibutton
>Markér alle</guibutton
> og <guibutton
>Afmarkér alle</guibutton
>, som gør at &kde; laver enorme mængder af fejlsøgningsuddata, eller meget lidt.</para>
</sect2>

<sect2 id="kdebugdialog-fullmode">
<title
>Kdebugdialog i fuldstændigt tilstand</title>

<!-- this text partly taken from the kdebugdialog handbook -->

<para
>I fuldstændig tilstand, som du får når du starter kdebugdialog som <userinput
><command
>kdebugdialog</command
> <option
>--fullmode</option
></userinput
>, er samme liste med fejlsøgningsområder tilgængelige som i enkel tilstand, men du kan kun vælge en af gangen i et dropned-felt. Nu kan du uafhængigt indstille uddata for forskellige typer af meddelelser: Information, Advarsel, Fejl og Alvorlig fejl. For hver af disse typer kan du vælge hvor meddelelsen sendes. Valgene er:</para>

<para
>Fil,i hvilket tilfælde kan indtaste et filnavn. Filen skrives i mappen $<envar
>HOME</envar
>.</para>

<para
>Meddelelsesfelt. Hver fejlsøgningsmeddelelse vises i en informationsdialog, som du skal klikke <guibutton
>O.k.</guibutton
> i for at fortsætte med programmet.</para>

<para
>Skal, standardindgang. Meddelelser skrives ud med standardfejludskriften, og ses enten i skalvinduet hvor programmet startedes eller i <filename
>.xsession-errors</filename
>.</para>

<para
>Syslog. Dette sender hver fejlsøgningsmeddelelse til systemets syslog-funktion, som kan udføre sin egen behandling af meddelelsen.</para>

<para
>Ingen. Det undertrykker udskrift af denne slags meddelelse.</para>

<para
>For meddelelser som genereres af alvorlige fejl er det generelt en dårlig idé at vælge Ingen eller Syslog, eftersom du i begge tilfælde ikke ser meddelelsen og programmet som støder på den alvorlige fejl forsvinder uden at efterlade nogen ledetråd om hvorfor det forsvandt. Hvis programmet forsvinder eller ikke ved en alvorlig fejl, kan styres med afkrydsningsfeltet <guilabel
>Afbryd ved alvorlig fejl</guilabel
>, som normalt er markeret, men du kan alligevel  forvente dig at et program bryder sammen (på en uskøn måde) hvis det støder på en alvorlig fejl.</para>

<!-- Add links to "further reading" here -->
<itemizedlist>
<title
>Relateret information</title>
<listitem
><para
></para>
</listitem>
</itemizedlist>



</sect2>
</sect1>
</chapter>

<!-- Keep this comment at the end of the file
Local variables:
mode: xml
sgml-omittag:nil
sgml-shorttag:nil
sgml-namecase-general:nil
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:true
sgml-parent-document:("index.docbook" "book" "chapter")
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
