语法高亮显示Pygments失败通过Liquid Templates字符串错误

时间:2011-10-18 00:34:42

标签: python markdown jekyll liquid pygments

我正在使用Jekyll将我的markdown和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中测试Pygments不会产生任何错误。

有什么想法吗? O(

提前致谢!

3 个答案:

答案 0 :(得分:21)

我遇到了同样的问题,并将液体宝石还原为版本2.2.2作为解决方法。似乎是2.3.0版本的pygments支持中的错误,或者是Jekyll对它的使用。

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

答案 1 :(得分:2)

旁注,GitHub recommends using RedCarpet

要使用configure Jekyll adding markdown: redcarpet to ./_config.yml。然后,在开发计算机上安装RedCarpet [sudo] gem install redcarpet,以便编译Jekyll站点。

答案 2 :(得分:1)

只需使用latest version from Github替换liquid-2.3.0个gem文件。

适用于jekyll-0.11.2 + liquid-2.3.0 + Pygments