ماركداون

ماركداون  هي رموز للتنسيق تعتمد على لغة ترميز بسيطة، أنشأها جون غروبر وساهم فيها آرون سوارتز، تسمح بكتابة محتوى نصي بسيط يتميز بسهولة الكتابة والقراءة، ثم تحويله إلى لغة HTML أو XHTML.
Markdown 1.0.1 readme source code 
وهي تأخذ العديد من التعليمات من الأعراف الحالية التي تستخدم لترميز نص عادي في البريد الالكتروني. النص المنسق بواسطة تلك الرموز ينبغي أن يكون قابلاً للقراءة كما هو، من دون النظر إلى التوصيفات وعلامات التنسيق ،
Markdown Syntax 
على عكس النص المنسق بلغة توصيف أخرى مثل HTML، التي لديها تنسيقات واضحة وتعليمات تنسيق معينة. ماركداون تقوم ببناء جملة منسقة مقروءة وأيضاً يمكن تحويلها إلى HTML بسهولة.

الماركداون هو مخطوطة بيرل كتبها غروبر  والتي تحول النص المدخل المرمز إلى نص HTML أو XHTML صالح. ويمكن استخدامها كبرنامج نصي مستقل أو كبرنامج مساعد  لبلوزكسوم أو موفابل تايب أو كمرشح نصوص ل BBEdit.

منذ ذلك الحين أصبح يمكن استخدامها من قبل الآخرين بوصفها كتلة برمجية من بيرل متوفرة في أرشيف شبكة بيرل الشامل، واستخدمت أيضاُ في مجموعة لغات برمجة متنوعة. يتم توزيعه تحت رخص بي إس دي Daring Fireball: Markdown: License  ويمكن أن يُتضمن أو يكون متاحاً كبرنامج مساعد للعديد من أنظمة إدارة المحتوى.

تستخدم هذه اللغة في مواقع مثل غيت هاب، وريديت وستاك أوفرفلو، وسورس فورج.نت لتسهيل المناقشة بين المستخدمين.

 أمثلة على قواعد اللغة 
 عناوين 
