Automatické escapování pro speciální znaky

V HTML existují dva znaky, které vyžadují zvláštní zacházení: < a & . Levé úhlové závorky se používají k zahájení tagů; ampersandy se používají k označení entit HTML. Chcete-li je použít jako doslovné znaky, musíte je zakódovat jako entity (např. < , & ).

Obzvláště ampersandy jsou pro tvůrce webů nebezpečné. Pokud chcete psát o 'AT&T', musíte napsat ' AT&T '. V adresách URL musíte dokonce escapovat ampersandy. Pokud tedy chcete odkazovat na:

http://images.google.com/images?num=30&q=larry+bird

musíte zakódovat adresu URL jako:

http://images.google.com/images?num=30&q=larry+bird

v atributu href značky ukotvení. Netřeba dodávat, že na to lze snadno zapomenout a je to pravděpodobně jediný nejčastější zdroj chyb validace HTML na jinak dobře označených webových stránkách.

Markdown vám umožní používat tyto postavy přirozeně a postará se o všechny nezbytné útěky za vás. Pokud použijete ampersand jako součást entity HTML, zůstane nezměněn; jinak bude přeložen do & .

Pokud tedy chcete do svého článku zahrnout symbol autorských práv, můžete napsat:

©

a Markdown to nechá být. Ale když napíšeš:

AT&T

Markdown to přeloží do:

AT&T

Podobně, protože Markdown podporuje inline HTML, použijete-li lomené závorky jako oddělovače pro HTML tagy, Markdown s nimi bude tak zacházet. Ale když napíšeš:

4 < 5

Markdown to přeloží do:

4 &lt; 5

Uvnitř kódových rozpětí a bloků Markdown jsou však lomené závorky a ampersandy vždy zakódovány automaticky. Díky tomu je snadné používat Markdown k psaní o HTML kódu. (Na rozdíl od raw HTML, což je hrozný formát pro psaní o syntaxi HTML, protože každý jednotlivý kód < a & ve vašem příkladu musí být escapován.)

Zpětné lomítko Escapes

Markdown vám umožňuje používat zpětné lomítko ke generování doslovných znaků, které by jinak měly v syntaxi formátování Markdown zvláštní význam. Pokud například chcete obklopit slovo doslovnými hvězdičkami (místo HTML značky <em> ), můžete před hvězdičkami použít zpětná lomítka, jako je tento:

\*literal asterisks\*

Markdown poskytuje zpětné lomítko pro následující znaky:

\   backslash
`   backtick
*   asterisk
_   underscore
{}  curly braces
[]  square brackets
()  parentheses
#   hash mark
+   plus sign
-   minus sign (hyphen)
.   dot
!   exclamation mark