# Dateivorlagen

## Einführung

Mit dem Plugin Datei-Vorlagen können Sie Dateien erstellen, indem Sie andere Dateien als Vorlage benutzen. Sie können jede Datei als Vorlage benutzen, um eine Kopie mit einer leeren URL zu erzeugen oder eine spezielle Vorlage benutzen, deren Makros Informationen einfügen wie Name und EMail-Adresse, das aktuelle Datum und Umgebungsvariablen und die den Cursor an eine passende Position in der neuen Datei setzen.

Ausserdem werden Vorlagen im Vorlagenordner im Menü Datei Neu von Vorlage angezeigt.

Mit diesem Plugin können Sie auch auf einfache Art und Weise eine neue Vorlage aus einem geöffneten Dokument erstellen.

Der Vorlagen-Ordner ist Teil des &kde;-Dateisystems und besteht mindestens aus KDEDIR/share/applications/kate/plugins/katefiletemplates/templates und KDEHOME/share/applications/kate/plugins/katefiletemplates/templates. Wenn Ihre KDEDIRS-Umgebungsvariable zusätzliche Ordner enthält, werden diese auch nach einem gleichnamigen Unterordner abgesucht. Wenn mehrere Vorlagen mit gleichem Namen gefunden werden, wird die Vorlage im lokalen (KDEHOME) Ordner gewählt.

## Menü-Struktur

Datei Neu von Vorlage Beliebige Datei...

- Zeigt Ihnen den Dialog Datei öffnen, um eine beliebige Datei als Vorlage zu verwenden. Wenn die gewählte Datei die Erweiterung `katetemplate` hat, wird sie nach Vorlageninformationen und Makros durchsucht.

Datei Neu von Vorlage Zuletzt verwendete

- Zeigt eine Liste der zuletzt als Vorlage verwendeten Dateien mit deren URL.

Datei Neu von Vorlage

- Die weiteren Untermenüs enthalten Verknüpfungen zu Vorlagen. Klicken Sie auf einen Menüeintrag, um eine Datei wie im Menütext beschrieben zu erzeugen.

Einstellungen Vorlagen verwalten

- Öffnet einen Dialog mit einer Liste aller Vorlagen in den Vorlagen-Ordnern, um Vorlagen hinzuzufügen, zu bearbeiten oder zu entfernen.

## Eigene Vorlagen erstellen

Mit Einstellungen Vorlagen verwalten öffnen Sie einen Dialog. Klicken Sie hier auf Neu... um den Assistenten für Dateivorlagen zu starten. Wählen Sie eine Datei aus, die in eine Vorlage umgewandelt werden soll und geben Sie Vorlageninformationen ein. Mit diesen Angaben wird eine Vorlagendatei erzeugt.

Alternativ können Sie eine Vorlage manuell erzeugen, indem Sie Vorlageninformationen am Anfang jeder Datei einfügen, Text und Makros schreiben und Cursorpositionsmarken setzen. Speichern Sie die Datei dann mit der Namenserweiterung `katetemplate`.

Das Vorlagenmenü wird automatisch aktualisiert, wenn Sie Ihre Vorlage im Vorlagen-Ordner speichern.

## Vorlagen bearbeiten

Um eine Vorlage zu bearbeiten, wählen Sie Einstellungen Vorlagen verwalten.... Wählen Sie die Vorlage zur Bearbeitung und klicken Sie auf Bearbeiten..., um sie zu öffnen. Schliessen Sie den Dialog, bearbeiten Sie die Vorlage, speichern und schliessen Sie die Datei. Änderungen der Vorlagen werden sofort wirksam, Sie können die Vorlage aufrufen, um Ihre Änderungen nach dem Speichern zu prüfen.

## Das Kate Vorlagenformat

Wenn Sie Dateien mit der Endung `katetemplate` verwenden, wird beim Einlesen der Datei nach Vorlageninformationen, Makros und einer Cursorposition gesucht.

### Vorlageninformationen

Beim Einlesen der Datei werden Zeilen, die mit dem Text `katetemplate:` anfangen, nach Vorlageninformationen in der Form VARIABLENNAME=WERT durchsucht. Der Inhalt der Vorlage beginnt mit der ersten Zeile, die nicht mit `katetemplate:` anfängt. WERT kann beliebige Zeichen ausser dem Gleichheitszeichen (=) enthalten. Gültige Variablennamen sind:

`Vorlage`

- Dies ist der Vorlagenname, der im Menü Datei Neu von Vorlage angezeigt wird.

`Gruppe`

- Die Gruppe bestimmt die Anordnung der Vorlage in einem Untermenü des Menüs Datei Neu von Vorlage.

`Name`

- Dies ist der Dateiname des Dokuments, er wird in der Dateiliste und in der Titelleiste angezeigt. Enthält der Name `%N` und sind mehrere Dokumente mit gleichem Namen vorhanden, wird N für jedes Dokument durch eine um 1 vergrössserte Zahl ersetzt.

`Hervorhebung`

- Das Plugin wird den Hervorhebungsmodus für das neue Dokument auf den Wert dieser Variablen setzen. Als Wert muss der Namen wie in Extras Hervorhebungsmodus eingesetzt werden.

