<chapter id="katefiletemplates">
<chapterinfo>

<title
>Filmallar</title>

<authorgroup>
<author
><firstname
>Anders</firstname
> <surname
>Lund</surname
> <affiliation
> <address
><email
>anders@alweb.dk</email
></address>
</affiliation>
</author>
</authorgroup
> <date
>Måndag den 16:e februari 2004</date
> <releaseinfo
>0.1</releaseinfo
> <abstract
> <para
></para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kate</keyword>
<keyword
>kdeaddons</keyword>
<keyword
>mall</keyword>
<keyword
>makro</keyword>
</keywordset>
</chapterinfo>

<title
>Inledning</title>

<para
>Insticksprogrammet Filmallar låter dig skapa filer baserade på andra filer. Du kan använda vilken fil som helst som en mall, vilket skapar en kopia av filen med en tom webbadress, eller använda en särskild mallfil som kan innehålla makron för att fylla i information som ditt namn och e-postadress, dagens datum och miljövariabler, och placera markören på en lämplig plats i den nya filen.</para>
<para
>Dessutom visas mallar som finns i mallkatalogerna i menyalternativet <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Från mall...</guimenuitem
></menuchoice
>.</para>
<para
>Insticksprogrammet tillhandahåller också en metod att enkelt skapa en ny mall från ett öppet dokument.</para>
<para
>Mallkatalogerna är en del av &kde;:s filsystem, och består åtminstone av KDEDIR/share/applications/kate/plugins/katefiletemplates/templates och KDEHOME/share/applications/kate/plugins/katefiletemplates/templates. Om miljövariabeln KDEDIRS innehåller ytterligare kataloger, söks de dessutom efter liknande underkataloger. Om mallar med samma namn hittas, väljes mallen i den lokala katalogen (KDEHOME).</para>
<sect1 id="katefiletemplates-menu">
<title
>Menystruktur</title>

<variablelist>
<varlistentry>
<term>
<menuchoice
><guimenu
>Arkiv</guimenu
> <guimenu
>Ny från mall</guimenu
> <guimenuitem
>Vilken fil som helst...</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Visar en dialogruta för att öppna en fil, som låter dig välja vilken fil som helst som mall. Om den valda filen har filändelsen <filename
>katetemplate</filename
> tolkas den för att hitta mallinformation och makron.</para
></listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Arkiv</guimenu
> <guimenu
>Ny från mall</guimenu
> <guimenuitem
>Använd senaste</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Visar en lista med filer som nyligen använts som mallar, representerade av sina webbadresser.</para
></listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Arkiv</guimenu
> <guimenu
>Ny från mall</guimenu
>  </menuchoice>
</term>
<listitem
><para
>Återstoden av undermenyer innehåller länkar till mallar. Klicka på ett menyalternativ för att skapa en fil som beskrivs av menyalternativets text.</para
></listitem>
</varlistentry>

<!-- Settings menu -->

<varlistentry>
<term>
<menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Hantera mallar</guimenuitem
></menuchoice
></term>
<listitem
><para
>Det här visar en dialogruta med en lista över mallar som hittas i mallkatalogerna, tillsammans med alternativ för att lägga till, redigera eller ta bort mallar.</para
></listitem>
</varlistentry>

</variablelist>

</sect1>
<sect1 id="katefiletemplates-create">
<title
>Skapa dina egna mallar</title>
<para
>Använd <menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Hantera mallar</guimenuitem
></menuchoice
> som startar mallhanteringsdialogrutan, för att skapa en ny mall. Klicka på <guibutton
>Ny...</guibutton
> i den för att starta Filmallsguiden. Du blir tillfrågad om en valfri fil att omvandla till en mall samt om mallinformationsinställningar, och en mallfil skapas åt dig.</para>
<para
>Som ett alternativ kan du skapa mallen för hand genom att lägga till mallinformation längst upp i vilken fil som helst, lägga till text, makron och markering av markörposition, och spara den med filändelsen <filename
>katetemplate</filename
>.</para>
<para
>Mallmenyn uppdateras automatiskt om du väljer att lagra din mall i mallkatalogen.</para>
</sect1>

<sect1 id="katefiletemplates-edit">
<title
>Redigera mallar</title>
<para
>Använd <menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Hantera mallar...</guimenuitem
></menuchoice
> för att redigera en mall. Markera mallen du vill arbeta med, och klicka på <guibutton
>Redigera...</guibutton
>, så öppnas mallfilen. Stäng dialogrutan, redigera mallfilen som önskas, spara och stäng den. Ändringar i mallen får omedelbart effekt, och du kan aktivera mallen för att prova dina ändringar efter du har sparat den.</para>
</sect1>

