Dokument Markdown (.md)

CommonMark Standardno

Markdown (MD) najpopularniji je svjetski laki označni jezik (lightweight markup language) koji je dizajnirao John Gruber kako bi bio iznimno lako čitljiv i pisao se kao običan tekst, uz čisto pretvaranje u strukturirani HTML.

Pregledaj i metapodaci

Operativni sustavi i alati za analizu datoteka identificiraju Markdown datoteke provjerom početnog niza binarnih bajtova:

Odaberite ili ispustite datoteke ovdje

100% privatna pretvorba u pregledniku - datoteke nikada ne napuštaju vaš uređaj

ili zalijepi Ctrl+V
Jamstvo privatnosti nulte mrežne transmisije: 0 bajtova učitano na vanjske poslužitelje. Sva obrada odvijala se lokalno u sandčiću vašeg preglednika.

Potpis zaglavlja na razini bajtova (Magic Bytes)

Operativni sustavi i alati za analizu datoteka identificiraju Markdown datoteke provjerom početnog niza binarnih bajtova:

HEX POTPIS (POMAK 0):

23 20 / 2D 2D 2D

ASCII PRIKAZ: # / ---

Standardizacija: CommonMark Specification / GitHub Flavored Markdown (GFM)

Tehničke specifikacije

Arhitektura spremnikaPlain UTF-8 text file utilizing lightweight punctuation formatting (headings, lists, bold, italics, code blocks)
KompresijaUncompressed text (readily compressed with Gzip or Brotli)
字节序UTF-8 / Unicode text stream
Prostori bojaN/A (Plaintext Markup)
Kanali i strukturaHeadings, blockquotes, unordered/ordered lists, code fences, hyperlinks, images, and tables
Maksimalne dimenzijeUnbounded text document length
ProzirnostNone (pure text)
Streaming i progresivnoStreaming line-by-line block and inline tokenization

Tehnička matrica usporedbe: Markdown vs Konkurencija

Tehnički atributMarkdown (Trenutno)HTMLTXTPDF
Jednostavnost pisanjaIznimno brzo tipkanje običnog tekstaOpsežna sintaksa oznaka (<p>, <div>)Brzo tipkanje (bez formatiranja)Zahtijeva grafički uređivač izgleda
Čitljivost za čovjeka (sirovo)Netaknuta prirodna čitljivost tekstaZagušeno oznakama i zagradamaNetaknuta čitljivost tekstaBinarni nečitljivi sirovi bajtovi
HTML konverzijaIzravan deterministički izlaz 1 na 1Matični web-jezikZahtijeva ručno formatiranjeFiksni grafički izlaz
Alati za razvojne programereUniverzalno u Git-u, GitHub-u, dokumentacijiUniverzalno u web-razvojuUniverzalna osnovna pohranaDistribucija dokumenata

Uobičajeni načini oštećenja i vodič za heksadecimalni oporavak

Blokovi koda prikazuju se kao obični odlomci ili se zaglavlja ne uspijevaju formatirati.

Temeljni uzrok: Nedostaje razmak nakon simbola '#' za zaglavlje ili nezatvorene trostruke obrnute apostrofe (```) za blokove koda.

Oporavak: Provjerite valjanost i ponovno formatirajte Markdown sintaksu pomoću File2File Markdown Lintera.

Sigurnosna analiza i vektori napada na parser

Pretvarači Markdowna često zadano omogućuju sirovi ugrađeni HTML, što može uvesti napade skriptiranjem na međusobnim web-mjestima (XSS) ako se sadržaj ne očisti.

Poznati vektori napada

  • XSS injekcija putem sirovih HTML elemenata (npr. '<script>' ili '<img onerror=...>') ugrađenih unutar Markdown teksta.
  • Uskraćivanje usluge (DoS) putem duboko ugniježđenih struktura citata ili popisa u parserima koji nisu sukladni standardima.
  • Zlonamjerne sheme hiperveza ('javascript:') unutar sintakse poveznica u Markdownu.

Najbolje obrambene prakse:

Povijesni izvori i prekretnice

2017GitHub Flavored Markdown (GFM) standardiziran na temelju formalne specifikacije CommonMark.
2014Inicijativu CommonMark pokrenuli Jeff Atwood i John MacFarlane radi standardizacije dvosmislenih rubnih slučajeva u Markdownu.
2004John Gruber i Aaron Swartz izdaju izvornu specifikaciju Markdown 1.0 i Perl skriptu za konverziju.

Ključne prednosti

  • Maksimalna čitljivost za čovjeka: formatirani tekst izgleda čisto i prirodno čak i kada se pregledava u osnovnom terminalu ili uređivaču običnog teksta.
  • Univerzalni standard u softverskoj industriji: pokreće GitHub README datoteke, Discord poruke, Reddit komentare, dokumentaciju (Obsidian, Notion) i generatore statičkih web-mjesta.
  • Nema vezivanja uz određenog dobavljača (vendor lock-in): datoteke s običnim tekstom ostat će čitljive stoljećima bez vlasničkog softvera za pregledavanje.

Tehnička ograničenja i nedostaci

  • Izvorna specifikacija iz 2004. imala je dvosmislena pravila parsiranja, što je dovelo do suptilne fragmentacije dijlekata (CommonMark vs. GFM vs. Kramdown).
  • Nema izvornu podršku za složene značajke izgleda stranice poput višestupčanih časopisnih izgleda, prelamanja teksta ili brojeva stranica.
  • Ugrađene slike povezane su izvana umjesto da su pohranjene unutar datoteke dokumenta.

Zanimljive tehničke činjenice

  • Aaron Swartz, koji je suosnovao Markdown s Johnom Gruberom u dobi od 17 godina, također je suosnivač Reddita i kreator RSS-a 1.0.
  • Svako pojedino GitHub spremište na svijetu koristi datoteku 'README.md' kako bi predstavilo svoj izvorni kod razvojnim programerima.
  • Filozofija dizajna Markdowna navodi: 'Glavni cilj dizajna za Markdownovu sintaksu formatiranja jest učiniti je što je moguće čitljivijom.'

Često postavljana tehnička pitanja

Za što se koristi Markdown?

Markdown se koristi za pisanje dokumentacije, GitHub README datoteka, objava na blogovima, bilješki u aplikacijama poput Obsidiana i Notiona te za sastavljanje poruka na platformama poput Discorda i Slacka.

Kako mogu pretvoriti Markdown u PDF ili HTML?

Markdown (.md) datoteke možete jednim klikom pretvoriti u stilizirane PDF dokumente ili čisti HTML kôd pomoću alata File2File.app izravno u svom web pregledniku.

Što je GitHub Flavored Markdown (GFM)?

GFM je GitHubova proširena verzija Markdowna koja dodaje podršku za tablice, popise zadataka s potvrdnim okvirima ([x]), precrtani tekst (~~text~~) i blokove koda s istaknutom sintaksom.