Markdown
Markdown (או מרקדאון) היא שפת סימון ליצירת טקסט מעוצב באמצעות עורך טקסט. ג'ון גרובר וארון שוורץ יצרו את Markdown בשנת 2004. Markdown נמצאת בשימוש נרחב בבלוגים, תוכנות למסרים מיידיים, פורומים מקוונים, תוכנות שיתופיות, דפי תיעוד וקובצי README.
היסטוריה
Markdown נוצרה בהשראת מוסכמות קיימות מראש לסימון טקסט רגיל בדואר אלקטרוני ופוסטים בקבוצות דיון, כגון שפות הסימון הקודמות setext (בערך 1992), טקסטיל (בערך 2002) ו-reStructuredText (בערך 2002).
בשנת 2002 ארון שוורץ יצר atx והתייחס אליו כ"פורמט הטקסט המובנה האמיתי". שוורץ וגרובר עבדו יחדיו כדי ליצור את שפת Markdown בשנת 2004, במטרה לאפשר לאנשים "לכתוב באמצעות פורמט טקסט רגיל קל לקריאה וקל לכתיבה, עם אופציה פשוטה להמיר אותו ל-XHTML (או HTML)"[1]
מטרת העיצוב העיקרית שלו הייתה שהשפה תהיה קריאה כפי שהיא, מבלי להיראות כאילו היא סומנה בתגים או הוראות עיצוב, בניגוד לטקסט המעוצב בשפות סימון "כבדות" יותר, כגון RTF, HTML, או אפילו ויקיטקסט, שלכל אחד מהם יש תגיות ברורות בשורה והוראות עיצוב שיכולות להקשות על הקריאה של הטקסט.
גדילה ופיצול
ככל שהפופולריות של Markdown גדלה במהירות, הופיעו יישומי Markdown רבים, מונעים בעיקר על ידי הצורך בתכונות נוספות כגון טבלאות, הערות שוליים, רשימות הגדרות, וקטעי Markdown בתוך בלוקים של HTML.
ההתנהגות של חלק מאלה חרגה מהטמעת הייחוס, שכן Markdown אופיינה רק במפרט לא פורמלי[2] וכדי להמיר אותה ל-HTML היה צורך ביישום Perl.
יחד עם זאת, מספר אי בהירויות במפרט הבלתי פורמלי משכו תשומת לב.[3] בעיות אלו דרבנו יצירת כלים כגון Babelmark[4][5] להשוואת הפלט של יישומים שונים,[6] ומאמץ של כמה מפתחים ושל מנתחי Markdown לסטנדרטיזציה. עם זאת, גרובר טען שסטנדרטיזציה מלאה תהיה טעות: "לאתרים (ולאנשים) שונים יש צרכים שונים. אף תחביר לא ישמח את כולם."[7]
גרובר נמנע משימוש בסוגרים מסולסלים ב-Markdown כדי לשמור אותם באופן לא רשמי להרחבות ספציפיות ליישום.[8]
גרסאות
אתרים כמו Bitbucket, Diaspora, GitHub,[9] OpenStreetMap, Reddit, SourceForge,[10] ו-Stack Exchange[11] משתמשים בגרסאות של Markdown כדי להקל על דיון בין משתמשים.
Markdown ב-GitHub
GitHub השתמשה בגרסה משלה של Markdown כבר משנת 2009,[12] והוסיפה תמיכה בעיצוב נוסף כגון טבלאות ותוכן בלוק, קינון בתוך רכיבי רשימה, כמו גם תכונות ספציפיות ל-GitHub כגון קישור אוטומטי של הפניות ל-commits, בעיות, שמות משתמש וכו'. בשנת 2017, GitHub שחררה מפרט רשמי של GitHub Flavored Markdown (GFM).[9]
Markdown Extra
Markdown Extra היא שפת סימון קלת משקל המבוססת על Markdown המיושמת ב-PHP (במקור), Python ו-Ruby.[13] שפה זו מוסיפה תכונות שאינן זמינות בתחביר Markdown רגיל. Markdown Extra נתמכת בחלק ממערכות ניהול התוכן כגון Drupal[14] ו-TYPO3.[15]
Markdown Extra הוסיפה את התכונות הבאות ל-Markdown:
- סימון בתוך בלוקי HTML
- אלמנטים עם תכונת id/class
- "קוביות קוד מגודרות" המשתרעות על פני מספר שורות קוד
- טבלאות[16]
- רשימות הגדרות
- הערות שוליים
- קיצורי מילים
LiaScript
LiaScript[17] הוא ניב Markdown שנועד ליצור תוכן חינוכי אינטראקטיבי. הוא מיושם ב-Elm ו-TypeScript ומוסיף אלמנטים תחביר נוספים כדי להגדיר תכונות כמו:
- אנימציות
- פלט דיבור אוטומטי
- נוסחאות מתמטיות (באמצעות KaTeX)
- דיאגרמות אמנות של ASCII
- סוגים שונים של חידונים וסקרים
- JavaScript נתמך באופן מקורי וניתן לצרף אותו לאלמנטים שונים, כך ניתן להפוך קטעי קוד לניתנים להפעלה ולעריכה
יישומים
הטמעות של Markdown זמינות עבור יותר מתריסר שפות תכנות; בנוסף, יישומים, פלטפורמות ומסגרות רבות תומכות ב-Markdown.[18] לדוגמה, תוספי Markdown קיימים עבור כל פלטפורמת בלוגים גדולה.[19]
בעוד Markdown היא שפת סימון מינימלית ונקראת ונערכת עם עורך טקסט רגיל, ישנם עורכים מעוצבים במיוחד הצופים בתצוגה מקדימה של הקבצים עם סגנונות, הזמינים עבור כל הפלטפורמות העיקריות. עורכי קוד מקור רבים לשימוש כללי כוללים תוספים להדגשת תחביר עבור Markdown מובנים בהם או זמינים להורדה אופציונלית. עורכים שונים עשויים להציג חלון תצוגה מקדימה זה לצד זה או לעבד את הקוד ישירות בצורה של WYSIWYG.
חלק מהאפליקציות, השירותים והעורכים התומכים ב-Markdown כפורמט עריכה, כוללים:
- Microsoft Teams : הודעות צ'אט[20]
- דיסקורד : הודעות צ'אט[21]
- Doxygen : מחולל תיעוד קוד מקור התומך ב-Markdown עם תכונות נוספות[22]
- RStudio : IDE עבור R. הוא מספק פונקציית עטיפת C++ עבור וריאנט סימון שנקרא sundown[23]
- GitHub Flavored Markdown (GFM) מתעלם מקווים תחתונים במילים, ומוסיף הדגשת תחביר, רשימות משימות,[24] וטבלאות[9]
- RMarkdown[25]
- הדואר האלקטרוני של GNOME Evolution תומך בחיבור הודעות בפורמט Markdown, עם היכולת לשלוח ולעבד מיילים בפורמט Markdown טהור או להמיר Markdown לדואר אלקטרוני רגיל או HTML בעת השליחה.
- הדוא"ל של Mozilla Thunderbird תומך ב-Markdown באמצעות התוסף "Markdown here Revival".
- Bugzilla משתמשת בגרסה מותאמת אישית של Markdown.[26]
- אובסידיאן - רישום הערות
קישורים חיצוניים
- אתר האינטרנט הרשמי של Markdown
הערות שוליים
- ^ Markdown 1.0.1 readme source code בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ ציוץ של John Gruber ברשת החברתית אקס (טוויטר), 5 בספטמבר 2014
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ 1 2 3 בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite web"
- ^ בתהליכי בנייה "תבנית:Cite book"
- ^ בתהליכי בנייה "תבנית:Cite web"