W 2004 roku bloger John Gruber i programista Aaron Swartz opublikowali mały skrypt Perl i specyfikację składni z prostą przesłanką: zwykły tekst powinien być czytelny sam w sobie, bez tagów zaśmiecających treść, jednocześnie konwertując się czysto do HTML. Nazwali to Markdown — celowa gra słów z „markup", sugerująca coś lżejszego i bardziej ludzkiego.
Dwadzieścia lat później Markdown jest domyślnym formatem pisania dla dokumentacji oprogramowania, komunikacji deweloperów, aplikacji do notatek i znacznej części treści internetowych.
Filozofia: czytelny tekst źródłowy
Zasada projektowa Grubera: „Dokument sformatowany w Markdown powinien być publikowalny jako zwykły tekst, bez wyglądania na otagowany."
**pogrubienie**wizualnie sugeruje nacisk bardziej niż<strong>pogrubienie</strong>## Nagłówekjest czytelny na pierwszy rzut oka- elementwygląda jak punkt listy nawet bez renderowania
Warto wiedzieć Aaron Swartz, współtwórca Markdown, odegrał również kluczową rolę w rozwoju RSS, Creative Commons i Reddit.
Dlaczego deweloperzy go kochają
- Zwykły tekst = przyjazny dla kontroli wersji. Git może porównywać go linia po linii.
- Brak uzależnienia od dostawcy. Otwiera się w każdym edytorze tekstu, na każdym systemie operacyjnym.
- Lekki. Mierzony w kilobajtach, nie megabajtach.
- Konwertuje się na wszystko. Pandoc może go przekształcić w HTML, PDF, EPUB, LaTeX, Word.
Gdzie Markdown żyje dzisiaj
| Domena | Platformy |
|---|---|
| Hosting kodu | GitHub, GitLab, Bitbucket |
| Komunikacja | Slack, Discord, Reddit, Teams |
| Notatki | Obsidian, Notion, Bear, Typora |
| Dokumentacja | Docusaurus, MkDocs, Read the Docs |
| Blogowanie / CMS | Jekyll, Hugo, Astro, Ghost |
Problem fragmentacji
Oryginalna specyfikacja Grubera była celowo nieformalna i niekompletna. Doprowadziło to do fragmentacji: różne implementacje interpretowały ten sam Markdown inaczej. Społeczność odpowiedziała próbami standaryzacji:
- CommonMark (2014) — ścisła, jednoznaczna specyfikacja
- GitHub Flavored Markdown (GFM) — CommonMark plus tabele, listy zadań, przekreślenie
- MDX — Markdown plus komponenty JSX
- MultiMarkdown — przypisy, cytaty, notacja matematyczna
- R Markdown — Markdown z wykonywalnymi blokami kodu R
Podstawowa składnia (nagłówki, pogrubienie, kursywa, listy, linki, obrazy, kod) działa tak samo wszędzie.
Warto wiedzieć Pomimo fragmentacji John Gruber nigdy nie poparł CommonMark ani żadnej następczej specyfikacji. Uważa Markdown za format pisania, nie język programowania.
Ograniczenia i alternatywy
Markdown nie jest odpowiedni do każdego zadania. Dla złożonych layoutów, bogatego stylowania lub bogactwa semantycznego istnieją alternatywy: AsciiDoc, reStructuredText, LaTeX i edytory tekstu sformatowanego.
Dowiedz się więcej
Aby poćwiczyć Markdown z podglądem w czasie rzeczywistym, wypróbuj narzędzie Podgląd Markdown. Praktyczne wprowadzenie do składni znajdziesz w tutorialu Pisanie w Markdown. Oba są darmowe i działają w przeglądarce.
