# Failimallid

Anders
Lund

    anders@alweb.dk

Esmaspäev, 16. veebruar 2004
0.1

KDE
kate
kdeaddons
mall
makro

# Sissejuhatus

Failimallide plugin lubab olemasolevate failide baasil luua uusi faile. Mallina saab kasutada iga faili: sellest luuakse koopia tühja URL-iga. Samuti võib kasutada spetsiaalset mallifaili, kus on juba olemas teatud makrod, mis annavad ette mõningase info, näiteks sinu nime ja e-posti aadressi, kuupäeva ja keskkonnamuutujad ning isegi kursori asukoha uues failis.

Mallikataloogides asuvaid malle saab näha menüükäsuga Fail Mallist...

Plugin lubab ka hõlpsasti luua uue malli avatud dokumendi põhjal.

Mallikataloogid on osa &kde; failisüsteemist ning neiks on vähemalt KDEDIR/share/applications/kate/plugins/katefiletemplates/templates ja KDEHOME/share/applications/kate/plugins/katefiletemplates/templates. Kui sinu keskkonnamuutujas KDEDIRS on veel katalooge, otsitakse ka neist samasuguseid alamkatalooge. Kui leitakse ühenimelised mallid, valitakse neist kohalikus kataloogis (KDEHOME) leiduv.

## Menüü struktuur

Fail Uus mallist Suvaline fail...

  Avab failiavamise dialoogi, kus võid valida malliks suvalise faili. Kui valitul on laiend `katetemplate`, parsitakse seda malliinfo ja makrode leidmiseks.

Fail Uus mallist Kasuta hiljutist

  Näitab hiljuti mallina kasutatud failide loendit, tuues ära nende URL-id.

Fail Uus mallist

  Alammenüü ülejäänud osa sisaldab viitu mallidele. Klõpsa menüükirjel, kui soovid luua sellele vastavat faili.

Seadistused Mallide haldamine

  Avab dialoogi, kus on ära toodud kõik mallikataloogides leitud mallid, ning kus saab neid lisada, muuta või eemaldada.

## Oma mallide loomine

Uue malli loomiseks käivita mallihaldur menüükäsuga Seadistused Mallide haldamine. Selle avanedes klõpsa nupul Uus..., mis käivitab failimalli nõustaja. Sinu käest päritakse faili, mida malliks muuta, võimaldatakse määrata malli info ja seejärel luuaksegi mall.

Muidugi võib malli ka päris käsitsi luua, lisades malli info mis tahes faili algusse, andes teksti, makrod ja kursori asukoha markeri ning salvestades faili laiendiga `katetemplate`.

Mallimenüü uuendatakse automaatselt, kui salveesta mallikataloogi uue malli.

## Mallide muutmine

Malli muutmiseks vali menüükäsk Seadistused Mallide haldamine... Vali mall, mida soovid muuta, ja klõpsa nupule Muuda... Seejärel avatakse mallifail. Sulge dialoog, muuta faili, salvesta ja sulge. Malli tehtud muudatused rakendatakse otsekohe, soovi korral võid selle kohe pärast salvestamist ja sulgemist uuesti avada, et vaadata, kas kõik sai nii, nagu tahtsid.

## Kate malli vorming

Kui kasutad faile laiendiga `katetemplate`, parsitakse neid malli info, makrode ja kursori asukoha leidmiseks.

### Malli info

Fali lugedes otsib parser ridu, mille alguses seisab `katetemplate:`, sest just neisse peaks olema salvestatud malli info kujul MUUTUJANIMI=VÄÄRTUS. Esimest rida, mille alguses ei seisa `katetemplate:`, peetakse malli sisu alguseks. VÄÄRTUS võib olla mis tahes sümbol, välja arvatud võrdusmärk (=). Kindlasti tuntakse ära järgmised muutujad:

`Template`

  See on malli nimi, mida näidatakse menüüs Fail Mallist.

`Group`

  Grupp asetab malli menüü Fail Mallist alammenüüsse.

`Name`

  Dokumendi nimi, mida näidatakse nii faililoendis kui tiitliribal. Kui nimes leidub `%N`, asendatakse see numbriga, mis samanimeliste dokumentide korral kasvab.

`Highlight`

  Plugin püüab uue dokumendi esiletõstmine määrata selle muutuja väärtusele. Väärtus peab olema nimi, nagu see esineb menüüs Tööriistad Esiletõstmine .

`Description`

  Malli lühike kirjeldus. Praegu on see kasutatav abivõimaluse 'mis see on?' jaoks, kuid tulevikus võib-olla muukski.

