Rorkvell hat aus technischer Sicht ein paar Besonderheiten zu bieten.
Mehrsprachigkeit
Die meisten Seiten gibt es in zwei Sprachen: Deutsch und Englisch. Vorgesehen ist auch, Rorkvell in noch weiteren Sprachen anbieten zu können. Dazu benötige ich jedoch freiwillige Übersetzer. Die Auswahl der Sprache erfolgt automatisch anhand der Browsereinstellungen. Falls keine bevorzugte Sprache eingerichtet ist, wird Deutsch gewählt. Im Footer ist die jeweils andere Sprachversion manuell anwählbar.Mehrere Dateiformate
Die meisten Seiten in Rorkvell sind außerdem in zwei Formaten verfügbar: html und xhtml. Die Auswahl erfolgt ebenfalls automatisch anhand des http accept headers. Falls der Client (Browser) diesbezüglich keine Wünsche hat, wird html ausgeliefert (mime-Typ text/html). Der Internet Explorer hat hier entweder keine Wünsche, oder er fordert explizit text/html an. Der Firefox fordert explizit application/xhtml+xml als bevorzugtes Dateiformt an und bekommt dann die xhtml Version geliefert. Auch hier ist die jeweils andere Version im Footer manuell wählbar. Im Firefox kann dieses Verhalten über die Seite about:config in der Variablen network.http.accept.default angepasst werden. Meine persönlichen Einstellungen dort lauten z.B.:text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png;q=1.0,*/*;q=0.5
Achtung: Der Internet Explorer kann die xhtml-Version nicht darstellen! Falls man diese manuell anwählt, wird die Datei zum Download angeboten.Durch den Besucher wählbare Styles
Sofern vom Browser unterstützt kann der Besucher zwischen mehreren Styesheets wählen. Rorkvell bietet thematisch passende Styles für die sechs "Elemente" aus dem Rollenspiel an: Erde Erz/Stein, Feuer, Luft, Wasser und Eis. Der voreingestellte Stil ist "Erde", da auch der IE diesen einigermaßen anzeigen kann. Falls ein anderer als der voreingestellte Stil gewählt wird, muß dieser auf einer neuen Seite erneut gewählt werden, es sei denn, der Browser unterstützt von Haus aus oder per Erweiterung permanente alternative Stile. Für den Firefox gibt es dazu eine passende Erweiterung. Der Intenet Explorer bleibt hierbei außen vor, da dieser keine alternate stylesheets unterstützt.
Anmerkung: Ich behalte mir vor, gelegentlich den voreingestellten Stil zu ändern. Das Vorhandensein der anderen Stile bleibt davon unberührt.Navigation
Zusätzlich zu den üblichen Navigationsmitteln wie Navigationsleiste und Links im Text ist die Site-Struktur uch im head-Bereich durch das <link> Element definiert. Diese Art der Navigation kann man beispielsweise mit dem Textbrowser Lynx nutzen, oder mit dem Firefox durch eine Erweiterung. Dies ermöglicht einen sehr direkten und schnellen Zugriff auf die diversen Abschnitte und Seiten. Für die verwendeten Namen habe ich eine XMDP Dokumentation erstellt, die direkt als Profil eingebunden werden kann.Creative Commons Lizenz
Sämtliche Seiten stehen unter einer Creative Commons Lizenz.Mikroformate
Wo immer sinnvoll habe ich für die Klassennamen solche aus dem Microformats Projekt gewählt. Andere Klassennamen sind bei mir dokumentiert.Access Key
So weit vorhanden, habe ich die Tastatursteuerung nach dem Vorschlag von Jan Eric Hellbusch implementiert. Dabei werden in der Tabelle unterhalb der Navigation nur die Ziffern angezeigt, die auch tatsächlich zu einem Ziel führen. So wird eine relativ einfache und konsistente Navigation mit der Tastatur möglich. Die Navigation wird in den meisten Browsern durch Alt-Zifferntaste ausgeführt. In neueren Firefox Versionen stattdessen mit Shift-Alt-Ziffer. Man kann dieses Verhalten ändern, wenn man die Seite about:config aufruft und dort zwei Einträge wie folgt ändert:- ui.key.chromeAccess ändern von 4 nach 5
- ui.key.contentAccess ändern von 5 nach 4
Sitemap
Auch eine Google Sitemap gibt es hier. Diese Sitemap wird automatisch erstellt durch ein kleines Shellscript. Desweiteren experimentiere ich gerade mit einer besseren Version der Sitemap, die auch die Hierarchie der Site widergibt.XSL stylesheets
Damit diese ganze Vielfalt an Formaten und Sprachen konsistent bleibt, werden sämtliche Dateien aus einer XML-Datei erstellt unter Verwendung einiger selbstgeschriebener XSL-Stylesheets. Wer mag, kann sich diese ziehen und selber damit experimentieren.
- html401.xsl, das Haupt-Stylesheet zur Erzeugung der html-Dateien.
- xhtml11.xsl, das Haupt-Stylesheet zur Erzeugung der xhtml-Dateien.
- style.xsl, die zusammengefassten CSS Stylesheet Informationen.
- meta.xsl, Templates zur Generierung einiger Standard-Metadaten.
- nav.xsl. Die Generierung der Navigationen.
Der Aufbau der XML Quelldateien ist recht einfach. Sie sind sehr html-Ähnlich aufgebaut. Im Unterschied zu html muß hier das
head
und dasbody
Element beide einlang=".."
Attribut haben. Ebenso im Unterschied zu html kann eine solche Datei mehrerehead
undbody
Sektionen haben, jeweils unterschieden durch die Sprache. Dem XSL-Stylesheet wird per ParameterPARAM LANG ..
die Sprache mitgeteilt, die aus dieser Datei herausgefischt werden soll.Im
head
Bereich sollten die Links (link rel=".."..
stehen, die im Ergebnis in der Navigationsleiste auftauchen sollen. Wichtig sind die zwei Links mitrel="this"
undrel="top"
. Daraus werden Verzeichnisinformationen für die relativen Links gewonnen.Im
body
Bereich sollte sich als Erstes die Überschrift (h1
) befinden, danach der Hauptcontainerdiv id="main"
. Dieser kann beliebiges html beinhalten.
Derzeit entwickle ich diese Stylesheets für den eigenen Gebrauch. Dokumentation habe ich nicht vorrätig. Wer damit experimentieren möchte, kann mich gerne anschreiben. Ich bin gerne bereit, Fragen zu beantworten und Anregungen einzubauen. Too Cool for Internet Explorer