نص العنوان في HTML ينتج عن طريق استبدال عدد الهاشات (#) الموجودة قبل نص العنوان الخاضع لمستوى الترويس المطلوب (HTML توفر ست مستويات لترويسات العناوين)، مثل:
 # مستوى الترويس-(عنونة) أول

 #### مستوى الترويس-(عنونة) رابع
هذا ما يترجم في لغة HTML إلى:
= مستوى ترويس (عنونة) أول =
==== مستوى ترويس (عنونة) رابع ====

اختياريا، الترويسات يمكن أن يتم إغلاقها (ختمها) بهاشات (#) ليس بالضرورة أن يطابق عددها عدد الهاشات الموجودة في بداية الترويسة، وفقط لأسباب تجميلية يمكن أن نكتب:
 # مستوى الترويس-(عنونة) الأول #

 #### مستوى الترويس-(عنونة) الرابع ####

 ## مستوى الترويس-(عنونة) الثاني ##
مستويا العنونة الأول والثاني يمكن أن يستخدما قاعدة لغوية أخرى للتعبير عنهما:
 مستوى الترويس-(عنونة) الأول 
 ===================

 مستوى الترويس-(عنونة) الثاني
 --------------------

 الفقرات 
الفقرة: هي سطر واحد أو أكثر من النص يفصل بينها سطر فارغ أو أكثر.لا ينبغي أن تبدأ الفقرات العادية بمسافة بادئة أو بعلامات تبويب.

 هذه فقرة. وهي مكونة من جملتين.
 هذه فقرة أخرى. وتتكون من جملتين أيضاً.

يترجم المثال أعلاه إلى:
<p> هذا الفقرة. فقد اثنين من الجمل. </ P>
<p> هذا فقرة أخرى. كما أن لديها جملتين. </ P>

 فواصل الأسطر 
لإدراج فاصل أسطر، قم بإنهاء السطر بمسافتين فارغتين أو أكثر متبوعة بزر الإدخال (Enter) كمثال:
 def␣show_results␣␣
 end
و هذا ما يترجم في لغة HTML إلى:
 def show_results<br />end

 القوائم 
هناك نوعين من تصنيف القوائم: قوائم مرتبة وقوائم غير مرتبة كما في لغة html.

يتم إنشاء قائمة غير مرتبة عن طريق وضع عدد من المسافات البادئة و «الرموز النقطية» أمام عنصر القائمة. «الرموز النقطية» تشمل " * "، " + "،" - "

 *عنصر في قائمة غير مرتبة.
 +بند ويضمن 4 مسافات بادئة.
 *عنصر آخر في قائمة غير مرتبة.
 *أيضاً عنصر آخر.

وهذا يترجم إلى:
<ul>
  <li> عنصر في قائمة غير مرتبة.
    <ul>
      <li> بند ويضمن 4 مسافات بادئة.</li>
    </ul>
  </li>
  <li>عنصر آخر في قائمة غير مرتبة.</li>
  <li>أيضاً عنصر آخر.</li>
</ul>

أما بالنسبة للقوائم المرتبة قد لاتحتاج القوائم أن تكون مرتبة بما يوافق ترتيب العناصر.

 1. عنصر في قائمة تعداد.
 1. A بند فرعي، بادئة مع 4 مساحات.
 2. بند آخر في قائمة تعداد.
 3. بند آخر.
 4. بند آخر.

وهذا يترجم بلغة html إلى:
<ol>
  <li>عنصر في قائمة تعداد. 
    <ol>
      <li> بند فرعي، بادئة مع 4 مساحات.</li>
    </ol>
  </li>
  <li> بند آخر في قائمة تعداد.</li>
  <li>بند آخر.</li>
  <li>بند آخر.</li>
</ol>

إذا وضعت أسطر فارغة بين العناصر، وستُحلل على أنها فقرات. يمكن إنشاء قائمة عناصر لائحة متعددة الفقرات من خلال المسافات البادئة بنسبة 4 مسافات أو علامة التبويب . على سبيل المثال:

 * عنصر قائمة.
 مع فقرات متعددة.
 * عنصر آخر.

يترجم إلى لغة html كالتالي:

<ul>
  <li><p>عنصر قائمة</p><p>مع فقرات متعددة</p></li>
  <li>عنصر آخر</li>
</ul>

 نص مؤكد 
النص المؤكد يمكن أن يكون بنى جمل متعددة، إما ترفق مع العلامات النجمية أو تبرز. مرفق مع علامة نجمية واحدة أو تسطير يمثل المائل.
 التركيز (مائل) * أو توكيد (مائل) _وهذا يترجم إلى: <EM> التركيز (المائل) </ EM> أو <EM> التركيز (المائل) </ EM>
أرفق مع اثنين من العلامات النجمية أو يبرز ويمثل بحروف بارزة.
 تركيز قوي (بحروف بارزة) ** أو __ تركيز قوي (بحروف بارزة) __

 النص البرمجي (الشيفرة) 
لإدراج نص برمجي (منسق بخط ثابت العرض)، بإمكانك إما أن تحيط الكود المضمن بإشارات اقتباس خلفية (`) أو أن تبدأ السطور العديدة من الكود على الأقل مع أربع مسافات بادئة
علامات الاقتباس الخلفية يمكن أن تستخدم في الجملة لتمثيل الكود:
 نص ما مع ` شيفرة برمجية ما ` بداخله
هذا ما يترجم في لغة HTML إلى:
 نص ما مع <code>شيفرة برمجية ما </code> بداخله
الشيفرات البرمجية التي تتوضع على عدة أسطر أو القطع الأطول من الكود يجب أن تسبق بأربع مسافات بادئة كما المثال:
 سطر 1 من الكود
 سطر 2 من الكود
 سطر 3 من الكود
هذا ما يترجم في لغة HTML إلى:
<pre>
  <code>
سطر 1 من الكود
سطر 2 من الكود
سطر 3 من الكود
  </code>
</pre>
الخيار الثاني يجعل ماركداون تحتفظ بالمسافات الفارغة -على عكس السلوك المعتاد للغة الذي يعمل على إزالة فواصل الأسطر والمسافات الزائدة، قد يتم كسر المسافات البادئة وتغيير المظهر الخارجي للكود.

 الاقتباس 
يمكن إنشاءاقتباس بإضافة >

 > "سيتم إحاطة هذه الفقرة بأكملها من النص في عنصر اقتباس.
 عناصر الاقتباس قابلة لإعادة التدفق. تستطيع
 إنهاءالنص بالشكل الذي يرضيك تعسفياً، وسوف يكون توزيعه
 في عنصر الاقتباس فقرة واحدة ".

ويترجم إلى نص html كالتالي:

<blockquote><p> "سيتم إحاطة هذه الفقرة بأكملها من النص في عنصر اقتباس.
عناصر الاقتباس قابلة لإعادة التدفق. تستطيع
إنهاءالنص بالشكل الذي يرضيك تعسفياً، وسوف يكون توزيعه
في عنصر الاقتباس فقرة واحدة ".</p></blockquote>

 صور 
للصور تركيب مشابه ليربط مع علامة التعجب السابقة.

 ![النص البديل](/path/to/img.jpg)

هذا يترجم إلى لغة html كالتالي:

<img src="/path/to/img.jpg" alt="النص البديل" />

يمكن إضافة العنوان بشكل اختياري إلى نهاية عنوان الرابط بين علامتي اقتباس كما هو موضح:

 ![النص البديل](/path/to/img.jpg «العنوان الاختياري»)

يترجم إلى لغة html كالتالي:

<img src="/path/to/img.jpg" alt="النص البديل" title="العنوان الاخيتاري" />

يمكن إضافة حاشية للصور مثل الروابط:

 ![Alt text][id]

كما يجب الإشارة إلى أنه يجب تحديد url لاحقاً في المستند.
 [id]: url/to/image  "العنوان الاختياري"

 مسطرة أفقية 
يتم إنشاء مسطرة أفقية (خط أفقي فاصل) بكتابة ثلاثة أو أكثر من الشرطات أو الشرطات السفلية أو النجوم. ويمكن إضافة مسافات بينها. كل من الأسطر التالية سوف ينتج مسطرة أفقية:
***
***
*****
---
---------------------------------------
جميعا تُترجم في HTML إلى <hr />.

 المحررات 
بالرغم من أن ماركداون هي لغة ترميز تتعلق بالحد الأدنى من الموارد وسهلة القراءة والتحرير بواسطة محرر نصوص عادي إلا أنه يوجد محررات مصممة خصيصاً تتيح معاينة الملفات مباشرة مع كافة التنسيقات، يوجد عدد من هذه المحررات متوافرة لكل من المنصات الأكثر انتشاراً. كما ويوجد إضافة تقوم بتلوين الكلمات المحجوزة من اللغة مدمجة مع كل من المحررات emacs , gedit و vim

 تطبيقها 
تطبق المارك داون في كثير من الأطر المختلفة، والمنصات واللغات.
 مولد التوثيق المصدري دي أكسجين يدعم المارك داون مع ميزات اضافية.Doxygen Manual: Markdown support  * *آرستدويو هي بيئة تطوير متكاملة من R يوفر ميزة تغليف التوابع بالسي++ لتنفيذ الماركدوان ببرمجيات سنداون.rstudio/Markdown.cpp at master · rstudio/rstudio · GitHub 
 إنتيليج إيديا، هي بيئة تطوير متكاملة للجافا، وتدعم الماركداون كبرنامج مساعد.
JetBrains Plugin Repository :: Markdown  nicoulaj/idea-markdown · GitHub 
 ملتيماركداون صيغة وبرنامج يمتلك مميزات أكثر في قواعد اللغة وخيارات التصدير من المارك داون التقليدية
 «الغيتهاب يفضل المارك داون»(GFM) ولها العديد من التطبيقات.Joe Esposito.
"Grip -- Github Readme Instant Preview".
GitHub-Flavored Markdown in the Python language. Jeff Tratner.
"Vim-Flavored-Markdown":
Github Flavored Markdown in the فيم سكريبتing language. Evan Solomon.
"GitHub-Flavored Markdown Comments":
Github Flavored Markdown in the PHP language as a WordPress plugin. Gabriel Llamas.
"Node-GFM":
GitHub flavored markdown in the JavaScript language.  ويضيف GFM تعليم الصيغة وقائمة المهام إلى الماركدوان القياسية.

وهناك الكثير من التطبيقات المفتوحة المصدر المتوفرة على شبكة الإنترنت.

 توحيد المعايير 
ليس هناك معايير محددة للماركداون بوضوح، عدا عن writeup الأصلي المنفذ من قبل جون غروبر. في أواخر عام 2012، بدأ جهد لتوحيد المعايير القياسية، كان السبب غالباً تدوينة من مدونة جيف أتوود.The Future of Markdown  يسعى مجتمع الإنترنت الآن إلى "وثيقة متنوعة من الأدوات والموارد المتاحة لمؤلفي المستندات والمطورين، فضلاً عن المنفذين لمختلف تطبيقات الماركداون
".Markdown Community Page  والآن تتوفر أداة تسمى "Babelmark2" Babelmark 2 - Compare markdown implementations )
لمقارنة خرج التطبيقات المختلفة«و» تشجيع المناقشة لتوضيح بعض الجوانب الغامضة من مواصفات المارك داون.Babelmark 2 - FAQ 

 انظر أيضا 
 جون غروبر
 آرون سوارتز

 مراجع 

 روابط خارجية 

 المشروع الرسمي للماركداون على مدونة دارينغ فاير بول
 صفحة مجتمع المارك داون

تصنيف:تنسيقات مفتوحة
تصنيف:استحداثات متعلقة بالحواسيب في 2004
تصنيف:تدوين الملاحظات
تصنيف:لغات الترميز خفيفة الوزن
تصنيف:لغات حاسوب