HTML5-Neuerungen für nummerierte Aufzählungen

Canvas ist großartig, neue semantische Elemente zum Strukturieren des Codes sind endlich hier und dank unzähliger APIs sparen wir uns zukünftig viel Tipparbeit bei Webprojekten. HTML5 ist unumstritten eine tolle Sache. Unter der Spezifikationshaube verstecken sich neben den großen neuen Technologien aber auch einige kleine Neuerungen die eine Erwähnung wert sind. Grund genug diesen versteckten kleinen Änderungen einen Platz zu geben und sie vorzustellen. Heute am Plan: Neue Attribute für nummerierte Aufzählungen.

Allgemeines zu nummerierten Aufzählungen

Das <ol>-Element verwendet man für nummerierte Aufzählungen. In diesem HTML-Element werden die einzelnen Aufzählungspunkte als <li>-Elemente definiert. Bis auf die Verwendung von Klassen und Ids führt ein Großteil der Entwickler, bei diesem Tag, auch keine weiteren Änderungen mehr durch. Als es XHTML noch nicht gab und überall HTML 4.01 verwendet wurde, gab es allerdings Attribute, die, zumindest semantisch gesehen, bei diesem Element verwendet werden durften und nützliche Vorteile boten. Mit HTML5 und der dazugehörigen Spezifikation im Gepäck, dürfen diese wieder benutzt werden. Ein Blick darauf lohnt sich.

Zähler manipulieren mit dem value-Attribut

Mit dem value-Attribut des <li>-Elementes kann die dargestellte Zahl einer Aufzählung manipuliert werden – Egal wo sich das Listenelement befindet. Die weitere Zählung der Elemente wird dadurch nicht beeinflusst. Ein Anwendungsbeispiel wäre die doppelte Notierung zweier Elemente. Die gute Nachricht: Das value-Attribut funktioniert in jedem Browser und kann somit schon heute genutzt werden.

<ol>
    <li>Das ist ein Test</li>
    <li value="1">Und hier möchte ich eine andere Nummer haben</li>
    <li>Hier gehts aber ganz normal weiter</li>
</ol>

Startwert von Listen festlegen

Soll die Liste erst mit einer bestimmten Zahl zu zählen beginnen, gibt es das start-Attribut für <ol>-Elemente. Auch diese Eigenschaft kann schon bedenkenlos in HTML5-Dokumenten verwendet werden.

<ol start="12">
    <li>Zählt ab 12 aufwärts</li>
    <li>Und so weiter...</li>
</ol>

Rückwärts zählen

Wer Listen darstellen möchte, deren Aufzählung rückwärts laufen, kann laut Spezifikation das reversed-Attribut nutzen. Browser-Support gibt es allerdings noch nicht. Sofern man also damit arbeiten mag, muss entweder das value-Attribut oder die Verwendung von JavaScript herhalten.

<ol reversed>
    <li>Diese Zählung läuft rückwärts</li>
    <li>Sofern Browser dies darstellen könnten!</li>
</ol>


Aufzählungstyp definieren

Wer derzeit römische Zahlen bei Listenelementen verwenden möchte, musste auf CSS zurückgreifen. Dieser Ort ist vermutlich, da es sich um die Gestaltung eines Elementes handelt, auch nicht ganz falsch. Gegenargumentiert ist es rein semantisch jedoch nur via CSS zu erkennen, um welche Art der nummerischen Aufzählungen es sich handelt. Zur Deklaration im Markup gibt es nun das type-Attribut für <ol>-Elemente. Möglich sind decimal (Dezimalzahlen), lower-latin (kleingeschriebenes Lat. Alphabet), upper-latin (großgeschriebenes Lat. Alphabet), lower-roman (kleingeschriebene römische Zahlen) und upper-roman (großgeschriebene römische Zahlen). Auch das ging bereits früher und funktioniert somit auch weiterhin problemlos in allen Browsern.

<ol type="lower-roman">
    <li>Kleingeschriebene römische Zahlen sind toll</li>
    <li>Und das ganz ohne CSS</li>
</ol>

Die Ergebnisse aller Beispiele können hier angesehen werden. Unterm Strich können wir ab jetzt (wieder), bzw. baldigst, Dinge mit nummerierten Aufzählungen anstellen, die bisher eher umständlich oder gar nicht zu bewerkstelligen waren. Eine kleine Neuerung also die man kennen und im besten Fall, bereits heute nutzen sollte.

Makros im Terminal via alias definieren

Eigene Makros im Terminal definieren und dadurch täglich Zeit sparen — das klingt nach einer tollen Sache auf die ich heute via Screencast auf Nettuts+ gestoßen bin. Um was geht’s genau? Wer täglich mit dem Terminal arbeitet, wird nicht darüber hinweg kommen, immer und immer wieder die gleichen Befehle zu tippen. Sei es das Wechseln zum immer gleichen Ordner, das Ändern von Dateirechten oder die Neuanlage eines Projektes mit der immer wieder gleichen Struktur. Die täglichen Eingaben wiederholen sich und Möglichkeiten zur Optimierung werden gesucht. Genau für diesen Fall wurden alias erschaffen, die genauso wie Makros zuvor definierte Aktionen ausführen.

Ein einfaches alias-Beispiel

Folgende alias-Definition genügt, um zukünftig lediglich mit der Eingabe von “doc” auf die im Benutzerordner befindlichen Dokumente zu wechseln.

alias doc='cd ~/Documents'


Wird diese alias-Definition direkt im Terminal eingegeben, gilt dieses Makro lediglich bis zur Beendigung der Sitzung. Um die Funktionalität der Kurzschreibweise permanent zu nutzen, gibt es die Datei .bash_profile im Benutzerordner (auf Mac OSX). In dieser können alle Verweise notiert und gespeichert werden. Um anfänglichen Verwunderungen vorzubeugen: Änderungen in dieser Datei werden erst nach einem Neustart der Sitzung aktiv.

Das tägliche Navigieren in das Theme-Verzeichnis des WordPress-Blogs: In der ersten Zeile sehen wir den täglichen Aufruf, die Optimierung direkt darunter. Kürzer, schneller und einfacher zu merken.

Auch komplexere Vorgänge können in dieser Datei optimiert werden. So ist es möglich, Funktionen samt Parameter zu definieren, um so mehr als einen Befehl via alias-Funktion auszuführen.

Eine einfache Funktion definieren

function test() { cd /Users/vogrim/Desktop; mkdir $1;}

Dadurch ist es zukünftig möglich, mit der Eingabe von “test meinName”, am Desktop einen neuen Ordner anzulegen (der Name wird durch den ersten Parameter definiert). Die Variable $1 gilt als Platzhalter für den übergebenen ersten Parameter.

Was kann ich damit jetzt eigentlich machen?

Da unsere zwei definierten “Makros” zugegebenermaßen nicht viel Ersparnis bringen, liegt es nun am Benutzer selbst, Optimierungen für seinen täglichen Ablauf zu finden und die Möglichkeiten von alias im Terminal zu nutzen. Giles Lavelle veröffentlichte auf github ein Beispiel wie ein optimiertes bash_profile-File aussehen könnte.

Unter dem Strich bieten alias eine nützliche Methode um tägliche Abläufe zu optimieren und Tipparbeit und Nerven zu sparen.