Sunday, March 01, 2009

Markdown ve ReStructuredText: Hafif Siklet Isaretleme Dilleri (Lightweight Markup Languages)

Dökümentasyon ya da basit belgeler oluştururken HTML ya da XML gibi bir işaretleme dili kullanmak zor gelebilir. WYSWYG türü Word benzeri programlarda belge hazırlamak da bazı konularda özgürlüğünüzü kısıtlar.

Bu gibi durumlarda İngilizce lightweight markup language olarak tabir edilen hafif sıklet işaretleme dillerini kullanmak uygun bir çözüm. Bu belgelerde metnin nasil gorunecegiyle ilgili kucuk isaretler kullanilmakta ve bu sekilde duz metin de olsa okunakli bir gorunum elde edilmekte. Daha sonra bu metinler bazi parserlardan gecirilip diger formatlara aktarilabilmekte.

Ben önceden reStructured Text kullanıyordum. Bugün markdown adı verilen (markup vs markdown ;) bir işaretleme diliyle karşılaştim. İkisi birbirine oldukça benziyor; genel kanı, LaTeX ya da PDF gibi formatlara dönüştürme hedefiniz yoksa ve inline (kaynak kod içi) dökümentasyon hazırlamıyorsanız, yani sadece HTML çıktısıyla ilgileniyorsanız markdown'in daha kolay bir çözüm olduğu yönünde. 

Ayrica rst'nin kullanımı emacs'te oldukça kolay olmakla beraber markdown daha metin editör bağımsız bir ortam sunuyor gibi.

Markdown'da belge hazirlama

Baslik ve altbasliklar

Bunlar baslik ya da altbaslik metninin basindaki # isaretlerinin sayisiyla belirleniyor. Ornegin en ust baslik (h1) icin, # Ana Baslik yazmaniz yeterli. Bir alt baslik (h2) da bu durumda ## Alt baslik olarak yaziliyor.

Kalin ve italik yazilar

Italik yazilacak metinlerin soluna ve sagina * isareti koymak gerek. Kalin olmasi icin ise sola ve saga ** koymak gerek. Ornegin, *bu metin italik*, ** bu metin kalin olacak**.

Listeler

Liste olusturmak icin her ogeyi alt alta yazip satir basina -, * gibi isaretleri koymak gerekiyor. Icice liste olusturmak icin de iki satir iceriden yeni bir isaretle baslamak gerek. Ornegin:

- elma
  * golden
  * starking
  *grannysmith
- armut
- muz

Link (baglanti) verme

Satirici ve referans olarak ikiye ayriliyor. Ayni linki birden fazla kullanacaksaniz referans turunu tercih edebilirsiniz.

Satirici link vermek icin Bu [ornek link](http://example.com/) kullanin. Referans linki vermek icin ise su kalibi kullanin. Ornek:

[gorunmesini istediginiz metin][referans adi]

Daha sonra, asagida bir yerde referanslarin hangi URL'e isaret ettigini gostermek icin,

[referans adi] http://www.cnn.com kismini ekleyin.

Kod bloklari

Kod bloklari icin basa ve sonra ` isareti koyun.

Daha fazla bilgi icin: Markdown Basics'e goz atin. Markdown'i aninda HTML'e donusturen bir online editor icin: http://attacklab.net/showdown/

Diger Kaynaklar

  1. http://en.wikipedia.org/wiki/Lightweight_markup_language

  2. Bir karsilastirma - http://stackoverflow.com/questions/34276/markdown-versus-restructuredtext

  3. Markdown'la ilgili kaynaklar:
  4. http://en.wikipedia.org/wiki/Markdown
  5. Online markdown derleyici: http://daringfireball.net/projects/markdown/dingus

  6. reStructuredText ile ilgili kaynaklar:
  7. http://docutils.sourceforge.net/rst.html

No comments: