Подсветка синтаксиса с помощью фрагментов происходит из-за ошибки строки жидких шаблонов - PullRequest
17 голосов
/ 18 октября 2011

Я использую Jekyll для преобразования моей уценки и Pygments для подсветки синтаксиса.

Вот ошибка, которую отображает maruku:

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

Разметка следующая:

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

Проверка фрагментов в iPython не дает ошибок.

Есть идеи?; o (

Заранее спасибо!

Ответы [ 3 ]

21 голосов
/ 18 октября 2011

У меня была та же проблема, и я вернул жидкий камень до версии 2.2.2 в качестве обходного пути. Похоже на ошибку в поддержке фрагментов версии 2.3.0 или на то, как ее использует Джекилл.

sudo gem uninstall liquid
sudo gem install liquid --version '2.2.2'
2 голосов
/ 18 октября 2011

С другой стороны, GitHub рекомендует использовать RedCarpet .

Для его использования настроить Jekyll с помощью , добавив markdown: redcarpet к ./_config.yml.Затем установите RedCarpet с [sudo] gem install redcarpet на свой компьютер для разработки, чтобы вы могли скомпилировать свой сайт Jekyll.

1 голос
/ 25 марта 2012

Просто замените liquid-2.3.0 gem-файлы последней версией из Github .

Работает с jekyll-0.11.2 + liquid-2.3.0 + Pygments

...