Vorlage:FormatDate

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen


Die Vorlage FormatDate formatiert ein in Anlehnung an ISO 8601 angegebenes Datum wie 2000-06-29 (29. Juni 2000), etwa zur Verwendung in Listen oder Infoboxen. Dabei wird der volle oder ein abgekürzter deutscher Monatsname erzeugt, der volle Name ist Standard. Im Gegensatz zur Parser-Funktion #time kann diese Vorlage alle Daten verarbeiten, auch Daten vor dem Jahr 1. Durch Angabe einer 0 für Monat bzw. Tag kann eine Ausgabe ohne Monats-/Tagesangabe erzielt werden. Zusätzliche Parameter bewirken Verlinkung oder durchgängige Verwendung von geschützten Leerzeichen ( ).

Zur Verwendung in sortierbaren Tabellen gibt es die fast gleichwertige Vorlage:DatumZelle, die neben der Formatierung auch noch für die richtige Sortierung sorgt.

Verwendung

Die Syntax für Jahre vor Chr. wurde geändert! Jetzt gilt die kalendarische Zuordnung: -N = N v. Chr., statt bisher N+1 v. Chr.

Kopiervorlagen

Syntax
{{FormatDate|<ISO-Datum>|<Format>|<Extra1>|<Extra2>|AT=(ja{{!}}|)}}
  1. {{FormatDate| -- |L| }}
  2. {{FormatDate| -- |M| }}
  3. {{FormatDate| -- |S| }}

Parameter

Erster Parameter (<ISO-Datum>)
Datum in einem ISO-Format wie beispielsweise JJJJ-MM-TT, also z. B. 2013-09-03. Tag und Monat können auch ohne führende Null angegeben werden, also JJJJ-M-T. Hierbei ist ausschließlich der ASCII-Strich „-“ erlaubt. Jahre vor 1 n. Chr. werden mit Minuszeichen angegeben. Dabei bedeutet z.B. „-333“ soviel wie 333 v. Chr. Will man den Tag weglassen, dann kann man entweder als Tagesdatum eine Null angeben oder den dritten Teil ganz weglassen. Will man auch den Monat weglassen, so kann dort ebenfalls eine Null angegeben werden oder man gibt nur die Jahreszahl an. Sollen nur Tag und Monat erscheinen, so wird als Jahr die Null angegeben (Ein Jahr Null gibt es nicht). Zulässig sind also folgende Formate:
Format Ausgabe
  • JJJJ-MM-TT
  • JJJJ-MM-T
  • JJJJ-M-TT
  • JJJJ-M-T
Tag, Monat und Jahr
  • JJJJ-MM-0
  • JJJJ-MM
Monat und Jahr
  • JJJJ-0-0
  • JJJJ
nur das Jahr
  • JJJJ-0-TTT
  • JJJJ-0-TT
  • JJJJ-0-T
Tag, Monat und Jahr des „TTT-ten“ Tages im Jahr.
Zweiter Parameter (<Format>)
Damit wird das Ausgabeformat des Monats festgelegt. Mögliche Werte sind:
  • „L“ oder leer: Monatsname wird ausgeschrieben.
  • „M“: Monatsname wird auf vier Zeichen abgekürzt.
  • „S“: Monatsname wird auf drei Zeichen abgekürzt.
Format­code Form der Monatsangabe Beispiel Resultat
L Januar, Februar, ... {{FormatDate|2000-03-01|L}} 1. März 2000
M „Jan.“, „Feb.“, „März“, „Apr.“, „Mai“, „Juni“, „Juli“, „Aug.“, „Sep.“, „Okt.“, „Nov.“, „Dez.“ {{FormatDate|2000-03-01|M}} 1. März 2000
S „Jan.“, „Feb.“, „Mrz.“, „Apr.“, „Mai“, „Jun.“, „Jul.“, „Aug.“, „Sep.“, „Okt.“, „Nov.“, „Dez.“ {{FormatDate|2000-03-01|S}} 1. Mrz. 2000
Dritter und vierter Standardparameter
Dieser kann die Werte „nbsp“ und/oder „link“ haben. In diesem Fall sollte Parameter 2 für das Langformat explizit angegeben werden.
Parameter Wirkung Anmerkung
nbsp zwischen Monat und Jahr wird ein geschütztes Leerzeichen (&nbsp;) gesetzt Standard ist an dieser Stelle ein normales Leerzeichen, überall sonst wird immer ein geschütztes Leerzeichen erzeugt.
link Tag und Monat sowie die Jahreszahl werden verlinkt.
Benannter Parameter AT
Mit AT=ja wird Jänner anstatt Januar geschrieben.

