markdown links with parentheses 29. Jan 2009
Wer beim Verfassen von Webinhalten nicht mit unhandlichem HTML-Konstrukten hantieren möchte und darüber hinaus sicherstellen möchte, dass seine Website aus validem HTML-Code besteht, der benutzt in aller Regel Textile oder Markdown um seine Texte zu formatieren. Für letztere Auszeichnungssprache gibt es bekanntermaßen zwei Möglichkeiten Links zu formatieren.
[Beispieltext](http://beispiel.com/)
[Beispieltext][1]
[1]:http://www.beispiel.com/
Das ist alles wunderbar solange man keine Klammern verwendet. Wenn man jedoch bei der ersten Syntax eine schließende Klammer oder bei letzterer Syntax eine öffnende oder schließende Klammer in der URL verwendet dann wird die Umsetzung von Markdown in HTML gestört. Nehmen wir mal an ich würde ein Posting über die neue Platte der Stars verfassen und dabei auf den Wikipedia-Artikel verlinken wollen, dann könnte ich folgendes versuchen:
[Stars](http://en.wikipedia.org/wiki/Stars_(band))
[Stars][1]
[1]:http://en.wikipedia.org/wiki/Stars_(band)
Das Resultat des HTML-Rendering für die jeweiligen URLs wäre wie folgt:
<a href="http://en.wikipedia.org/wiki/Stars_(band">Stars</a>)
<a href="http://en.wikipedia.org/wiki/Stars_" title="band">Stars</a>
Es sind offensichtlich die URLs bei den Klammern abgeschnitten. Um das Problem zu beheben kann man einfach eine manuelle URL-Kodierung durchführen. Man ersetzt einfach die öffnende Klammer durch %28 und die schließende Klammer durch %29 und dann klappts auch mit dem HTML-Rendering.
[Stars](http://en.wikipedia.org/wiki/Stars_%28band%29)
[Stars][1]
[1]:http://en.wikipedia.org/wiki/Stars_%28band%29
Ergibt folgendes:
<a href="http://en.wikipedia.org/wiki/Stars_%28band%29">Stars</a>
<a href="http://en.wikipedia.org/wiki/Stars_%28band%29">Stars</a>
Das nächste mal lernen wir dann wie man referentielle Links in Codeblöcke einfügt ohne dass diese als solche interpretiert werden.
Hej du Ruby Fanboy,
ich hatte letztens an dich und dein Blog denken muessen.
Jekyll ist ein “static blog generator”. Du kannst mit deinem Lieblingseditor Blogposts schreiben und auch markdown Syntax verwenden.
Das klingt doch mal nach einem echten Dreamteam!
Ein wenig geeky ist das Ding ja schon, aber hey es gibt sogar einen Typo-Konverter!
Waere es in Python geschrieben wuerde ich mich sofort dran machen und fuer Django einen Blog schreiben, den ich dann damit fuettere. Aber rubygems mag ich nicht so.
Und so hat halt jeder seine Präferenzen :)
Ist ja wirklich praktisch – mit %28 und %29 kann man also diesen unhandlichen HTML-Kram umgehen ;)
Jaja, machen Sie sich nur lustig :P