Markdown-dokumentum (.md)

CommonMark Szabvány

A Markdown (MD) a világ legnépszerűbb könnyű jelölőnyelve. John Gruber úgy tervezte, hogy sima szövegként is könnyen olvasható és írható legyen, és jól alakítható át strukturált HTML-lé.

Vizsgálat és metaadatok

Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) Markdown fájlokat:

Válasszon ki vagy húzzon ide fájlokat

Privát - a fájlok soha nem hagyják el az eszközét

vagy beillesztés Ctrl+V
Adatvédelmi garancia hálózati adatátvitel nélkül: 0 bájt került fel külső szerverekre. Minden feldolgozás helyben, a böngésző elkülönített környezetében történt.

Bájtszintű fejlécaláírás (fájlazonosító bájtok)

Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) Markdown fájlokat:

HEX ALÁÍRÁS (ELTOLÁS 0):

Nincs rögzített aláírás (a Markdown egyszerű szöveg)

ASCII ÁBRÁZOLÁS: Nincs rögzített aláírás

Szabványosítás: CommonMark Specification / GitHub Flavored Markdown (GFM)

Műszaki specifikációk

Konténer architektúraEgyszerű UTF-8 szövegfájl könnyű írásjelekkel jelölt formázással (címsorok, listák, félkövér és dőlt szöveg, kódblokkok)
TömörítésTömörítetlen szöveg (Gzip vagy Brotli segítségével könnyen tömöríthető)
BájtsorrendUTF-8 / Unicode szövegfolyam
SzínterekNem alkalmazható (egyszerű szöveges jelölőnyelv)
Csatornák és struktúraCímsorok, idézett blokkok, számozott és számozatlan listák, kódblokkok, hivatkozások, képek és táblázatok
Max. méretekA szöveges dokumentum hossza nincs korlátozva
ÁtlátszóságNincs (egyszerű szöveg)
Streaming és progresszívBlokk- és soron belüli elemek folyamatos, sorról sorra történő tokenizálása

Műszaki összehasonlító mátrix: Markdown vs. versenytársak

Technikai attribútumMarkdown (Jelenlegi)HTMLTXTPDF
Létrehozási egyszerűségRendkívül gyors sima szöveges gépelésTerjengős címkeszintaxis (<p>, <div>)Gyors gépelés (nincs formázás)Grafikus elrendezésszerkesztőt igényel
Olvashatóság nyers formábanTermészetes szövegként is kiválóan olvashatóCímkékkel és zárójelekkel zsúfoltKiválóan olvasható szövegkéntOlvashatatlan nyers bináris bájtok
HTML-átalakításKözvetlen 1 az 1-hez determinisztikus kimenetNatív weben használt nyelvKézi formázást igényelRögzített grafikus kimenet
Fejlesztői eszközökA támogatás programonként eltér.A támogatás programonként eltér.A támogatás programonként eltér.Dokumentumterjesztés

Gyakori sérülési módok és hexadecimális helyreállítási útmutató

A kódrészletek normál bekezdésként jelennek meg, vagy a címsorok formázása meghiúsul.

Kiváltó ok: Hiányzó szóköz a címsor '#' szimbóluma után, vagy le nem zárt hármas fordított aposztrófos (```) kódkeretek.

Helyreállítás: Ellenőrizze és formázza újra a Markdown szintaxisát a File2File.app Markdown Linter segítségével.

Biztonsági elemzés és elemző (parser) támadási vektorok

A Markdown-konverterek alapértelmezés szerint gyakran engedélyezik a nyers HTML-kódot, ami Cross-Site Scripting (XSS) támadásokhoz vezethet, ha nincs fertőtlenítve.

Ismert támadási vektorok

  • XSS-támadás nyers HTML-elemekkel (pl. '<script>' vagy '<img onerror=...>') a Markdown-szövegbe ágyazva.
  • Szolgáltatásmegtagadás (DoS) mélyen beágyazott idézet- vagy listaszerkezetekkel a szabványnak nem megfelelő elemzőkben.
  • Rosszindulatú hivatkozási sémák ('javascript:') a Markdown-hivatkozások szintaxisában.

Ajánlott védekezési módszerek: A generált HTML-kimenetet mindig tisztítsa meg a DOMPurify használatával, és tiltsa le a nem biztonságos URL-protokollokat.

Történeti háttér és mérföldkövek

2017A GitHub Flavored Markdown (GFM) szabványosítása a hivatalos CommonMark-specifikáció alapján történt.
2014Jeff Atwood és John MacFarlane elindította a CommonMark kezdeményezést a Markdown kétértelmű szélső eseteinek szabványosítására.
2004John Gruber és Aaron Swartz kiadta az eredeti Markdown 1.0 specifikációt és a Perl-konverziós szkriptet.

Főbb előnyök

  • Maximális olvashatóság: a formázott szöveg egyszerű terminálban vagy szövegszerkesztőben megjelenítve is rendezett és természetes hatású.
  • A Markdown gyakori a dokumentációban, de a szintaxis és a megjelenítés programonként eltér.
  • Nulla gyártói függőség: a sima szöveges fájlok évszázadokig olvashatók maradnak tulajdonosi nézőszoftverek nélkül is.

Technikai korlátok és hátrányok

  • Az eredeti 2004-es specifikáció kétértelmű elemzési szabályokkal rendelkezett, ami a Markdown-változatok fokozatos széttöredezéséhez vezetett (CommonMark vs. GFM vs. Kramdown).
  • Nem támogatja natívan az összetett oldalelrendezési funkciókat, például a többoszlopos tördelést, a körbefuttatott szöveget vagy az oldalszámokat.
  • A beágyazott képek külső hivatkozásokon keresztül kapcsolódnak ahelyett, hogy magában a dokumentumfájlban lennének tárolva.

Érdekes technikai tudnivalók

  • Aaron Swartz, aki 17 évesen John Gruberrel együtt fejlesztette ki a Markdownot, egyben a Reddit társalapítója és az RSS 1.0 megalkotója is volt.
  • Sok GitHub-adattár README.md fájllal mutatja be a projektet, de más fájlnevek is használhatók, vagy a README teljesen el is maradhat.
  • A Markdown tervezési filozófiája így szól: 'A Markdown formázási szintaxisának legfőbb tervezési célja, hogy a lehető legjobban olvasható legyen.'

Gyakran Ismételt Műszaki Kérdések

Mire használható a Markdown?

A Markdown dokumentációk, GitHub README-fájlok és blogbejegyzések írására, Obsidianhoz és Notionhöz hasonló alkalmazásokban jegyzetelésre, valamint Discordhoz és Slackhez hasonló platformokon üzenetek írására használható.

Hogyan konvertálhatom a Markdown-fájlt PDF-be vagy HTML-be?

A File2File.app segítségével egyetlen kattintással, közvetlenül a böngészőben konvertálhatja a Markdown-fájlokat (.md) stílusos PDF-dokumentumokká vagy tiszta HTML-kóddá.

Mi az a GitHub Flavored Markdown (GFM)?

A GFM a Markdown GitHub által kibővített változata, amely támogatja a táblázatokat, a jelölőnégyzetes feladatlistákat ([x]), az áthúzást (~~szöveg~~) és a szintaxiskiemelt kódrészleteket.