מסמך Markdown (.md)

CommonMark תקן

Markdown (MD) היא שפת הסימון קלת המשקל הפופולרית ביותר בעולם, אשר עוצבה על ידי ג'ון גרובֶּר כדי להיות קריאה וכתיבה ללא מאמץ כטקסט פשוט, תוך המרה נקייה ל-HTML ממונה.

בדיקה ומטא-דאטה

מערכות הפעלה ומנתחי קבצים מזהים קבצי Markdown על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

המרה פרטית ב-100% בתוך הדפדפן - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברה ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד מתבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (Magic Bytes)

מערכות הפעלה ומנתחי קבצים מזהים קבצי Markdown על ידי בדיקת רצף הבייטים הבינארי הראשוני:

חתימת HEX (היסט 0):

23 20 / 2D 2D 2D

ייצוג ASCII: # / ---

תקינה: CommonMark Specification / GitHub Flavored Markdown (GFM)

מפרט טכני

ארכיטקטורת מעטפתPlain UTF-8 text file utilizing lightweight punctuation formatting (headings, lists, bold, italics, code blocks)
דחיסהUncompressed text (readily compressed with Gzip or Brotli)
סדר בתים (Endianness)UTF-8 / Unicode text stream
מרחבי צבעN/A (Plaintext Markup)
ערוצים ומבנהHeadings, blockquotes, unordered/ordered lists, code fences, hyperlinks, images, and tables
ממדים מרבייםUnbounded text document length
שקיפותNone (pure text)
הזרמה ופרוגרסיביותStreaming line-by-line block and inline tokenization

מטריצת השוואה טכנית: Markdown מול מתחרים

תכונה טכניתMarkdown (נוכחי)HTMLTXTPDF
פשטות כתיבההקלדת טקסט פשוט מהירה במיוחדתחבירת תגים מפורטת (<p>, <div>)הקלדה מהירה (ללא עיצוב)דורש עורך פריסה גרפי
קריאות אנושית (גולמי)קריאות טקסט טבעית בתולהעמוס בתגים ובסוגרייםקריאות טקסט בתולהבייטים גולמיים בינאריים בלתי קריאים
המרת HTMLפלט דטרמיניסטי ישיר של 1 ל-1שפת רשת טבעיתדורש עיצוב ידניפלט גרפי קבוע
כלי פיתוחאוניברסלי ב-Git, GitHub, Docsאוניברסלי בפיתוח אתריםאחסון בסיסי אוניברסליהפצת מסמכים

מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)

בלוקי קוד מוצגים כפיסקאות רגילות או שכותרות נכשלות בעיצוב.

גורם שורש: רווח חסר אחרי סמל הכותרת '#' או גדרות קוד משולשות (```) לא סגורות.

התאוששות: אמת ועיצוב מחדש את תחבירת ה-Markdown באמצעות File2File Markdown Linter.

ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)

ממירי Markdown מאפשרים לעיתים קרובות HTML מקוון גולמי כברירת מחדל, דבר העלול להכניס Cross-Site Scripting (XSS) אם הוא אינו עובר חיטוי.

ווקטורי תקיפה ידועים

  • הזרקת XSS באמצעות אלמנטי HTML גולמיים (למשל '<script>' או '<img onerror=...>') המוטמעים בתוך טקסט ה-Markdown.
  • מניעת שירות באמצעות מבני ציטוט או רשימה מקוננים עמוקות במנתחים שאינם תואמים.
  • סכנות קישורים זדוניות ('javascript:') בתוך תחבירת הקישורים של Markdown.

השיטות המומלצות להגנה:

היסטוריה ואבני דרך

2017GitHub Flavored Markdown (GFM) הפכה לתקנית על בסיס מפרט CommonMark הרשמי.
2014יוזמת CommonMark הושקה על ידי ג'ף אטווד וג'ון מקפרליין כדי לתקנן מקרי קצה דו-משמעיים ב-Markdown.
2004ג'ון גרובֶּר ואהרון שוורץ משחררים את מפרט המקור של Markdown 1.0 ואת סקריפט ההמרה ב-Perl.

יתרונות מרכזיים

  • קריאות אנושית מרבית: טקסט מעוצב נראה נקי וטבעי גם כאשר הוא צופה במסוף בסיסי או בעורך טקסט פשוט.
  • תקן תעשיית תוכנה אוניברסלי: מניע קבצי README ב-GitHub, הודעות Discord, תגובות Reddit, תיעוד (Obsidian, Notion) ומחוללי אתרים סטטיים.
  • אפס נעילה לספק: קבצי טקסט פשוט יישארו קריאים במשך מאות שנים ללא תוכנת צפייה קניינית.

מגבלות טכניות וחסרונות

  • למפרט המקורי משנת 2004 היו כללי ניתוח דו-משמעיים, שהובילו לפרגמנטציה עדינה של ניבים (CommonMark לעומת GFM לעומת Kramdown).
  • אין תמיכה מובנית בתכונות פריסת עמוד מורכבות כמו פריסות מגזין מרובות טורות, גלישת טקסט או מספרי עמודים.
  • תמונות מוטמעות מקושרות באופן חיצוני במקום להיות מאוחסנות בתוך קובץ המסמך.

עובדות טכניות מעניינות

  • אהרון שוורץ, שפיתח במשותף את Markdown עם ג'ון גרובֶּר בגיל 17, היה גם ממייסדי Reddit ובנה את RSS 1.0.
  • כל מאגר GitHub יחיד בעולם משתמש בקובץ 'README.md' כדי להציג את בסיס הקוד שלו למפתחים.
  • פילוסופיית העיצוב של Markdown קובעת: 'יעד העיצוב העליון עבור תחבירת העיצוב של Markdown הוא להפוך אותה לקריאה ככל האפשר.'

שאלות טכניות נפוצות

למה משמש Markdown?

Markdown משמש לכתיבת תיעוד, קובצי README ב-GitHub, פוסטים בבלוג, רישום הערות באפליקציות כמו Obsidian ו-Notion, וכתיבת הודעות בפלטפורמות כמו Discord ו-Slack.

איך אוכל להמיר Markdown ל-PDF או HTML?

ניתן להמיר קובצי Markdown (.md) למסמכי PDF מעוצבים או לקוד HTML נקי בלחיצת כפתור אחת באמצעות File2File.app ישירות בדפדפן האינטרנט שלך.

(GFM) מה זה GitHub Flavored Markdown?

GFM הוא גרסה מורחבת של Markdown מטעם GitHub המוסיפה תמיכה בטבלאות, רשימות מטלות עם תיבות סימון ([x]), טקסט מחוק (~~text~~), ובלוקי קוד מודגשי תחביר.