# Filmallar

Anders
Lund

    anders@alweb.dk

Måndag den 16:e februari 2004
0.1

KDE
kate
kdeaddons
mall
makro

# Inledning

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.

Dessutom visas mallar som finns i mallkatalogerna i menyalternativet Arkiv Från mall....

Insticksprogrammet tillhandahåller också en metod att enkelt skapa en ny mall från ett öppet dokument.

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).

## Menystruktur

Arkiv Ny från mall Vilken fil som helst...

  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 `katetemplate` tolkas den för att hitta mallinformation och makron.

Arkiv Ny från mall Använd senaste

  Visar en lista med filer som nyligen använts som mallar, representerade av sina webbadresser.

Arkiv Ny från mall

  Återstoden av undermenyer innehåller länkar till mallar. Klicka på ett menyalternativ för att skapa en fil som beskrivs av menyalternativets text.

Inställningar Hantera mallar

  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.

## Skapa dina egna mallar

Använd Inställningar Hantera mallar som startar mallhanteringsdialogrutan, för att skapa en ny mall. Klicka på Ny... 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.

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 `katetemplate`.

Mallmenyn uppdateras automatiskt om du väljer att lagra din mall i mallkatalogen.

## Redigera mallar

Använd Inställningar Hantera mallar... för att redigera en mall. Markera mallen du vill arbeta med, och klicka på Redigera..., 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.

## Kates mallformat

Om du använder filer med filändelsen `katetemplate`, tolkas de för att hitta mallinformation, makron och en markörposition.

### Mallinformation

Medan filen läses in, behåller tolken rader som börjar med ordet `katetemplate:` och söker i dem efter mallinformation på formen VARIABELNAMN=VÄRDE. Den första raden som inte börjar med `katetemplate:` antas vara början på mallens innehåll. VÄRDE kan innehålla vilket tecken som helst utom likhetstecken (=). Riktiga variabelnamn är:

`Template`

  Det här är mallens namn, som visas i menyn Arkiv Från mall.

`Group`

  Gruppen placerar mallen i en undermeny till menyn Arkiv Från mall.

`Name`

  Det här är namnet som dokumentet får, och som visas i fillistan och namnlisten. Om namnet innehåller `%n` ersätts det med ett nummer, som ökas om flera dokument har samma namn.

`Highlight`

  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 Verktyg Färgläggningsläge.

`Description`

  En kort informativ beskrivning av mallen. Den används för närvarande för att visa en Vad är det här-sträng för menyalternativet, men kan användas för fler syften i framtiden.

Author

  En sträng som identifierar upphovsmannen, till exempel på formen `Namn <e-postadress>`. Den används för närvarande för att visa en Vad är det här-sträng för menyalternativet, men kan användas för fler syften i framtiden.

### Mallmakron

Medan mallinnehållet tolkas, expanderas makron på formen `%STRÄNG`. Följande makron stöds:

%time

  Expanderas till aktuell tid med format enligt landsinställningarna, som returneras av `QTime::currentTime().toString()`.

%date

  Expanderas till aktuellt datum med långt format, som returneras av `QDate::currentDate().toString()`.

%datetime

  Expanderas till aktuell tid och datum, formaterat som en sträng enligt landsinställningarna av av `QDateTime::currentDateTime().toString()`.

%year

  Innevarande år som ett tal med fyra siffror.

%month

  Fullständigt namn på innevarande månad, enligt dina landsinställningar.

%{date(FORMATSTRÄNG)}

  Det här expanderas till en datum- och tidssträng som definieras av `FORMATSTRÄNG`. FORMATSTRÄNG är en textsträng, i vilken följande ersättningar kommer att utföras:

  #### Beteckningar i datumformat

  h | timman utan inledande nolla (0..23 eller 1..12 om FM/EM visas)
  hh | timman med inledande nolla (00..23 eller 01..12 om FM/EM visas)
  m | minuten utan inledande nolla (0..59)
  mm | minuten med inledande nolla (00..59)
  s | sekunden utan inledande nolla (0..59)
  ss | sekunden med inledande nolla (00..59)
  z | millisekunden utan inledande nollor (0..999)
  zzz | millisekunden med inledande nollor (000..999)
  AP | använd FM/EM visning. AP ersätts antingen med "FM" eller "EM".
  ap | använd fm/em visning. ap ersätts antingen med "fm" eller "em".
  d | dagen som ett tal utan en inledande nolla (1..31)
  dd | dagen som ett tal med en inledande nolla (01..31)
  ddd | det förkortade lokala namnet på dagen (t.ex. 'mån'..'sön').
  dddd | det långa lokala namnet på dagen (t.ex. 'måndag'..'söndag').
  M | månaden som ett tal utan en inledande nolla (1..12)
  MM | månaden som ett tal med en inledande nolla (01..12)
  MMM | det förkortade lokala månadsnamnet (t.ex. 'jan'..'dec').
  MMMM | det långa lokala månadsnamnet (t.ex. 'januari'..'december').
  YY | året som ett tal med två siffror (00..99)
  YYYY | året som ett tal med fyra siffror (1752..8000)

  Det här låter dig styra datum som visas mycket detaljerat, genom att använda vanliga avskiljare mellan objekten, till exempel `h:m:s ap`.

%realname

  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.

%username

  Expanderas till ditt användarnamn.

%email

  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 `$USER@$HOST` istället.

%organisation

  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.

%VARIABEL

  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 "WARNING <VARIABEL> is not set".

### Ange markörens position

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.

Om något cirkumflextecken som föregås av ett bakstreck hittas, tas bakstrecket bort.

## Tack och erkännanden

&kate;-insticksprogrammet Filmallar copyright 2004 Anders Lund anders@alweb.dk.

Dokumentation copyright 2004 Anders Lund

Översättning Stefan Asserhäll stefan.asserhall@comhem.se

&underGPL;