HTML'den Markdown'a geçmenin tipik nedenleri
HTML, içeriğin nasıl yayımlandığıdır; Markdown ise içeriğin büyük kısmının nasıl yazıldığı ve saklandığıdır. Aralarında dönüştürme ihtiyacı; bir blogu WordPress'ten veya başka bir CMS'ten Hugo, Jekyll ya da Astro gibi bir statik site üreticisine taşırken, eski bir intranet sayfasındaki dokümantasyonu Git tabanlı bir wiki'ye kopyalarken, bir makaleyi Obsidian gibi bir not uygulamasına kaydederken veya web içeriğini bir betik ya da arama dizini için temiz girdi olarak hazırlarken ortaya çıkar. Markdown anlamlı yapıyı, yani başlıkları, vurguları, bağlantıları ve listeleri korur; HTML'yi okumayı ve düzenlemeyi zorlaştıran sunum işaretlemesini ise atar.
Her öğe neye dönüşür
Dönüştürme siz yazarken çalışır ve çoğu Markdown aracının beklentisine uyacak şekilde seçilmiş sabit kuralları izler:
<h1>ile<h6>arası,#ile######arası başlıklara dönüşür.<strong>ve<b>**kalın**;<em>ve<i>_italik_olur.<a href>, varsatitleözniteliğini koruyarak[metin](url)olur.hrefiçermeyen bağlantılar düz metne dönüşür.<img>,olur. Görsel dosyasının kendisine dokunulmaz, bu yüzden bağlantı orijinalsrcnereyi gösteriyorsa orayı gösterir.<ul>listeleri madde işareti olarak-kullanır,<ol>listeleri ise numaralandırılır.<pre><code>, üçlü ters tırnaklar arasında çitli (fenced) bir kod bloğuna dönüşür. Kod öğesindekilanguage-pythongibi bir sınıf, çitin dil etiketi olarak korunur; böylece sözdizimi vurgulama çalışmaya devam eder.<blockquote>>ile başlayan satırlara,<hr>ise* * *işaretine dönüşür.<br>, Markdown'ın zorunlu satır sonu yazma biçimi olan iki sondaki boşluk ve bir satır sonuna dönüşür.
<div>, <span> ve <section> gibi Markdown'da anlamı olmayan öğelerin sarmalayıcısı kaldırılır: metinleri kalır, etiketleri gider. <script>, <style>, <noscript> ve <iframe> içlerindeki her şeyle birlikte kaldırılır; bu da izleme kodunu, gömülü widget'ları ve satır içi CSS'i halleder.
Ters eğik çizgi alan karakterler
Çıktıda sayfada olmayan ters eğik çizgiler fark edebilirsiniz, örneğin 1\. Introduction veya \*important\*. Bu kaçış (escaping) işlemidir ve doğrudur. HTML'deki bir paragraf "1." ve ardından bir boşlukla başlıyorsa, bunu Markdown'da çıplak yazmak onu numaralı bir listeye dönüştürürdü. Düz yıldız işaretleri, alt çizgiler, köşeli parantezler ve satır başındaki # de aynı nedenle kaçışlanır; böylece işlenen Markdown, HTML'nin gösterdiği metnin aynısını gösterir.
Tam bir web sayfasından temiz sonuç almak
Dönüştürücü, sayfanın hangi kısmının makale olduğunu tahmin etmez. Gezinti menüleri, çerez bildirimleri, kenar çubukları ve alt bilgiler sıradan HTML metnidir; bu yüzden bir sayfanın kaynağının tamamını yapıştırmak hepsini de beraberinde getirir. Temiz bir sonuç için yalnızca istediğiniz içeriği verin:
- Sayfayı tarayıcınızda açın, makalenin ilk satırına sağ tıklayın ve İncele'yi seçin.
- Geliştirici araçlarında makalenin tamamını saran öğeyi bulun; çoğu zaman
<article>veya<main>. - Ona sağ tıklayın, Kopyala'yı ve ardından outerHTML'yi kopyala'yı seçin ve bunu buraya yapıştırın.
Akılda tutulması gereken birkaç şey daha:
- Göreli bağlantılar göreli kalır.
/blog/post-2gibi bir bağlantı veyasrc="img/photo.jpg"gibi bir görsel yazıldığı gibi dönüştürülür. Markdown farklı bir sitede yaşayacaksa bunları tam URL'lerle değiştirin. - E-posta HTML'si kötü dönüşür. Bültenler iç içe düzen tablolarından oluşur ve her
<table>bir Markdown tablosuna dönüştürülür. Sonuç, hücrelere sıkıştırılmış koca metin bölümleri içeren tek bir tablodur. E-postanın tamamı yerine tek bir hücrenin iç içeriğini kopyalayın. - Tablolar yalnızca metindir. Her hücre düz metnine indirgenir, bu yüzden hücrelerin içindeki bağlantılar ve biçimlendirme kaybolur ve ilk satır her zaman başlık satırı olur.
- HTML yorumları atılır.
Çıktıyı kontrol etmek
Bir dönüştürmeyi doğrulamanın en hızlı yolu onu geri işlemektir. Markdown'ı Markdown'ı HTML'ye dönüştür aracına yapıştırın ve önizlemeye bakın: başlıklar, listeler ve kod blokları orijinal sayfa yapısıyla eşleşmelidir. Bir web sayfası yerine bir Word dosyasını dönüştürüyorsanız, aynı kuralları uygulayan ancak .docx dosyasını doğrudan okuyan DOCX'i Markdown'a çevir aracını kullanın. Buraya yapıştırdığınız hiçbir şey yüklenmez; HTML tarayıcınız tarafından ayrıştırılır ve dönüştürülür.