markdown: einfach aber mit System

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 url). (so verh├Ąlt sich Wikitext) aber im Schreibgebrauch schreibt man die Referenz und nicht anders ist eine ((dev: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 (p: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

  • slideshow-s9. markdown
  • [http://mashable.com/2013/06/24/markdown-tools/ markdown-tools] krass gibt es da viele gute! tools

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