<sect1 id="katefiletemplates-format">
<title
>Kates mallformat</title>
<para
>Om du använder filer med filändelsen <filename
>katetemplate</filename
>, tolkas de för att hitta mallinformation, makron och en markörposition.</para>

<sect2 id="katefiletemplates-template-info">
<title
>Mallinformation</title>
<para
>Medan filen läses in, behåller tolken rader som börjar med ordet <constant
>katetemplate:</constant
> och söker i dem efter mallinformation på formen VARIABELNAMN=VÄRDE. Den första raden som inte börjar med <constant
>katetemplate:</constant
> antas vara början på mallens innehåll. VÄRDE kan innehålla vilket tecken som helst utom likhetstecken (=). Riktiga variabelnamn är: <variablelist>
<varlistentry>
<term
><varname
>Template</varname
></term>
<listitem
><para
>Det här är mallens namn, som visas i menyn <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Från mall</guimenuitem
></menuchoice
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><varname
>Group</varname
></term>
<listitem
><para
>Gruppen placerar mallen i en undermeny till menyn <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Från mall</guimenuitem
></menuchoice
>.</para
></listitem>
</varlistentry>
<varlistentry
><term
><varname
>Name</varname
></term>
<listitem
><para
>Det här är namnet som dokumentet får, och som visas i fillistan och namnlisten. Om namnet innehåller <userinput
>%n</userinput
> ersätts det med ett nummer, som ökas om flera dokument har samma namn.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><varname
>Highlight</varname
></term>
<listitem
><para
>Insticksprogrammet försöker ställa in färgläggningen för det nya dokumentet till den här variabelns värde. Värdet ska vara namnet, som syns under <menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Färgläggningsläge</guimenuitem
></menuchoice
>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
><varname
>Description</varname
></term>
<listitem
><para
>En kort informativ beskrivning av mallen. Den används för närvarande för att visa en <quote
>Vad är det här</quote
>-sträng för menyalternativet, men kan användas för fler syften i framtiden.</para
></listitem>
</varlistentry>
<varlistentry
><term
>Author</term>
<listitem
><para
>En sträng som identifierar upphovsmannen, till exempel på formen <userinput
>Namn &lt;e-postadress&gt;</userinput
>. Den används för närvarande för att visa en <quote
>Vad är det här</quote
>-sträng för menyalternativet, men kan användas för fler syften i framtiden.</para
></listitem>
</varlistentry>
</variablelist>
</para>

</sect2>

<sect2 id="katetemplates-macros">
<title
>Mallmakron</title>

<para
>Medan mallinnehållet tolkas, expanderas makron på formen <userinput
>%STRÄNG</userinput
>. Följande makron stöds: <variablelist>
<varlistentry
><term
>%time</term>
<listitem
><para
>Expanderas till aktuell tid med format enligt landsinställningarna, som returneras av <userinput
>QTime::currentTime().toString()</userinput
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%date</term>
<listitem
><para
>Expanderas till aktuellt datum med långt format, som returneras av <userinput
>QDate::currentDate().toString()</userinput
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%datetime</term>
<listitem
><para
>Expanderas till aktuell tid och datum, formaterat som en sträng enligt landsinställningarna av av <userinput
>QDateTime::currentDateTime().toString()</userinput
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%year</term>
<listitem
><para
>Innevarande år som ett tal med fyra siffror.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%month</term>
<listitem
><para
>Fullständigt namn på innevarande månad, enligt dina landsinställningar.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%{date(FORMATSTRÄNG)}</term>
<listitem
><para
>Det här expanderas till en datum- och tidssträng som definieras av <userinput
>FORMATSTRÄNG</userinput
>. FORMATSTRÄNG är en textsträng, i vilken följande ersättningar kommer att utföras:</para>
<table
><title
>Beteckningar i datumformat</title
><tgroup cols="2"
><tbody>
<row
><entry
><para
>h</para
></entry
><entry
><para
>timman utan inledande nolla (0..23 eller 1..12 om FM/EM visas)</para
></entry
></row>
<row
><entry
>hh<para
></para
></entry
><entry
><para
>timman med inledande nolla (00..23 eller 01..12 om FM/EM visas) </para
></entry
></row>
<row
><entry
><para
>m</para
></entry
><entry
><para
>minuten utan inledande nolla (0..59) </para
></entry
></row>
<row
><entry
><para
>mm</para
></entry
><entry
><para
>minuten med inledande nolla (00..59) </para
></entry
></row>
<row
><entry
><para
>s</para
></entry
><entry
><para
>sekunden utan inledande nolla (0..59)</para
></entry
></row>
<row
><entry
><para
>ss</para
></entry
><entry
><para
>sekunden med inledande nolla (00..59) </para
></entry
></row>
<row
><entry
><para
>z</para
></entry
><entry
><para
>millisekunden utan inledande nollor (0..999) </para
></entry
></row>
<row
><entry
><para
>zzz</para
></entry
><entry
><para
>millisekunden med inledande nollor (000..999) </para
></entry
></row>
<row
><entry
><para
>AP</para
></entry
><entry
><para
>använd FM/EM visning. AP ersätts antingen med "FM" eller "EM". </para
></entry
></row>
<row
><entry
><para
>ap</para
></entry
><entry
><para
>använd fm/em visning. ap ersätts antingen med "fm" eller "em". </para
></entry
></row>

