Evidenziazione della sintassi con Pygments sta venendo a mancare con l'errore Liquid modelli String

StackOverflow https://stackoverflow.com/questions/7801197

Domanda

sto usando Jekyll di convertire il mio Markdown e Pygments per l'evidenziazione della sintassi.

Ecco i display errore maruku:

Liquid error: undefined method `join' for "\n song_info = []\n for song in songs:\n song_info.append(song.name) \n":String

Il codice è il seguente:

{% highlight python %}
    song_info = []
    for song in songs:
        song_info.append(song.name)                                                                                                                                   
{% endhighlight %}

Test Pygments in ipython produce nessun errore.

Tutte le idee? ; O (

Grazie in anticipo!

È stato utile?

Soluzione

Ho avuto lo stesso problema e ritornato la gemma liquida alla versione 2.2.2 come una soluzione. Sembra un bug nel supporto pygments della versione 2.3.0, o l'uso di Jekyll di esso.

sudo gem uninstall liquid
sudo gem install liquid --version '2.2.2'

Altri suggerimenti

Una nota a parte, GitHub consiglia di utilizzare RedCarpet .

Per usarlo, configurare Jekyll di aggiungendo markdown: redcarpet a ./_config.yml . Poi, installare RedCarpet con [sudo] gem install redcarpet sul computer di sviluppo in modo da poter compilare il sito Jekyll.

È sufficiente sostituire i file di gemme liquid-2.3.0 con versione più recente da Github .

Funziona con jekyll-0.11.2 + liquid-2.3.0 + Pygments

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top