Kisah di balik editor Markdown

Markdown adalah cara menulis teks berformat yang tetap enak dibaca sebagai teks biasa. Tanda bintang untuk penekanan, tanda pagar untuk judul, dan tanda hubung untuk daftar diambil dari cara orang sudah menulis email. Halaman ini menceritakan bagaimana gagasan sederhana itu menjadi bahasa file README, catatan, dan dokumentasi.

Buku catatan terbuka dan layar terbagi yang bercahaya dengan teks biasa di satu sisi dan teks berformat di sisi lain di atas meja gelap
Buku catatan terbuka dan layar terbagi yang bercahaya dengan teks biasa di satu sisi dan teks berformat di sisi lain di atas meja gelap

Lahir dari email

Pada 2004 John Gruber menerbitkan Markdown di situsnya Daring Fireball dengan bantuan Aaron Swartz. Tujuannya adalah teks yang mudah dibaca dan ditulis apa adanya, namun tetap bisa diubah dengan rapi menjadi HTML. Banyak konvensi berasal dari email dan format teks lama seperti Setext: menggarisbawahi baris dengan tanda sama dengan untuk judul, mengapit kata dengan bintang untuk menekankannya, dan memulai baris dengan tanda hubung untuk daftar. Pengonversi pertama hanyalah satu skrip Perl.

Terlalu banyak dialek

Deskripsi aslinya membiarkan banyak kasus batas terbuka, misalnya seberapa jauh daftar bersarang harus menjorok atau kapan baris kosong mengakhiri blok. Setiap implementasi baru memutuskan secara berbeda, sehingga teks yang sama bisa tampil berbeda di situs yang berbeda. Pada 2014 John MacFarlane, Jeff Atwood, dan lainnya menerbitkan spesifikasi yang tepat dengan ratusan contoh. Awalnya bernama Standard Markdown, lalu setelah keberatan Gruber namanya diganti menjadi CommonMark.

GitHub Flavored Markdown

GitHub menjadikan Markdown bagian dari pekerjaan harian programmer melalui file README, isu, dan komentar. Pada 2017 GitHub menerbitkan spesifikasi resmi GitHub Flavored Markdown sebagai superset ketat dari CommonMark. Spesifikasi ini menambahkan tabel dengan perataan kolom, daftar tugas dengan kotak centang, coretan dengan dua tilde, dan tautan yang dikenali otomatis. Blok kode berpagar dengan nama bahasa, yang sudah populer, memungkinkan penyorotan sintaks.

Mengapa pratinjau dibersihkan

Markdown mengizinkan HTML mentah, yang praktis tetapi berisiko. Jika sebuah halaman menampilkan Markdown dari orang lain, tag script tersembunyi, atribut onerror pada gambar, atau tautan javascript dapat menjalankan kode di browser pembaca, serangan yang disebut cross site scripting. Karena itu editor ini menampilkan HTML mentah sebagai teks, menghapus skema tautan yang tidak aman, dan menyaring hasilnya dengan daftar elemen dan atribut yang diizinkan sebelum ditampilkan.

Pertanyaan yang sering diajukan

Siapa yang menciptakan Markdown?

John Gruber menciptakan Markdown pada 2004, dengan Aaron Swartz sebagai kolaborator dan penguji penting sejak awal.

Apa perbedaan CommonMark dan GFM?

CommonMark adalah spesifikasi tepat untuk inti Markdown. GitHub Flavored Markdown dibangun di atasnya dan menambahkan tabel, daftar tugas, coretan, dan tautan otomatis.

Mengapa HTML saya ditampilkan sebagai teks?

Demi keamanan. HTML mentah bisa membawa skrip, jadi editor meloloskannya sebagai teks dan hanya menghasilkan elemen yang diketahui tidak berbahaya.

Siap ke coba itu?

Buka PictorX di browser Anda — tidak instalasi, tidak credit kartu diperlukan ke mulai.

Buka editor Markdown