<row
><entry
><para
>d</para
></entry
><entry
><para
>dagen som ett tal utan en inledande nolla (1..31) </para
></entry
></row>
<row
><entry
><para
>dd</para
></entry
><entry
><para
>dagen som ett tal med en inledande nolla (01..31) </para
></entry
></row>
<row
><entry
><para
>ddd</para
></entry
><entry
><para
>det förkortade lokala namnet på dagen (t.ex. 'mån'..'sön').</para
></entry
></row>
<row
><entry
><para
>dddd</para
></entry
><entry
><para
>det långa lokala namnet på dagen (t.ex. 'måndag'..'söndag').</para
></entry
></row>
<row
><entry
><para
>M</para
></entry
><entry
><para
>månaden som ett tal utan en inledande nolla (1..12)</para
></entry
></row>
<row
><entry
><para
>MM</para
></entry
><entry
><para
>månaden som ett tal med en inledande nolla (01..12) </para
></entry
></row>
<row
><entry
><para
>MMM</para
></entry
><entry
><para
>det förkortade lokala månadsnamnet (t.ex. 'jan'..'dec').</para
></entry
></row>
<row
><entry
><para
>MMMM</para
></entry
><entry
><para
>det långa lokala månadsnamnet (t.ex. 'januari'..'december').</para
></entry
></row>
<row
><entry
><para
>YY</para
></entry
><entry
><para
>året som ett tal med två siffror (00..99)</para
></entry
></row>
<row
><entry
><para
>YYYY</para
></entry
><entry
><para
>året som ett tal med fyra siffror (1752..8000)</para
></entry
></row>
</tbody
></tgroup
></table>
<para
>Det här låter dig styra datum som visas mycket detaljerat, genom att använda vanliga avskiljare mellan objekten, till exempel <userinput
>h:m:s ap</userinput
>. </para
></listitem>
</varlistentry>
<varlistentry
><term
>%realname</term>
<listitem
><para
>Expanderas till ditt fullständiga namn, om det kan hittas. Tolken försöker först med KDE:s e-postinställningar från inställningscentralen, därefter information från användarkontot. Om ett fullständigt namn inte kan hittas, fylls användarnamnet i.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%username</term>
<listitem
><para
>Expanderas till ditt användarnamn.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%email</term>
<listitem
><para
>Expanderas till din e-postadress, om den kan hittas. Tolken letar efter den i KDE:s e-postinställningar från inställningscentralen, och om den inte hittas använder den <userinput
>$USER@$HOST</userinput
> istället.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%organisation</term>
<listitem
><para
>Det här är din organisation, om den finns i KDE:s e-postinställningar i inställningscentralen. Om den inte hittas, returneras en tom sträng.</para
></listitem>
</varlistentry>
<!-- LAST ENTRY: %ENV -->
<varlistentry>
<term
>%VARIABEL</term>
<listitem
><para
>Alla andra strängar tolkas som en miljövariabel, och expanderas till variabelns värde. Om ingen variabel med det namnet finns, expanderas den till &quot;WARNING &lt;VARIABEL&gt; is not set&quot;.</para
></listitem>
</varlistentry>
</variablelist>
</para>
</sect2>

<sect2 id="katefiletemplates-cursor">
<title
>Ange markörens position</title>
<para
>Tolken letar efter ett cirkumflextecken (^) som inte föregås av ett bakstreck (\) för att bestämma var markören ska placeras. Om det hittas, tas det bort och markören placeras där det var. Om fler cirkumflextecken som inte föregås av bakstreck hittas, tas alla bort, och positionen för det sista används.</para>
<para
>Om något cirkumflextecken som föregås av ett bakstreck hittas, tas bakstrecket bort.</para>
</sect2>

</sect1>

<sect1 id="katefiletemplates-thanks-and-acknowledgements">
<title
>Tack och erkännanden</title>

<para
>&kate;-insticksprogrammet <quote
>Filmallar</quote
> copyright 2004 Anders Lund <email
>anders@alweb.dk</email
>. </para>

<para
>Dokumentation copyright 2004 Anders Lund </para>

<para
>Översättning Stefan Asserhäll <email
>stefan.asserhall@comhem.se</email
></para
> 
&underGPL; </sect1>
</chapter>

<!-- kate: word-wrap on; -->