diff --git a/latte/de/filters.texy b/latte/de/filters.texy index 42f6d312da..6cb87ff7c2 100644 --- a/latte/de/filters.texy +++ b/latte/de/filters.texy @@ -1,101 +1,101 @@ -Latte Filtern -************* +Latte Filter +************ .[perex] -Filter sind Funktionen, die die Daten in der gewünschten Form verändern oder formatieren. Dies ist eine Zusammenfassung der eingebauten Filter, die verfügbar sind. +In Templates können wir Funktionen verwenden, die bei der Anpassung oder Umformatierung von Daten in die endgültige Form helfen. Wir nennen sie *Filter*. .[table-latte-filters] -|## String / Array Transformation -| `batch` | [Auflistung linearer Daten in einer Tabelle |#batch] -| `breakLines` | [fügt HTML-Zeilenumbrüche vor allen Zeilenumbrüchen ein |#breakLines] -| `bytes` | [formatiert Größe in Bytes |#bytes] -| `clamp` | [klemmt Wert auf den Bereich |#clamp] -| `dataStream` | [Konvertierung des Daten-URI-Protokolls |#datastream] -| `date` | [formatiert das Datum und die Uhrzeit |#date] -| `explode` | [trennt eine Zeichenkette durch das angegebene Trennzeichen auf |#explode] -| `first` | [gibt das erste Element eines Arrays oder ein Zeichen einer Zeichenkette zurück |#first] -| `group` | [gruppiert Daten nach verschiedenen Kriterien |#group] -| `implode` | [fügt ein Array zu einer Zeichenkette zusammen |#implode] -| `indent` | [rückt den Text von links mit einer Anzahl von Tabulatorenein |#indent] -| `join` | [verbindet ein Array mit einer Zeichenkette|#implode] -| `last` | [gibt das letzte Element eines Arrays oder ein Zeichen einer Zeichenkette zurück |#last] -| `length` | [gibt die Länge einer Zeichenkette oder eines Arrays zurück |#length] -| `localDate` | [formatiert das Datum und die Uhrzeit entsprechend dem Gebietsschema |#localDate] -| `number` | [formatiert Zahlen |#number] -| `padLeft` | [vervollständigt die Zeichenkette auf die angegebene Länge von links |#padLeft] -| `padRight` | [vervollständigt die Zeichenkette auf die angegebene Länge von rechts |#padRight] -| `random` | [gibt zufällige Elemente eines Arrays oder Zeichen einer Zeichenkette zurück |#random] -| `repeat` | [Wiederholt die Zeichenkette |#repeat] -| `replace` | [ersetzt alle Vorkommen der gesuchten Zeichenkette durch die Ersetzung |#replace] -| `replaceRE` | [ersetzt alle Vorkommen entsprechend dem regulären Ausdruck |#replaceRE] -| `reverse` | [kehrt eine UTF-8 Zeichenkette oder ein Array um |#reverse] -| `slice` | [extrahiert einen Ausschnitt aus einem Array oder einer Zeichenkette |#slice] -| `sort` | [sortiert ein Array |#sort] -| `spaceless` | [entfernt Leerzeichen |#spaceless], ähnlich dem [spaceless |tags] tag -| `split` | [trennt eine Zeichenkette durch das angegebene Trennzeichen auf |#explode] -| `strip` | [Entfernt Leerzeichen |#spaceless] -| `stripHtml` | [entfernt HTML-Tags und konvertiert HTML-Entities in Text |#stripHtml] -| `substr` | [gibt einen Teil der Zeichenkette zurück |#substr] -| `trim` | [entfernt Leerzeichen aus der Zeichenkette |#trim] -| `translate` | [Übersetzung in andere Sprachen |#translate] -| `truncate` | [verkürzt die Länge unter Beibehaltung ganzer Wörter |#truncate] -| `webalize` | [passt die UTF-8-Zeichenfolge an die in der URL verwendete Forman |#webalize] +|## Transformation +| `batch` | [Auflistung linearer Daten in einer Tabelle |#batch] +| `breakLines` | [Fügt HTML-Zeilenumbrüche am Ende der Zeilen hinzu |#breakLines] +| `bytes` | [formatiert die Größe in Bytes |#bytes] +| `clamp` | [begrenzt einen Wert auf einen bestimmten Bereich |#clamp] +| `dataStream` | [Konvertierung für das Data URI-Protokoll |#datastream] +| `date` | [formatiert Datum und Uhrzeit |#date] +| `explode` | [teilt eine Zeichenkette in ein Array anhand eines Trennzeichens |#explode] +| `first` | [gibt das erste Element eines Arrays oder Zeichen einer Zeichenkette zurück |#first] +| `group` | [gruppiert Daten nach verschiedenen Kriterien |#group] +| `implode` | [verbindet ein Array zu einer Zeichenkette |#implode] +| `indent` | [rückt Text von links um eine bestimmte Anzahl von Tabulatoren ein |#indent] +| `join` | [verbindet ein Array zu einer Zeichenkette |#implode] +| `last` | [gibt das letzte Element eines Arrays oder Zeichen einer Zeichenkette zurück |#last] +| `length` | [gibt die Länge einer Zeichenkette in Zeichen oder eines Arrays zurück |#length] +| `localDate` | [formatiert Datum und Uhrzeit entsprechend den Ländereinstellungen |#localDate] +| `number` | [formatiert eine Zahl |#number] +| `padLeft` | [füllt eine Zeichenkette links auf eine bestimmte Länge auf |#padLeft] +| `padRight` | [füllt eine Zeichenkette rechts auf eine bestimmte Länge auf |#padRight] +| `random` | [gibt ein zufälliges Element eines Arrays oder Zeichen einer Zeichenkette zurück |#random] +| `repeat` | [Wiederholung einer Zeichenkette |#repeat] +| `replace` | [ersetzt Vorkommen einer gesuchten Zeichenkette |#replace] +| `replaceRE` | [ersetzt Vorkommen anhand eines regulären Ausdrucks |#replaceRE] +| `reverse` | [kehrt eine UTF-8 Zeichenkette oder ein Array um |#reverse] +| `slice` | [extrahiert einen Teil eines Arrays oder einer Zeichenkette |#slice] +| `sort` | [sortiert ein Array |#sort] +| `spaceless` | [entfernt Leerzeichen |#spaceless], ähnlich wie das [spaceless |tags] Tag +| `split` | [teilt eine Zeichenkette in ein Array anhand eines Trennzeichens |#explode] +| `strip` | [entfernt Leerzeichen |#spaceless] +| `stripHtml` | [entfernt HTML-Tags und konvertiert HTML-Entities in Zeichen |#stripHtml] +| `substr` | [gibt einen Teil einer Zeichenkette zurück |#substr] +| `trim` | [entfernt führende und abschließende Leerzeichen oder andere Zeichen |#trim] +| `translate` | [Übersetzung in andere Sprachen |#translate] +| `truncate` | [kürzt die Länge unter Beibehaltung von Wörtern |#truncate] +| `webalize` | [passt eine UTF-8 Zeichenkette in eine in URLs verwendete Form an |#webalize] .[table-latte-filters] -|## Buchstabenumbruch -| `capitalize` | [Kleinschreibung, der erste Buchstabe eines jeden Wortes wird großgeschrieben |#capitalize] -| `firstUpper` | [macht den ersten Buchstaben zu einem Großbuchstaben |#firstUpper] -| `lower` | [macht eine Zeichenfolge klein |#lower] -| `upper` | [macht eine Zeichenkette zu einem Großbuchstaben |#upper] +|## Groß-/Kleinschreibung +| `capitalize` | [Kleinbuchstaben, erste Buchstaben der Wörter groß |#capitalize] +| `firstUpper` | [konvertiert den ersten Buchstaben in einen Großbuchstaben |#firstUpper] +| `lower` | [konvertiert in Kleinbuchstaben |#lower] +| `upper` | [konvertiert in Großbuchstaben |#upper] .[table-latte-filters] -|## Rundung von Zahlen -| `ceil` | [rundet eine Zahl auf eine bestimmte Genauigkeit auf|#ceil] -| `floor` | [rundet eine Zahl auf eine bestimmte Genauigkeit ab |#floor] -| `round` | [rundet eine Zahl auf eine bestimmte Genauigkeit|#round] +|## Rundung +| `ceil` | [rundet eine Zahl auf eine bestimmte Genauigkeit auf |#ceil] +| `floor` | [rundet eine Zahl auf eine bestimmte Genauigkeit ab |#floor] +| `round` | [rundet eine Zahl auf eine bestimmte Genauigkeit |#round] .[table-latte-filters] |## Escaping -| `escapeUrl` | [gibt einen Parameter in der URL als Escapezeichen aus|#escapeUrl] -| `noescape` | [druckt eine Variable ohne Escaping |#noescape] -| `query` | [erzeugt eine Abfragezeichenfolge in der URL |#query] +| `escapeUrl` | [escapet einen Parameter in einer URL |#escapeUrl] +| `noescape` | [gibt eine Variable ohne Escaping aus |#noescape] +| `query` | [generiert einen Query-String in einer URL |#query] -Es gibt auch Escape-Filter für HTML (`escapeHtml` und `escapeHtmlComment`), XML (`escapeXml`), JavaScript (`escapeJs`), CSS (`escapeCss`) und iCalendar (`escapeICal`), die Latte dank [kontextsensitivem Escaping |safety-first#Context-aware escaping] selbst verwendet und die Sie nicht schreiben müssen. +Es gibt außerdem Escaping-Filter für HTML (`escapeHtml` und `escapeHtmlComment`), XML (`escapeXml`), JavaScript (`escapeJs`), CSS (`escapeCss`) und iCalendar (`escapeICal`), die Latte selbst dank [kontextsensitivem Escaping |safety-first#Context-aware escaping] verwendet und die Sie nicht explizit schreiben müssen. .[table-latte-filters] |## Sicherheit -| `checkUrl` | [säubert Zeichenketten für die Verwendung im href-Attribut |#checkUrl] -| `nocheck` | [verhindert automatische URL-Sanitisierung |#nocheck] +| `checkUrl` | [behandelt eine URL-Adresse gegen gefährliche Eingaben |#checkUrl] +| `nocheck` | [verhindert die automatische Behandlung einer URL-Adresse |#nocheck] -Latte der `src` und `href` Attribute [prüft automatisch |safety-first#link checking], so dass Sie den `checkUrl` Filter fast nicht verwenden müssen. +Latte [überprüft automatisch |safety-first#link checking] die Attribute `src` und `href`, sodass Sie den `checkUrl`-Filter fast nie verwenden müssen. .[note] -Alle eingebauten Filter arbeiten mit UTF-8 kodierten Zeichenketten. +Alle Standard-Filter sind für Zeichenketten in UTF-8-Kodierung ausgelegt. Verwendung .[#toc-usage] ======================== -Latte erlaubt den Aufruf von Filtern unter Verwendung der Pipe-Schreibweise (vorangestelltes Leerzeichen ist erlaubt): +Filter werden durch einen senkrechten Strich notiert (vor dem ein Leerzeichen stehen kann): ```latte
{$text|shortify}
@@ -122,7 +122,7 @@ Filter .[#toc-filters] batch(int $length, mixed $item): array .[filter] ------------------------------------------------ -Filter, der die Auflistung von linearen Daten in Form einer Tabelle vereinfacht. Er gibt ein Array von Arrays mit der angegebenen Anzahl von Elementen zurück. Wenn Sie einen zweiten Parameter angeben, wird dieser verwendet, um fehlende Elemente in der letzten Zeile aufzufüllen. +Ein Filter, der die Ausgabe linearer Daten in Form einer Tabelle vereinfacht. Er gibt ein Array von Arrays mit der angegebenen Anzahl von Elementen zurück. Wenn Sie einen zweiten Parameter angeben, wird er verwendet, um fehlende Elemente in der letzten Zeile zu ergänzen. ```latte {var $items = ['a', 'b', 'c', 'd', 'e']} @@ -137,7 +137,7 @@ Filter, der die Auflistung von linearen Daten in Form einer Tabelle vereinfacht. ``` -Druckt: +Gibt aus: ```latteone < two
'|stripHtml} {* gibt 'one < two' *} +{='one < two
'|stripHtml} {* gibt 'one < two' aus *} ``` -Der resultierende reine Text kann natürlich Zeichen enthalten, die HTML-Tags darstellen, zum Beispiel wird `'<p>'|stripHtml` in ``. Geben Sie den resultierenden Text niemals mit `|noescape` aus, da dies zu einer Sicherheitslücke führen kann. +Der resultierende reine Text kann natürlich Zeichen enthalten, die HTML-Tags darstellen, zum Beispiel wird `'<p>'|stripHtml` zu `
` konvertiert. Geben Sie den so erzeugten Text auf keinen Fall mit `|noescape` aus, da dies zu einer Sicherheitslücke führen kann.
substr(int $offset, ?int $length=null) .[filter]
------------------------------------------------
-Extrahiert einen Ausschnitt aus einer Zeichenkette. Dieser Filter wurde durch einen [Slice-Filter |#slice] ersetzt.
+Extrahiert einen Teil einer Zeichenkette. Dieser Filter wurde durch den Filter [#slice] ersetzt.
```latte
{$string|substr: 1, 2}
@@ -817,57 +817,57 @@ Extrahiert einen Ausschnitt aus einer Zeichenkette. Dieser Filter wurde durch ei
translate(...$args) .[filter]
-----------------------------
-Er übersetzt Ausdrücke in andere Sprachen. Um den Filter verfügbar zu machen, müssen Sie den [Übersetzer ein richten|develop#TranslatorExtension]. Sie können auch die [Tags für die Übersetzung |tags#Translation] verwenden.
+Übersetzt Ausdrücke in andere Sprachen. Damit der Filter verfügbar ist, muss ein [Übersetzer eingerichtet |develop#TranslatorExtension] sein. Sie können auch [Tags für Übersetzungen |tags#Translation] verwenden.
```latte
-{='Baskter'|translate}
+{='Cart'|translate}
{$item|translate}
```
trim(string $charlist=" \t\n\r\0\x0B\u{A0}") .[filter]
------------------------------------------------------
-Entfernen Sie führende und nachgestellte Zeichen, standardmäßig Leerzeichen.
+Entfernt Leerzeichen (oder andere Zeichen) vom Anfang und Ende einer Zeichenkette.
```latte
-{=' I like Latte. '|trim} {* gibt 'I like Latte.' *}
-{=' I like Latte.'|trim: '.'} {* gibt ' I like Latte' *}
+{=' I like Latte. '|trim} {* gibt 'I like Latte.' aus *}
+{=' I like Latte.'|trim: '.'} {* gibt ' I like Latte' aus *}
```
truncate(int $length, string $append='…') .[filter]
---------------------------------------------------
-Kürzt eine Zeichenkette auf die maximal angegebene Länge, versucht aber, ganze Wörter zu erhalten. Wenn die Zeichenkette abgeschnitten ist, wird am Ende ein Auslassungszeichen hinzugefügt (dies kann durch den zweiten Parameter geändert werden).
+Kürzt eine Zeichenkette auf die angegebene maximale Länge, wobei versucht wird, ganze Wörter zu erhalten. Wenn die Zeichenkette gekürzt wird, wird am Ende ein Auslassungszeichen hinzugefügt (kann mit dem zweiten Parameter geändert werden).
```latte
{var $title = 'Hello, how are you?'}
-{$title|truncate:5} {* Hell… *}
-{$title|truncate:17} {* Hello, how are… *}
-{$title|truncate:30} {* Hello, how are you? *}
+{$title|truncate:5} {* Hell… *}
+{$title|truncate:17} {* Hello, how are… *}
+{$title|truncate:30} {* Hello, how are you? *}
```
upper .[filter]
---------------
-Konvertiert einen Wert in Großbuchstaben. Erfordert die PHP-Erweiterung `mbstring`.
+Konvertiert eine Zeichenkette in Großbuchstaben. Erfordert die PHP-Erweiterung `mbstring`.
```latte
-{='latte'|upper} {* gibt 'LATTE' *}
+{='latte'|upper} {* gibt 'LATTE' aus *}
```
-Siehe auch [capitalize |#capitalize], [firstUpper |#firstUpper], [lower |#lower].
+Siehe auch [#capitalize], [#firstUpper], [#lower].
webalize .[filter]
------------------
-Konvertiert nach ASCII.
+Konvertiert eine UTF-8-Zeichenkette in die in URLs verwendete Form.
-Konvertiert Leerzeichen in Bindestriche. Entfernt Zeichen, die keine alphanumerischen Zeichen, Unterstriche oder Bindestriche sind. Konvertiert in Kleinbuchstaben. Entfernt auch führende und nachfolgende Leerzeichen.
+Es wird in ASCII konvertiert. Konvertiert Leerzeichen in Bindestriche. Entfernt Zeichen, die nicht alphanumerisch, Unterstriche oder Bindestriche sind. Konvertiert in Kleinbuchstaben. Entfernt auch führende und abschließende Leerzeichen.
```latte
-{var $s = 'Our 10. product'}
-{$s|webalize} {* gibt 'our-10-product' *}
+{var $s = 'Unser 10. Produkt'}
+{$s|webalize} {* gibt 'unser-10-produkt' aus *}
```
.[caution]
-Erfordert das Paket [nette/utils |utils:].
+Erfordert die Bibliothek [nette/utils |utils:].
diff --git a/latte/de/tags.texy b/latte/de/tags.texy
index c0ef1f3af7..23ecde451c 100644
--- a/latte/de/tags.texy
+++ b/latte/de/tags.texy
@@ -2,167 +2,167 @@ Latte Tags
**********
.[perex]
-Zusammenfassung und Beschreibung aller in Latte integrierten Tags.
+Eine Übersicht und Beschreibung aller Latte-Template-System-Tags, die standardmäßig zur Verfügung stehen.
.[table-latte-tags language-latte]
-|## Drucken
-| `{$var}`, `{...}` oder `{=...}` | [druckt eine Variable oder einen Ausdruck mit Escapezeichen |#printing]
-| `{$var\|filter}` | [druckt mit Filtern |#filters]
-| `{l}` oder `{r}` | druckt `{` or `}` Zeichen
+|## Ausgabe
+| `{$var}`, `{...}` oder `{=...}` | [gibt eine escaped Variable oder einen Ausdruck aus|#Ausgabe]
+| `{$var\|filter}` | [gibt mit Verwendung von Filtern aus|#Filter]
+| `{l}` oder `{r}` | gibt das Zeichen `{` oder `}` aus
.[table-latte-tags language-latte]
|## Bedingungen
-| `{if}`... `{elseif}`... `{else}`... `{/if}` | [Bedingung if |#if-elseif-else]
-| `{ifset}`... `{elseifset}`... `{/ifset}` | [Bedingung ifset |#ifset-elseifset]
-| `{ifchanged}`... `{/ifchanged}` | [Test, ob eine Änderung stattgefunden hat |#ifchanged]
-| `{switch}` `{case}` `{default}` `{/switch}` | [Bedingung switch |#switch-case-default]
-| `n:else` | [alternative Inhalte für Bedingungen |#n:else]
+| `{if}` … `{elseif}` … `{else}` … `{/if}` | [if-Bedingung|#if-elseif-else]
+| `{ifset}` … `{elseifset}` … `{/ifset}` | [ifset-Bedingung|#ifset-elseifset]
+| `{ifchanged}` … `{/ifchanged}` | [Test, ob eine Änderung aufgetreten ist|#ifchanged]
+| `{switch}` `{case}` `{default}` `{/switch}` | [switch-Bedingung|#switch-case-default]
+| `n:else` | [alternativer Inhalt für Bedingungen|#n:else]
.[table-latte-tags language-latte]
|## Schleifen
-| `{foreach}`... `{/foreach}` | [foreach |#foreach]
-| `{for}`... `{/for}` | [for |#for]
-| `{while}`... `{/while}` | [while |#while]
-| `{continueIf $cond}` | [weiter zur nächsten Iteration |#continueif-skipif-breakif]
-| `{skipIf $cond}` | [überspringt die aktuelle Schleifeniteration |#continueif-skipif-breakif]
-| `{breakIf $cond}` | [bricht Schleife ab |#continueif-skipif-breakif]
-| `{exitIf $cond}` | [vorzeitiges Beenden |#exitif]
-| `{first}`... `{/first}` | [ist dies die erste Iteration? |#first-last-sep]
-| `{last}`... `{/last}` | [ist es die letzte Iteration? |#first-last-sep]
-| `{sep}`... `{/sep}` | [wird die nächste Iteration folgen? |#first-last-sep]
-| `{iterateWhile}`... `{/iterateWhile}` | [strukturiert foreach |#iterateWhile]
-| `$iterator` | [Spezielle Variable innerhalb der foreach-Schleife |#$iterator]
+| `{foreach}` … `{/foreach}` | [#foreach]
+| `{for}` … `{/for}` | [#for]
+| `{while}` … `{/while}` | [#while]
+| `{continueIf $cond}` | [mit der nächsten Iteration fortfahren|#continueif-skipif-breakif]
+| `{skipIf $cond}` | [Iteration überspringen|#continueif-skipif-breakif]
+| `{breakIf $cond}` | [Schleife abbrechen|#continueif-skipif-breakif]
+| `{exitIf $cond}` | [vorzeitige Beendigung|#exitif]
+| `{first}` … `{/first}` | [ist es der erste Durchlauf?|#first-last-sep]
+| `{last}` … `{/last}` | [ist es der letzte Durchlauf?|#first-last-sep]
+| `{sep}` … `{/sep}` | [wird noch ein Durchlauf folgen?|#first-last-sep]
+| `{iterateWhile}` … `{/iterateWhile}` | [strukturiertes foreach|#iterateWhile]
+| `$iterator` | [spezielle Variable innerhalb von foreach|#$iterator]
.[table-latte-tags language-latte]
-|## Einbindung anderer Vorlagen
-| `{include 'file.latte'}` | [schließt eine Vorlage aus einer anderen Datei ein |#include]
-| `{sandbox 'file.latte'}` | [Einfügen einer Vorlage im Sandbox-Modus |#sandbox]
+|## Einbindung weiterer Templates
+| `{include 'file.latte'}` | [lädt ein Template aus einer anderen Datei|#include]
+| `{sandbox 'file.latte'}` | [lädt ein Template im Sandbox-Modus|#sandbox]
.[table-latte-tags language-latte]
-|## Blöcke, Layouts, Vererbung von Vorlagen
-| `{block}` | [anonymer Block |#block]
-| `{block blockname}` | [Blockdefinition |template-inheritance#blocks]
-| `{define blockname}` | [Blockdefinition für zukünftige Verwendung |template-inheritance#definitions]
-| `{include blockname}` | [druckt Block |template-inheritance#printing-blocks]
-| `{include blockname from 'file.latte'}` | [druckt einen Block aus einer Datei |template-inheritance#printing-blocks]
-| `{import 'file.latte'}` | [lädt Blöcke aus einer anderen Vorlage |template-inheritance#horizontal-reuse]
-| `{layout 'file.latte'}` / `{extends}` | [gibt eine Layout-Datei an |template-inheritance#layout-inheritance]
-| `{embed}`... `{/embed}` | [lädt die Vorlage oder den Block und ermöglicht das Überschreiben der Blöcke |template-inheritance#unit-inheritance]
-| `{ifset blockname}`... `{/ifset}` | [Bedingung, wenn Block definiert ist |template-inheritance#checking-block-existence]
+|## Blöcke, Layouts, Template-Vererbung
+| `{block}` | [anonymer Block|#block]
+| `{block blockname}` | [definiert einen Block|template-inheritance#blocks]
+| `{define blockname}` | [definiert einen Block zur späteren Verwendung|template-inheritance#definitions]
+| `{include blockname}` | [Darstellung eines Blocks|template-inheritance#printing-blocks]
+| `{include blockname from 'file.latte'}` | [stellt einen Block aus einer Datei dar|template-inheritance#printing-blocks]
+| `{import 'file.latte'}` | [lädt Blöcke aus einem Template|template-inheritance#horizontal-reuse]
+| `{layout 'file.latte'}` / `{extends}` | [bestimmt die Layout-Datei|template-inheritance#layout-inheritance]
+| `{embed}` … `{/embed}` | [lädt ein Template oder einen Block und ermöglicht das Überschreiben von Blöcken|template-inheritance#unit-inheritance]
+| `{ifset blockname}` … `{/ifset}` | [Bedingung, ob ein Block existiert|template-inheritance#checking-block-existence]
.[table-latte-tags language-latte]
|## Ausnahmebehandlung
-| `{try}`... `{else}`... `{/try}` | [Abfangen von Ausnahmen |#try]
-| `{rollback}` | [verwirft try-Block |#rollback]
+| `{try}` … `{else}` … `{/try}` | [Abfangen von Ausnahmen|#try]
+| `{rollback}` | [Verwerfen eines try-Blocks|#rollback]
.[table-latte-tags language-latte]
|## Variablen
-| `{var $foo = value}` | [Erstellung von Variablen |#var-default]
-| `{default $foo = value}` | [Standardwert, wenn Variable nicht deklariert ist |#var-default]
-| `{parameters}` | [deklariert Variablen, gibt einen Standardwert ein |#parameters]
-| `{capture}`... `{/capture}` | [erfasst einen Abschnitt in einer Variablen |#capture]
+| `{var $foo = value}` | [erstellt eine Variable|#var-default]
+| `{default $foo = value}` | [erstellt eine Variable, wenn sie nicht existiert|#var-default]
+| `{parameters}` | [deklariert Variablen, Typen und Standardwerte|#parameters]
+| `{capture}` … `{/capture}` | [erfasst einen Block in eine Variable|#capture]
.[table-latte-tags language-latte]
|## Typen
-| `{varType}` | [deklariert den Typ einer Variablen |type-system#varType]
-| `{varPrint}` | [schlägt Variablentypen vor |type-system#varPrint]
-| `{templateType}` | [deklariert Variablentypen mittels Klasse |type-system#templateType]
-| `{templatePrint}` | [erzeugt Klasse mit Eigenschaften |type-system#templatePrint]
+| `{varType}` | [deklariert den Typ einer Variable|type-system#varType]
+| `{varPrint}` | [schlägt Typen für Variablen vor|type-system#varPrint]
+| `{templateType}` | [deklariert Variablentypen basierend auf einer Klasse|type-system#templateType]
+| `{templatePrint}` | [schlägt eine Klasse mit Variablentypen vor|type-system#templatePrint]
.[table-latte-tags language-latte]
-|## Übersetzung
-| `{_string}` | [druckt übersetzt |#Translation]
-| `{translate}`... `{/translate}` | [übersetzt den Inhalt |#Translation]
+|## Übersetzungen
+| `{_...}` | [gibt eine Übersetzung aus|#übersetzungen]
+| `{translate}` … `{/translate}` | [übersetzt den Inhalt|#übersetzungen]
.[table-latte-tags language-latte]
-|## Andere
-| `{contentType}` | [schaltet den Escaping-Modus um und sendet HTTP-Header |#contenttype]
-| `{debugbreak}` | [setzt einen Haltepunkt im Code |#debugbreak]
-| `{do}` | [wertet einen Ausdruck aus, ohne ihn zu drucken |#do]
-| `{dump}` | [gibt Variablen in die Tracy Bar aus |#dump]
-| `{php}` | [führt beliebigen PHP-Code aus |#php]
-| `{spaceless}`... `{/spaceless}` | [entfernt unnötige Leerzeichen |#spaceless]
-| `{syntax}` | [schaltet die Syntax während der Laufzeit um |#syntax]
-| `{trace}` | [zeigt Stack-Trace |#trace]
+|## Sonstiges
+| `{contentType}` | [schaltet das Escaping um und sendet einen HTTP-Header|#contenttype]
+| `{debugbreak}` | [platziert einen Breakpoint im Code|#debugbreak]
+| `{do}` | [führt Code aus, gibt aber nichts aus|#do]
+| `{dump}` | [dumpt Variablen in die Tracy Bar|#dump]
+| `{php}` | [führt beliebigen PHP-Code aus|#php]
+| `{spaceless}` … `{/spaceless}` | [entfernt überflüssige Leerzeichen|#spaceless]
+| `{syntax}` | [Änderung der Syntax zur Laufzeit|#syntax]
+| `{trace}` | [zeigt den Stack-Trace an|#trace]
.[table-latte-tags language-latte]
-|## HTML-Tag-Helfer
-| `n:class` | [intelligentes Klassenattribut |#n:class]
-| `n:attr` | [intelligente HTML-Attribute |#n:attr]
-| `n:tag` | [Dynamischer Name des HTML-Elements |#n:tag]
-| `n:ifcontent` | [Leeren HTML-Tag auslassen |#n:ifcontent]
+|## Helfer für HTML-Codierer
+| `n:class` | [dynamische Schreibweise des HTML-Attributs class|#n:class]
+| `n:attr` | [dynamische Schreibweise beliebiger HTML-Attribute|#n:attr]
+| `n:tag` | [dynamische Schreibweise des HTML-Element-Namens|#n:tag]
+| `n:ifcontent` | [lässt einen leeren HTML-Tag aus|#n:ifcontent]
.[table-latte-tags language-latte]
-|## Nur in Nette Framework verfügbar
-| `n:href` | [Link in `` HTML-Elementen |application:creating-links#In the Presenter Template]
-| `{link}` | [gibt einen Link aus |application:creating-links#In the Presenter Template]
-| `{plink}` | [druckt einen Link zu einem Presenter |application:creating-links#In the Presenter Template]
-| `{control}` | [druckt eine Komponente |application:components#Rendering]
-| `{snippet}`... `{/snippet}` | [ein Template-Snippet, das per AJAX gesendet werden kann |application:ajax#snippets-in-latte]
-| `{snippetArea}` | [Schnipsel Umschlag |application:ajax#snippet-areas]
-| `{cache}`... `{/cache}` | [zwischenspeichert einen Vorlagenabschnitt |caching:#caching-in-latte]
+|## Nur im Nette Framework verfügbar
+| `n:href` | [Link, der in HTML-Elementen `` verwendet wird|application:creating-links#In the Presenter Template]
+| `{link}` | [gibt einen Link aus|application:creating-links#In the Presenter Template]
+| `{plink}` | [gibt einen Link zu einem Presenter aus|application:creating-links#In the Presenter Template]
+| `{control}` | [rendert eine Komponente|application:components#Rendering]
+| `{snippet}` … `{/snippet}` | [ein Snippet, das per AJAX gesendet werden kann|application:ajax#snippets-in-latte]
+| `{snippetArea}` | [Wrapper für Snippets|application:ajax#snippet-areas]
+| `{cache}` … `{/cache}` | [cached einen Teil des Templates|caching:#caching-in-latte]
.[table-latte-tags language-latte]
|## Nur mit Nette Forms verfügbar
-| `{form}`... `{/form}` | [druckt ein Formularelement |forms:rendering#form]
-| `{label}`... `{/label}` | [druckt eine Formulareingabebezeichnung |forms:rendering#label-input]
-| `{input}` | [druckt ein Formulareingabeelement |forms:rendering#label-input]
-| `{inputError}` | [gibt eine Fehlermeldung für ein Formulareingabeelement aus |forms:rendering#inputError]
-| `n:name` | [aktiviert ein HTML-Eingabeelement |forms:rendering#n:name]
-| `{formContainer}`... `{/formContainer}` | [Darstellung des Formular-Containers |forms:rendering#special-cases]
+| `{form}` … `{/form}` | [rendert Formular-Tags|forms:rendering#form]
+| `{label}` … `{/label}` | [rendert ein Label für ein Formularelement|forms:rendering#label-input]
+| `{input}` | [rendert ein Formularelement|forms:rendering#label-input]
+| `{inputError}` | [gibt eine Fehlermeldung für ein Formularelement aus|forms:rendering#inputError]
+| `n:name` | [aktiviert ein Formularelement|forms:rendering#n:name]
+| `{formContainer}` … `{/formContainer}` | [Zeichnen eines Formular-Containers|forms:rendering#special-cases]
-Drucken .[#toc-printing]
+Ausgabe .[#toc-printing]
========================
`{$var}` `{...}` `{=...}`
-------------------------
-Latte verwendet das Tag `{=...}`, um einen beliebigen Ausdruck in der Ausgabe auszugeben. Wenn der Ausdruck mit einer Variablen oder einem Funktionsaufruf beginnt, ist es nicht nötig, ein Gleichheitszeichen zu schreiben. Das bedeutet in der Praxis, dass es fast nie geschrieben werden muss:
+In Latte wird das Tag `{=...}` verwendet, um einen beliebigen Ausdruck auszugeben. Latte legt Wert auf Ihren Komfort, daher ist es nicht nötig, das Gleichheitszeichen zu schreiben, wenn der Ausdruck mit einer Variable oder einem Funktionsaufruf beginnt. Das bedeutet in der Praxis, dass es fast nie notwendig ist, es zu schreiben:
```latte
Name: {$name} {$surname} {='one < two'} one < two {='one < two'} one < two In stock {$count} items {$count} Artikel auf Lager
-Age: {date('Y') - $birth}
+Alter: {date('Y') - $birth}
```
-Sie können alles, was Sie aus PHP kennen, als Ausdruck schreiben. Sie müssen nur keine neue Sprache lernen. Zum Beispiel:
+Als Ausdruck können Sie alles schreiben, was Sie aus PHP kennen. Sie müssen einfach keine neue Sprache lernen. Zum Beispiel:
```latte
{='0' . ($num ?? $num * 3) . ', ' . PHP_VERSION}
```
-Bitte suchen Sie nicht nach einer Bedeutung in dem vorherigen Beispiel, aber wenn Sie eine finden, schreiben Sie uns :-)
+Bitte suchen Sie in dem vorherigen Beispiel keinen Sinn, aber wenn Sie einen finden sollten, schreiben Sie uns :-)
-Ausweichende Ausgabe .[#toc-escaping-output]
---------------------------------------------
+Ausgabe escapen .[#toc-escaping-output]
+---------------------------------------
-Was ist die wichtigste Aufgabe eines Template-Systems? Sicherheitslücken zu vermeiden. Und genau das tut Latte, wenn Sie etwas in die Ausgabe drucken. Es entschlüsselt automatisch alles:
+Was ist die wichtigste Aufgabe eines Template-Systems? Sicherheitslücken zu verhindern. Und genau das macht Latte immer, wenn Sie etwas ausgeben. Es escaped es automatisch:
```latte
-