Beispiele

Gültige Angaben
Aufruf Ergebnis Anmerkung
{{FormatDate|2012-2-1}} 1. Februar 2012 Langformat
{{FormatDate|2012-12-0}} Dezember 2012 Ohne Tag
{{FormatDate|2012-12}} Dezember 2012 Ohne Tag (alternativ)
{{FormatDate|2012-0-0}} 2012 Nur die Jahreszahl
{{FormatDate|2012-0}} 2012 Nur die Jahreszahl
{{FormatDate|2012}} 2012 Nur die Jahreszahl
{{FormatDate|745}} 745 Nur die Jahreszahl (dreistellig)
{{FormatDate|2012-0-256}} 12. September 2012 Der 12. September ist der 256. Tag eines Schaltjahres
{{FormatDate|2012-256}} 12. September 2012 Der 12. September ist der 256. Tag eines Schaltjahres
{{FormatDate|01}} 1 Nur Jahr (ohne Suffix und führende Nullen)
{{FormatDate|-01}} 1 v. Chr. Nur Jahr (mit Suffix, ohne führende Nullen)
{{FormatDate|--12-24}} 24. Dezember Nur Tag und Monat
{{FormatDate|0-12-24}} 24. Dezember Nur Tag und Monat
{{FormatDate|2012-02-01|L}} 1. Februar 2012 „L“ bewirkt das gleiche wie keine Formatangabe
{{FormatDate|2012-06-29|M}} 29. Juni 2000 Mittleres Format
{{FormatDate|2000-07-28|S}} 28. Jul. 2000 Kurzformat
{{FormatDate|2000-08-0|M}} Aug. 2000 Mittleres Format ohne Tagesangabe
{{FormatDate|2012-01-02|L|link}} 2. Januar 2012 Langformat, verlinkt. Hier ist die explizite Angabe „L“ sinnvoll, weil im Quelltext besser lesbar.
{{FormatDate|2012-01-02|L|link|nbsp}} 2. Januar 2012 Langformat, verlinkt und mit nbsp (hier natürlich nicht sichtbar...)
{{FormatDate|2012-01-02|L|link|nbsp|AT=ja}} 2. Jänner 2012 Langformat, verlinkt, mit nbsp und „Jänner“ statt „Januar“.
{{FormatDate|0-01-02|link|AT=ja}} 2. Jänner Nur Tag und Monat, verlinkt und „Jänner“ statt „Januar“.
{{FormatDate|-333}} 333 v. Chr. vor Christus
{{FormatDate|-333-11}} November 333 v. Chr. Schlacht bei Issos
Fehlerhafte Angaben
Aufruf Ergebnis Anmerkung
{{FormatDate|--01}} Januar Fehlinterpretation: Nur Monat, nur Tag des Monats wird nicht unterstützt
{{FormatDate|---01}} 1. Januar Fehlinterpretation: Tag und erster Monat, nur Tag des Monats wird nicht unterstützt
{{FormatDate|0000-12-24}} 24. Dezember Fehlinterpretation: Nur Tag und Monat, Jahr 0 wird nicht unterstützt
{{FormatDate|2012-W12-5}} 5. Januar 2012 Fehlinterpretation: Kalenderwoche und Wochentag wird nicht unterstützt und nicht als Fehler erkannt
{{FormatDate|-12-24}} Fehler, implizites Jahr wird so nicht unterstützt
{{FormatDate|2012-13-02}} Fehler: ungültiger Monat angegeben
{{FormatDate|2012-01-33}} Fehler: ungültiger Tag angegeben
{{FormatDate|00-00-00}} Fehler: Kein Tag, Monat und Jahr angegeben
{{FormatDate|28. Mai 2012}} Fehler: kein ISO-Datum

Siehe auch

Lua

Verwendetes Modul: Vorlage:FormatDate