`Beschreibung`

- Eine kurze informative Beschreibung dieser Vorlage, die zur Zeit für den "Was ist das" Text der Menüeinträge benutzt wird, in Zukunft kann es weitere Anwendungen dafür geben.

Autor

- Ein Text mit dem Namen des Autors, zum Beispiel in der Form `Name <email address>`. Zur Zeit wird dies für den "Was ist das" Text der Menüeinträge benutzt, in Zukunft kann es weitere Anwendungen dafür geben.

### Vorlagenmakros

Beim Einlesen des Vorlageninhalts werden Makros in der Form `%STRING` ersetzt. Folgende Makros werden dabei unterstützt:

%time

- Wird in Ihrer Sprache durch die aktuelle Zeit im Format der Ausgabe von `QTime::currentTime().toString()` ersetzt.

%date

- Wird durch das aktuelle Datum im langen Format der Ausgabe von `QDate::currentDate().toString()` ersetzt.

%datetime

- Wird durch das aktuelle Datum und Zeit im Format der Ausgabe von `QDateTime::currentDateTime().toString()` ersetzt.

%year

- Das aktuelle Jahr als Zahl mit 4 Ziffern.

%month

- Der vollständige Name des Monats Ihrer Sprache.

%{date(FORMATSTRING)}

- Wird durch einen Text mit Datum/Zeit ersetzt, wie er von `FORMATSTRING` zurückgegeben wird. Im FORMATSTRING werden folgende Texte ersetzt:

  ### Einträge zum Datumsformat

  h | die Uhrzeit ohne führende Null (0..23 oder 1..12 bei AM/PM Anzeige)
  hh | die Uhrzeit mit führender Null (00..23 oder 01..12 bei AM/PM Anzeige)
  m | die Minuten ohne führende Null (0..59)
  mm | die Minuten mit führender Null (00..59)
  s | die Sekunden ohne führende Null (0..59)
  ss | die Sekunden mit führender Null (00..59)
  z | die Millisekunden ohne führende Null (0..999)
  zzz | die Millisekunden mit führenden Nullen (000..999)
  AP | AM/PM Anzeige. AP wird entweder durch "AM" oder "PM" ersetzt.
  ap | am/pm Anzeige. ap wird entweder durch "am" oder "pm" ersetzt.
  d | der Tag als Zahl ohne führende Null (1-31)
  dd | der Tag als Zahl mit führender Null (01-31)
  ddd | der abgekürzte Wochentag (Mon..Son) in Ihrer Sprache.
  dddd | der lange Name des Wochentags (Montag...Sonntag) in Ihrer Sprache.
  M | der Monat als Zahl ohne führende Null (1-12)
  MM | der Monat als Zahl mit führender Null (01-12)
  MMM | der abgekürzte Name des Monats (Jan...Dez) in Ihrer Sprache.
  MMMM | der lange Name des Monats (Januar...Dezember) in Ihrer Sprache.
  YY | das Jahr als Zahl mit 2 Ziffern (00-99).
  YYYY | das Jahr als Zahl mit 4 Ziffern (1752-8000).

  Mit diesem FORMATSTRING haben Sie viele Möglichkeiten, die Anzeige des Datums mit Trennzeichen zwischen den Einträgen einstellen, zum Beispiel: `h:m:s ap`.

%realname

- Wird durch den vollständigen Namen ersetzt. Zuerst werden die KDE EMail-Einstellungen des Kontrollzentrums, dann die Benutzerinformationen verwendet. Wenn kein vollständiger Name gefunden werden kann, wird der Benutzername eingesetzt.

%username

- Wird durch den Benutzernamen ersetzt.

%email

- Wird durch Ihre EMail-Adresse ersetzt. Zuerst werden die KDE EMail-Einstellungen aus dem Kontrollzentrum verwendet, wenn diese nicht vorhanden sind, wird stattdessen `$USER@$HOST`.

%organisation

- Das ist der Name der Organisation, die Sie in die KDE EMail-Einstellungen des KDE-Kontrollzentrums eingetragen haben. Fehlt diese Angabe, wird ein leerer Text ausgegeben.

%VARIABLE

- Jeder andere Text wird als Umgebungsvariable betrachtet und durch deren Wert ersetzt. Wenn der Wert dieser Variablen nicht gesetzt ist, wird "WARNING < VARIBALE> is not set" ausgegeben.

### Einstellung der Cursorposition

Eine Caretzeichen (^), das nicht direkt nach einem umgekehrten Schrägstrich (\) steht, bestimmt die Cursorposition. Dieses Zeichen wird entfernt und der Cursor dort positioniert. Sind mehrere Caretzeichen ohne führenden umgekehrten Schrägstrich vorhanden, werden alle entfernt und die Position des letzten Caretzeichens bestimmt die Cursorposition.

Sind Caretzeichen direkt nach einem umgekehrten Schrägstrich vorhanden, wird dieser Schrägstrich entfernt.

## Danksagungen

&kate; Plugin Dateivorlagen copyright 2004 Anders Lund anders@alweb.dk.

Copyright der Dokumentation 2004 Anders Lund

Burkhard Lücklueck@hube-lueck.de

&underGPL;