kalender [ --verbose | --no_verbose ] [ --overwrite | --no_overwrite ] [ --translate | --no_translate ] [ --trname TRNAME ] [ --trreplace TRREPLACE ] [ --trlang TRLANG ] [ --basedir BASEDIR ] [ --docroot DOCROOT ] [ --kaldir KALDIR ] [ --datadir DATADIR ] [ --srcbase SRCBASE ] [ --srcdir SRCDIR ] [ --xsltpool XSLTPOOL ] [ --tempdir TEMPDIR ] [ --keeptmp | --no_keeptmp ] [ [ --tree | --kalender | --xslt | --mkhelp | --base | --langbase | --index | --htaccess ] ...
| [ --no_tree | --no_kalender | --no_xslt | --no_mkhelp | --no_base | --no_index | --no_htaccess ] ... ]
--helpGibt eine kurze Hilfe aus und zeigt die aktuellen Einstellungen an.
--versionGibt kurze Hinweise zum Programm und die Version aus.
--verboseMeldungen über den Programmablauf werden nach STDOUT ausgegeben.
--no_verboseDiese Option hebt die Wirkung der Option --verbose auf.
--overwriteExistierende Dateien werden überschrieben.
--no_overwriteDiese Option hebt die Wirkung der Option --overwrite auf: existierende Dateien bleiben erhalten.
--translateTexte in den Bildauswahl-Dateien (die Titel) werden in die fehlenden Sprachen übersetzt. Die Übersetzung ist Teil der Aktion --kalender.
Die Übersetzung ist nur möglich, wenn die Dateien trans.pl (Quelltext), lt_in.xslt (Text), lt_merge.xslt (Text) und lt_chktrname.xslt (Text) im Verzeichnis SRCDIR existieren. Wenn die Kennung des Übersetzungsmoduls (TRNAME) die Zeichenkette pipe enthält, wird ferner vorausgesetzt, dass die Skripte und SRCBASE/localization/pipe_srv.pl ausgeführt werden können.SRCBASE/localization/pipe_srv_stop.pl
--no_translateDiese Option hebt die Wirkung der Option --translate auf. Die Titel der Bildauswahlen werden nicht in weitere Sprachen übersetzt.
--trname TRNAMETRNAME ist die Kennung des Übersetzers. Sie wird im Zusammenhang mit der Lokalisierung der Website beschrieben.
--trreplace TRREPLACEDie Transformation lt_merge.xslt (Text) fügt die übersetzten Titel in eine Kalenderbilddatei ein, zusammen mit den Kennungen der Übersetzer. In den Kalenderbilddateien, die der Webserver liefert, sind die Kennungen der Übersetzer durch andere Namen ersetzt. Die Zeichenkette TRREPLACE beschreibt diese Ersetzung.
Die Zeichenkette TRREPLACE wird als Parameter p_replace an die Transformation lt_chktrname.xslt (Text) übergeben. Dort ist der Aufbau des Parameterwertes beschrieben.
--trlang TRLANGTRLANG ist eine Liste der Zielsprachen, in die die Titel der Bildauswahlen übersetzt werden. Die Kennungen der Zielsprachen werden durch ein Leerzeichen getrennt. In der Voreinstellung sind die Zielsprachen alle Sprachen, in denen die Lokalisierungsdatei verfügbar ist.DOCROOT/local/local.xml
--basedir BASEDIRDer Pfad des Basisverzeichnisses zur Website. Er beeinflusst die voreingestellten Pfade der anderen Verzeichnisse.
--docroot DOCROOTDas „Document root”-Verzeichnis des Webservers.
--kaldir KALDIRKALDIR ist das Unterverzeichnis von DOCROOT mit den Daten zu den Kalendern (oder ein „Spiegelverzeichnis”).
--datadir DATADIRDATADIR ist das Verzeichnis der Quelldaten zu den Kalendern Es enthält die Bildauswahldateien und kann Index-Dateien DATADIR/**/BILDAUSWAHL.xml und DATADIR/**/index.xhtml.de enthalten.DATADIR/index.xhtml.de
Die Verzeichnisstruktur spielt hier keine Rolle. Die Bildauswahl-Dateien für Kalender des Jahres JAHR liegen im Unterverzeichnis .DATADIR/JAHR
Die Kalender-Grunddaten liegen unter den Dateipfaden . DATADIR/base/JAHR/a.xml.LANGLANG steht für die Kennung der Sprache und des Landes in Kleinbuchstaben, z.B. fr-ca für Französisch in Kanada. Die Grunddaten enthalten in diesem Beispiel die gesetzlichen Feiertage in der französischsprachigen kanadischen Provinz Quebec.
Die Datei der Baumstruktur der Kalender ist .DATADIR/tree.xml
--srcbase SRCBASESRCBASE ist das Basisverzeichnis des Skripte zur Website. Hier werden Dateien in den Unterverzeichnissen (Lokalisierung) SRCBASE/localization (Stil allgemein) benötigt.SRCBASE/style
Das Verzeichnis SRCDIR ist in der Voreinstellung das Unterverzeichnis .SRCBASE/kalender
--srcdir SRCDIRDas Verzeichnis SRCDIR enthält die Skripte zu den Kalendern.
--xsltpool XSLTPOOLDas Verzeichnis XSLTPOOL enthält allgemein benutzte XSLT-Dateien.
--tempdir TEMPDIRDas Verzeichnis TEMPDIR enthält Zwischendateien (verdichtete CSS- und Javascript-Dateien, Datei zur Ersetzung von Text-Kennungen), s. --keeptmp.
--keeptmpZwischendateien (verdichtete Versionen von CSS- und Javascript-Dateien, Datei zu Ersetzung von Text-IDs) bleiben erhalten.
--no_keeptmpDiese Option hebt die Wirkung der Option --keeptmp auf. Zwischendateien (verdichtete Versionen von CSS- und Javascript-Dateien, Datei zu Ersetzung von Text-IDs) werden gelöscht.
--treeErzeugt die Datei mit der Baumstruktur der Kalender. Diese Datei ist die Grundlage zur Erzeugung der Indexdateien (DATADIR/tree.xml--index) und der Bildauswahldateien (--kalender) im Verzeichnis DOCROOT.
Das Programm tree.pl (Quelltext) erstellt die Baumstruktur (s. tree.rng). Dazu benötigt es weitere Dateien.
Die Transformation tree_sorttlv.xslt (Text) sortiert anschließend die Knoten der zweiten Ebene unterhalb der obersten Knoten in umgekehrter alphabetischer Reihenfolge ihrer Kennung. (Das neuere Jahr steht über dem älteren Jahr.) Hier hat die Baumstruktur genau einen obersten Knoten "Kalender".
--kalenderErstellt Bildauswahl-Dateien im „Document Root„-Verzeichnis (DOCROOT). Die Liste der relativen URI der Bildauswahldateien wird aus der Baumstruktur bestimmt.DATADIR/tree.xml
Die folgenden Dateien sind beteiligt:
lt_in.xslt (Text)Gibt den Titel einer Bildauswahldatei in verschiedenen Sprachversionen zur Weiterverarbeitung durch trans.pl (Quelltext) aus.
trans.pl (Quelltext)Erzeugt die XML-Datei mit den fehlenden Übersetzungen des Titels der Bildauswahldatei TEMPDIR/TIMESTAMP/PFAD_BILDAUSWAHL.xml.trans.DATADIR/PFAD_BILDAUSWAHL.xml
lt_merge.xslt (Text)Fügt die in der Datei fehlenden Sprachversionen des Titels aus der Datei DATADIR/PFAD_BILDAUSWAHL.xml ein. Die Ausgabe durchläuft die folgende Transformation TEMPDIR/TIMESTAMP/PFAD_BILDAUSWAHL.xml.translt_chktrname.xslt (Text).
lt_chktrname.xslt (Text)Ersetzt in der Ausgabe der Transformation lt_merge.xslt (Text) die Kennungen der Übersetzer durch Namen. Das Ergebnis ist .TEMPDIR/TIMESTAMP/PFAD_BILDAUSWAHL.xml
SRCBASE/localization/pipe_srv.plStartet den Dienst zur Übersetzung, falls die Kennung des Übersetzungsmoduls TRNAME die Zeichenkette pipe enthält.
SRCBASE/localization/pipe_srv_stop.plBedeendet den durch gestarteten Dienst.SRCBASE/localization/pipe_srv.pl
TEMPDIR/TIMESTAMP/PFAD_BILDAUSWAHL.xml.transDie neuen Übersetzungen eines Bildauswahl-Titels.
TEMPDIR/TIMESTAMP/PFAD_BILDAUSWAHL.xmlBildauswahldatei mit neuen Übersetzungen des Titels.
kal_addkeywords.xslt (Text)Fügt das Stichwort „Kalender” für Suchmaschinen in den angebotenen Sprachen zu einer Bildauswahldatei hinzu.
add_sspi.xslt (Text)Fügt, falls nötig, eine xml-stylsheet-Verarbeitungsanweisung ein.
TEMPDIR/TIMESTAMP/shortids.xmlDatei mit den kurzen Textkennungen in der Lokalisierungsdatei. Die Transformation kal_addkeywords.xslt (Text) braucht das Wort „Kalender” in verschiedenen Sprachen.
Die Erstellung dieser Datei ist im Zusammenhang mit dem allgemeinen Stil der Website beschrieben. Die folgenden Dateien sind beteiligt: style/shortids.pl, style/localization_idlist.xslt und style/local.xml.de.
DATADIR/tree.xmlDiese Datei liefert mittels der Transformation tree_files.xslt (Text) die relativen URI der Bildauswahldateien.
tree_files.xslt (Text)Erstellt aus der XML-Baumstruktur der Kalender () eine Liste der relativen URL der Bildauswahldateien.DATADIR/tree.xml
kal_addkeywords.xslt (Text)Fügt den Bildauswahldateien das Stichwort „Kalender” in den angebotenen Sprachen hinzu.
XSLTPOOL/xml_minimize.xsltEntfernt Kommentare und unnötige Leerzeichen aus einer Bildauswahldatei.
--xsltErstellt die XSLT-Dateien im Verzeichnis : KALDIR/s und KALDIR/s/kal.xslt. sowie die KALDIR/s/treelist.xslt.gzip-komprimierten Varianten. Der Inhalt von CSS- und Javascript-Dateien wird direkt an Stelle von Verweisen eingefügt. Die langen „sprechenden” Kennungen der kurzen sprachabhängigen Texte werden durch kurze IDs ersetzt.
Die Erstellung der XSLT-Dateien ist im Zusammenhang mit dem Stil im allgemeinen beschrieben.
--mkhelpErzeugt die Hilfe-Dateien , wie im Zusammenhang mit dem Stil im allgemeinen beschrieben.KALDIR/s/kal_help.xhtml.*
--baseErzeugt die Kalendergrunddaten .KALDIR/b/*
Grundlage sind die Dateien im Verzeichnis KENNUNG.txt und dessen Unterverzeichnissen. Unterverzeichnisse werden rekursiv verarbeitet. DATADIR/feiertageKENNUNG steht für einen Ländercode oder einen Sprache-/Land-Code wie de-at.
Unterverzeichnisnamen der Form 20[0-9][0-9] bezeichnen ein Kalenderjahr. Wenn es im Pfad keinen solchen Unterverzeichnisnamen gibt, hängt das Jahr vom aktuellen Kalenderjahr ab. In den Monaten Januar bis Oktober ist das Jahr das aktuelle Kalenderjahr, in den Monaten November und Dezember das Folgejahr.
Das Programm base.pl (Quelltext) im Verzeichnis SRCDIR erzeugt im entsprechenden Unterverzeichnis von die Datei KALDIR/ba.xml mit den Grunddaten des Jahres ohne Feiertage.
Aus einer Datei erzeugt DATADIR/feiertage/**/KENNUNG.txtbase.pl (Quelltext) eine Grunddaten-XHML-Datei. Anschließende Transformationen erzeugen daraus die Datei und die KALDIR/b/**/KENNUNG.xml.gzip-komprimierte Version. Die langen Kennungen der sprachabhängigen Texte (Monatsnamen) in den Quelldateien werden durch kurze IDs ersetzt, Kommentare und unnötige Leerzeichen und unnötige Namensraumknoten werden entfernt.DATADIR/base/*
Unter anderem sind die folgenden Dateien beteiligt. Die Einzelheiten sind im Zusammenhang mit dem Stil im allgemeinen erklärt.
SRCDIR/base.plErzeugt aus einer Textdatei mit den Feiertagen eine XHTML-Grunddaten-Datei.
TEMPDIR/TIMESTAMP/shortids.xmlKurze Kennungen der sprachabhängigen Texte
SRCBASE/style/localization_shortids.xsltErsetzt die langen „sprechenden” Kennungen durch die kurzen Kennungen
XSLTPOOL/xml_minimize.xsltEntfernt Kommentare und unnötige Leerzeichen.
SRCBASE/style/rmxmlns.plEntfernt unnötige Definitionen von Namensraum-Präfixen.
--langbaseJede angebotene Sprachen wird einem Land zugeordnet. SPRACHE ist die Kennung einer Sprache, LAND die Kennung des zugeordneten Landes. Wenn die Datei existiert, dann wird diese Datei nach KALDIR/b/*/SPRACHE-LAND.xml. kopiert, und die KALDIR/b/*/a.SPRACHE.xml.gzip-komprimierte Datei wird nach KALDIR/b/*/SPRACHE-LAND.xml. kopiert. Wenn andernfalls die Datei KALDIR/b/*/a.SPRACHE.xml.gz existiert, dann wird diese Datei nach KALDIR/b/*/LAND.xml. kopiert, und die KALDIR/b/*/a.SPRACHE.xml.gzip-komprimierte Datei wird nach KALDIR/b/*/LAND.xml.gz kopiert.KALDIR/b/*/a.SPRACHE.xml.gz
Die Tansformation langcodes_cmd.xslt liest aus der Datei langcodes.dbd die Paare von SPRACHE und LAND.
--indexDas Verzeichnis KALDIR und dessen Unterverzeichnisse (mit Ausnahme der Unterverzeichnisse s (Stil) und b (Kalendergrunddaten) enthalten Index-Dateien index.xhtml. und LANG.index.xhtml. in verschiedenen Sprachen.LANG.gz
Die Liste der Unterverzeichnisse wird von der Transformation tree_cmd.xslt (Text) aus der Baumstruktur erzeugt.DATADIR/tree.xml
Zu einem Unterverzeichnis werden zuerst Index-Dateien aus den Dateien KALDIR/SUBDIR erzeugt. Falls dann keine deutschsprachige Indexdatei DATADIR/SUBDIR/index.xhtml.LANG oder KALDIR/SUBDIR/index.xhtml.de existiert, wird die deutschsprachige Index-Datei mit der Transformation KALDIR/SUBDIR/index.xhtml.de.tree_ht.xslt (Text) aus der Baumstruktur erzeugt. Die Transformation DATADIR/tree.xmlxhtml_setlinks.xslt fügt Verweise auf das Icon der Website und CSS-Regeln ein. Die Transformation xhtml_settarget.xslt läßt die Ziele der Verweise in einem neuen Browser-Fenster erscheinen.
--htaccessErzeugt die Datei : Das Programm KALDIR/b/.htaccess entfernt aus der Quelldatei SRCBASE/style/clean_config.plhtaccess Kommentarzeilen und Leerzeilen.
--no_*Wenn keine der „Aktionsoptionen” --tree, --kalender, --xslt, --mkhelp, --base, --langbase, --index, --htaccess genutzt wird, können die Optionen mit dem Präfix no_" (--no_tree, --no_kalender, --no_xslt, --no_mkhelp, --no_base, --no_langbase, --no_index und --no_htaccess) genutzt werden. Diese schließen die zugehörige Aktion aus. Alle nicht ausgeschlossenen Aktionen werden ausgeführt.
Das Skript kalender unterstützt die Pflege der Kalender der Website. Es stützt sich auch auf Dateien in den Verzeichnissen und SRCBASE/localization, die in anderen Zusammenhängen beschrieben werden.SRCBASE/style