Loading...
 

markdown: einfach aber mit System

dev:markdown

Markdown ist eine vereinfachte Auszeichnungssprache. imho die aktuell Beste.

'The power of markdown is that it is simple and natural.' (auf einer ML) man schreibts halt wie, man es schreibt. Natürlich kann man sich noch 100000 andere features für markdown ausdenken, aber die meisten Ideen gefährden das 'simple'.

Was ist ein Gliederungspunkt,(dann Überschrift h1-6) was ist wichtig (fett) etc. Auch wenn ich eigentlich ein WikitextFan bin, aber Markdown ist schlauer, da es konsequenter ist, z.B. muss gar nichts geschlossen werden, bei Wikitext z.B. ja noch die Überschriften == bla ==). Aber auch logischer, ein link hat zwar im Html zuerst die URL und dann den Linktext. (so verhält sich Wikitext) aber im Schreibgebrauch schreibt man die Referenz und nicht anders ist eine url auch dahinter.

Die einfache syntax und die (empfehlenswerte) Erweiterung markdown-extra.

Noch mehr

Wie mir dennoch in markdown fehlt ist es einzelne Elemente identifizieren zu können. Zwar kann man jedes Element in einen html Container packen, aber das wird schnell "unsimple". Die meisten Element kann man mit cascading für css und jQuery ansprechen. Einzelne Elemente sollte man immer über logische Separatoren (man nutze 'p' 'div' 'blockquote' etc anstatt nur divs) oder durch übergeordnete Elemente erreichen. Hat man den title im bodytag kann man viele Fälle ansprechen.
Allerdings brauchen Einzelfälle auch eine extra Adressierung:

  • An Links und Bilder kommt man über 'href' oder 'src' ran. Die URL ist meist eine recht eindeutige und auch hoffentlich strukturierte ID
  • Bilder kann man mit einem blinden hash (Fragmentbezeichner '#') ausrichten. Ein angehängtes /pix/sun.png#left lässt sich per css und jQuery ansprechen. Ich würde keinen blinden Get-Paramter nutzen, den dieser wird im Gegensatz zum # an den Server übertragen und kann da eventuell eine fehlerhaften Funktion auslösen. Wenn das Bild zwei mal mit unterschiedlichen hash geladen wird, fragt der Browser diese auch beide an. Wobei die zweite und dritte Anfrage ein 304 Not Modified bekommt, außer beim Forcereload .
  • An den 'Ersten' kommt man mit den Pseudoelemente first und last und an die Reihenfolgen, wenigstens in jQuery, mit eq.

 
In den headings (h1 h2 etc) ist das alles schlecht möglich (außer per jquery-html *grusel*). Hier fehlt mir eine ID schon recht oft. Einerseits teilt das heading das Dokument in logische Abschnitte und die muss man evtl unterschiedlich behandeln. Wichtiger ist mir aber das anspringen der ID per html Anker. MarkdownExtra bietet genau das in den Special Attributes. MarkdownExtra ist auch als js erhältlich

Was echt fehlt

 
... aber nicht in MD sondern in der jeweiligen Anwendung gelöst werden sollte:

  • interne Links wie <code>[[Wort]]</code>
  • Syntax für Transklusionen, auch wenn die Umsetzung dann nicht nur innerhalb des Parsers passiert, sondern sich die Transklusionsquelle aus dem Kontext der technischen Umsetzung bezieht.
  • Tabellen ohne MD, von mir aus mit einer textarea je feld
  • Blöcke (z.B. für Acccordeons)
  • einfache Metagrammatik für Kommunikation (wie z.B. Ticketsysteme: dev:outermarkdown
  • überhaupt diese Kombination mit dann doch strukturierten Daten human-readable-writable content repository

 

Editoren

Auch wenn der syntax recht einfach ist und man nur einen howto:editor braucht, es gibt spezielle editoren

  • zum embedden in websites genügt natürlich eine einfache textarea, aber da muss man sich den gesamten syntax merken und weiss erst nach dem speichern wie es ausschaut. Es gibt oft editoren die zwischen markdown-syntax und dem Preview umschalten oder im splitscreen beide gleichzeitig anzeigen (z.B. epiceditor.com), aber es geht besser:
    • hallojs.org schreibt entweder in einem markdown Feld oder direkt im html, tags können per toolbar im html oder in plain markdown geschrieben werden.
    • simplemdeund markdown-editor zeigt das Endergebnis mit dem markdown-syntax kombiniert an. So stellt er ein kursives Wort auch 'kursiv' dar, aber auch mit dem dazugehörigen Syntax (z.B. *kursiv*). Das hat den Vorteil dass man gleichzeitig flüssiges markdown schreiben kann, dennoch ungeübte User sehen was dann daraus wird, und eine toolbar nutzen können.
  • document.ly als etherpad (colobaration) tool als SAAS
  • der windows client markdownpad.com für umsteiger (wysiwig, wordbuttons und markdown)
  • biggie erstellt aus markdown Präsenstationen
  • tabellen http://www.tablesgenerator.com/markdown_tables

 
Um aus html markdown zu machen: to-markdown für lokales html oder fuckyeahmarkdown.com für verlinkbare Seiten.

intros

 

need

 
und warum sollte man MD nutzen wenns doch Word gibt?

Do not use rich text, it makes it hard to copy/paste. Use Markdown instead.

andere

https://github.com/mundimark/awesome-markdown


Google Search