У 2004 році блогер Джон Грубер та програміст Аарон Шварц опублікували невеликий Perl-скрипт із простою ідеєю: простий текст має бути читабельним як є, без тегів, водночас чисто конвертуючись у HTML. Вони назвали це Markdown — навмисна гра слів із "markup".
Двадцять років потому Markdown — формат за замовчуванням для документації ПЗ, комунікації розробників та додатків для нотаток. Він переміг не тому, що був найпотужнішою мовою форматування, а тому що був найчитабельнішим.
Філософія: читабельний вихідний текст
Мета дизайну Грубера: "Markdown-документ має бути публікованим як є, простим текстом."
Корисно знати Аарон Шварц, співтворець Markdown, також відіграв ключову роль у розробці RSS, Creative Commons та Reddit.
Чому розробники його люблять
- Простий текст = зручний для контролю версій. Git порівнює порядково
- Без залежності від постачальника. Відкривається в будь-якому текстовому редакторі
- Легкий. Вимірюється кілобайтами, не мегабайтами
- Конвертується в будь-що. Pandoc: HTML, PDF, EPUB, LaTeX, Word
Де живе Markdown сьогодні
| Сфера | Платформи |
|---|---|
| Хостинг коду | GitHub, GitLab, Bitbucket |
| Комунікація | Slack, Discord, Reddit, Teams |
| Нотатки | Obsidian, Notion, Bear, Typora |
| Документація | Docusaurus, MkDocs, Read the Docs |
| Блоги / CMS | Jekyll, Hugo, Astro, Ghost |
Проблема фрагментації
Оригінальна специфікація Грубера була навмисно неформальною. Неоднозначність призвела до фрагментації. Відповіді: CommonMark (2014, строга специфікація), GitHub Flavored Markdown (GFM, таблиці, списки завдань), MDX (Markdown + React-компоненти), R Markdown (data science).
Базовий синтаксис (заголовки, жирний, курсив, списки, посилання, зображення, код) працює однаково скрізь.
Корисно знати Попри фрагментацію, Грубер ніколи не підтримав CommonMark. Він вважає Markdown форматом для письма, а не мовою програмування.
Обмеження та альтернативи
Markdown не для кожного завдання. Для складних макетів, багатого стилізування чи семантичної насиченості є альтернативи: AsciiDoc, reStructuredText, LaTeX, WYSIWYG-редактори.
Далі
Для практики Markdown з попереднім переглядом у реальному часі: Попередній перегляд Markdown. Вступ до синтаксису: Пишіть у Markdown. Обидва безкоштовні.
