reStructuredText und Telefonnummernlinks

Dieses Blog wird mit Nikola generiert, einem sogenannten Static Site Generator. Basis für sämtliche Artikel und Seiten ist die vereinfachte Auszeichnungssprache reStructuredText. Da ich kürzlich bei der Gestaltung des Impressums vor der Frage stand, wie man Telefonnummernlinks erzeugt, soll es in diesem Beitrag um eben diese Links gehen und wie man sie in reStructuredText darstellt.

Zugegeben: Telefonnummernlink ist ein etwas sperriges Wort. Gemeint ist die Form von Link bzw. URI, die in RFC 3966 beschrieben wird. Ein solcher Link funktioniert ähnlich wie die Links auf E-Mail-Adressen (mailto:). Statt des E-Mail-Programms wird allerdings auf Mobiltelefonen das Telefonprogramm aufgerufen. Auf einem PC wird abhängig von der Konfiguration eine Fehlermeldung ausgegeben, wenn kein telefoniefähiges Programm installiert ist. Anderenfalls wird das für Telefonnummernlinks installierte Programm (z. B. Skype) aufgerufen.

Man kann allerdings auch mit CSS und Media Queries dafür sorgen, dass auf Mobiltelefonen tatsächlich klickbare Links zu sehen sind, auf einem Desktop-Browser jedoch nur normaler Text.

Um einen Telefonnummernlink wie z. B. +1-800-555-0123 zu erhalten muss der entsprechende Quelltext in HTML so aussehen:

<a href="tel:+18005550123">+1-800-555-0123</a>

Um nun mit reStructuredText und Nikola einen solchen Link zu erzeugen sollte man die Auszeichnung für eingebettete Links nutzen, wie in der Spezifikation beschrieben:

`+1-800-555-0123 <tel:+18005550123>`_

Wer sich fragt, was es mit der obigen Telefonnummer auf sich hat, der sei auf die Internet Movie Database (IMDb) verwiesen.