Author

  See string määrab autori, näiteks kujul `Nimi <e-posti aadress>`. Praegu on see kasutatav abivõimaluse 'mis see on?' jaoks, kuid tulevikus võib-olla muukski.

### Malli makrod

Malli sisu parsides, avatakse makrod kujul `%STRING`. Toetatud on järgmised makrod:

%time

  Näitab käesolevat aega kohalikul kujul, nagu selle tagastab `QTime::currentTime().toString()`.

%date

  Näitab käesolevat kuupäeva pikal kujul, nagu selle tagastab `QDate::currentDate().toString()`.

%datetime

  Näitab käesolevat kuupäeva ja kellaaega kohalikul kujul, nagu selle tagastab `QDateTime::currentDateTime().toString()`.

%year

  Käesolev aasta neljakohalise numbrina.

%month

  Käesoleva kuu täisnimi kohalikul kujul.

%{date(VORMINDUSSTRING)}

  Näitab kuupäeva/kellaaega kujul, mille määrab ära `VORMINDUSSTRING`. Viimane on tekstistring, mis tunnustab järgmisi asendusi:

  #### Kuupäeva vormindamise olemid

  h | tund ilma alustava nullita (0 - 23 või 1 - 12, kui sees on AM/PM)
  hh | tund alustava nulliga (00 - 23 või 01 - 12, kui sees on AM/PM)
  m | minut ilma alustava nullita (0 - 59)
  mm | minut alustava nulliga (00 - 59)
  s | sekund ilma alustava nullita (0 - 59)
  ss | sekund alustava nulliga (00 - 59)
  z | millisekundid ilma alustavate nullideta (0 - 999)
  zzz | millisekundid alustavate nullidega (000 - 999)
  AP | AM/PM kasutamine. AP asemele tuleb kas "AM" või "PM".
  ap | am/pm kasutamine. ap asemele tuleb kas "am" või "pm".
  d | päev numbrina ilma alustava nullita (1 - 31)
  dd | päev numbrina alustava nulliga (01 - 31)
  ddd | päeva kohalik lühike nimi ('Esm' - 'Püh').
  dddd | päeva kohalik pikk nimi ('Esmaspäev' - 'Pühapäev').
  M | kuu numbrina ilma alustava nullita (1 - 12)
  MM | kuu numbrina alustava nulliga (01 - 12)
  MMM | kuu kohalik lühike nimi ('Jaan' - 'Dets').
  MMMM | kuu kohalik pikk nimi ('Jaanuar' - 'Detsember').
  YY | Aasta kahekohalise numbrina (00 - 99).
  YYYY | Aasta neljakohalise numbrina (1752 - 8000).

  See lubab kuupäeva esitamist väga põhjalikult määrata. Erinevate elementide andmiseks kasuta tavalisi eraldajaid, näiteks `h:m:s ap`.

%realname

  Näitab sinu pärisnime, kui see on saadaval. Parser otsib seda esmalt KDE juhtimiskeskusest e-posti seadistustest, seejärel kasutaja kontoinfost. Kui täielikku nime ei leita, näidatakse sinu kasutajanime.

%username

  Näitab kasutajanime.

%email

  Näitab sinu e-posti aadressi, kui see on saadaval. Parser otsib seda KDE juhtimiskeskusest e-posti seadistustest. Kui seda ei leita, näidatakse siin aadressi kujul `$KASUTAJA@$MASIN`.

%organisation

  Sinu organisatsioon, nagu see esineb KDE juhtimiskeskuses e-posti seadistustes. Kui seda ei leita, tagastatakse tühi string.

%MUUTUJA

  Kõiki muid stringe tõlgendatakse keskkonnamuutujana ja näidatakse antud muutuja väärtust. Kui sellise nimega muutujat ei leita, näidatakse "HOIATUS <MUUTUJA> ei ole määratud".

### Kursori asukoha määramine

Parser otsib katusemärki (^), millele ei eelneks längkriipsu (\), et määrata kindlaks, kuhu kursor seada. Kui see leitakse, eemaldatakse katusemärk ja selle asemele asetatakse kursor. Kui leitakse rohkem selliseid "päästmata" katusemärke, eemaldatakse nad kõik ning kursor asetatakse viimase asukohta.

Kui leitakse "päästetud" katusemärk (millele eelneb längkriips), siis längkriips eemaldatakse.

## Autorid

&kate; plugina failimallid autoriõigus 2004: Anders Lund anders@alweb.dk.

Dokumentatsiooni autoriõigus 2004: Anders Lund

Tõlge eesti keelde: Marek Laane bald@online.ee

&underGPL;