Historia edytora Markdown
Markdown to sposób pisania sformatowanego tekstu, który nadal czyta się naturalnie jako zwykły tekst. Gwiazdki do wyróżnień, krzyżyki do nagłówków i myślniki do list wzięto z tego, jak ludzie już pisali e-maile. Ta strona opowiada, jak ten prosty pomysł stał się językiem plików README, notatek i dokumentacji.
Zrodzony z poczty e-mail
W 2004 roku John Gruber opublikował Markdown na swojej stronie Daring Fireball z pomocą Aarona Swartza. Celem był tekst łatwy do czytania i pisania w takiej postaci, a jednocześnie dający się czysto zamienić na HTML. Wiele konwencji pochodziło z poczty e-mail i starszych formatów tekstowych, takich jak Setext: podkreślenie wiersza znakami równości tworzy nagłówek, gwiazdki wokół słowa je wyróżniają, a wiersze zaczynające się od myślnika tworzą listę. Pierwszy konwerter był pojedynczym skryptem w Perlu.
Zbyt wiele dialektów
Pierwotny opis zostawiał otwarte wiele przypadków granicznych, na przykład jak głęboko wcinać zagnieżdżoną listę albo kiedy pusty wiersz kończy blok. Każda nowa implementacja rozstrzygała to inaczej, więc ten sam tekst mógł wyglądać różnie na różnych stronach. W 2014 roku John MacFarlane, Jeff Atwood i inni opublikowali dokładną specyfikację z setkami przykładów. Najpierw nazywała się Standard Markdown, a po sprzeciwie Grubera zmieniono jej nazwę na CommonMark.
GitHub Flavored Markdown
GitHub uczynił Markdown częścią codziennej pracy programistów dzięki plikom README, zgłoszeniom i komentarzom. W 2017 roku opublikował formalną specyfikację GitHub Flavored Markdown jako ścisłe rozszerzenie CommonMark. Dodaje ona tabele z wyrównaniem kolumn, listy zadań z polami wyboru, przekreślenie dwiema tyldami i automatycznie rozpoznawane linki. Bloki kodu w ogrodzeniu z nazwą języka, już wcześniej popularne, umożliwiły podświetlanie składni.
Dlaczego podglądy są oczyszczane
Markdown dopuszcza surowy HTML, co jest wygodne, ale ryzykowne. Jeśli strona pokazuje Markdown od kogoś innego, ukryty znacznik script, atrybut onerror na obrazie lub link javascript mogłyby uruchomić kod w przeglądarce czytelnika, a taki atak nazywa się cross site scripting. Dlatego ten edytor pokazuje surowy HTML jako tekst, usuwa niebezpieczne schematy linków i przed wyświetleniem filtruje wynik przez listę dozwolonych elementów i atrybutów.
Często zadawane pytania
Kto wymyślił Markdown?
John Gruber stworzył Markdown w 2004 roku, a Aaron Swartz był ważnym wczesnym współpracownikiem i testerem.
Czym różni się CommonMark od GFM?
CommonMark to dokładna specyfikacja rdzenia Markdown. GitHub Flavored Markdown opiera się na nim i dodaje tabele, listy zadań, przekreślenie i automatyczne linki.
Dlaczego mój HTML jest pokazywany jako tekst?
Ze względów bezpieczeństwa. Surowy HTML mógłby zawierać skrypty, więc edytor go maskuje i tworzy tylko elementy, o których wie, że są nieszkodliwe.
Chcesz wypróbować?
Otwórz PictorX w swojej przeglądarce — do uruchomienia nie jest wymagana żadna instalacja ani karta kredytowa.
Otwórz edytor Markdown