2013-07-18 7 views
6

Sto usando Jekyll per pubblicare blog. Quando scrivo "{% ...%}" nei miei file markdown, sembra che "{% ...%}" sia analizzato da Liquid. Ma a volte non è quello che voglio e può causare errori. Quindi qual è il modo corretto per includere testi come "{% ...%}" nel mio contenuto del post (il file .md)?Come posso includere "{%%}" nel file markdown quando si utilizza jekyll?

Ho controllato i documenti Liquid e ho imparato a utilizzare il tag di blocco {% raw %} ... {% end raw %} per includere il testo non elaborato tra. Tuttavia, non penso che questa sia una buona idea. Perché se il file di markdown non è stato analizzato da Liquid (ad esempio, in un ambiente diverso da Jekyll), questo non verrà utilizzato {% raw%} nel mio testo.

Correggimi se ho detto qualcosa di sbagliato.

P.S .: utilizzo GitHub Pages per l'hosting e disabilitano i plug-in.

risposta

6

Una cosa da ricordare sulle pagine Jekyll e GitHub è che si può sempre costruire il tuo sito in locale (eseguendo jekyll build), si impegnano al vostro pronti contro termine e hanno GitHub servire da lì. Quindi puoi usare (o creare) un plugin che ti consentirà di avere ciò che desideri. : P

D'altro canto, penso che sia davvero troppo disturbo non utilizzare lo {% raw %}. Se - e solo se - utilizzerai questi file di markdown da qualche altra parte, puoi passarli attraverso uno script (o un comando sed) e rimuovere questi tag.

+0

Infine ho deciso di utilizzare il '{% raw%}' nel post. E come hai detto, se userò i file markdown da qualche altra parte, li modificherò. Grazie, @agarie. – shengbinmeng

1

È possibile utilizzare le entità HTML { e } per { e }. Non è il più semplice, ma non usa {% raw %} o si basa sui plugin.

+0

questo è un trucco intelligente! Grazie! – shengbinmeng

+0

Si noti che questo non funzionerà all'interno di un blocco di codice markown (visualizzerà '{' piuttosto che visualizzare una parentesi aperta). – IQAndreas

0

sono stato in grado di ottenere questo lavoro utilizzando il seguente codice:

{% capture sidebar %}{% include sidebar.md %}{% endcapture %} 
{{ sidebar | markdownify }} 

E 'possibile che questo frammento di Sto includendo una barra laterale che ho scritto nel Markdown.

Ecco un collegamento all'originale GitHub comment da cui ho avuto questa idea.