我想使用克拉姆顿 (包括有围栏的代码块、内联属性列表、标头is )以及语法突出显示的pygments (例如,对于LaTeX支持,这在kramdown使用的CodeRay中不可用)。Jekyll支持kramdown和pygments,但显然两者不能结合在一起(除非我使用我不喜欢的液体标签)。
我还找到了一些关于如何使kramdown围栏代码块突出显示代码的插件片段,但不幸的是,我不知道如何使其工作。
我尝试将来自该站点的所有代码转储到某个_plugins/krampygs.rb文件中,但随后jekyll build抱怨道:
Generating... error: undefined method `matches'如果我按照matches和output_ext的指示提供一些琐碎的Jekyll插件文档和output_ext,但是我不知道如何为output_ext文件选择这个新的转换器。添加这样的东西
markdown: MarkdownConverter在我的_config.yml上,只抱怨这不是一个有效的选项。
那么,好吧,我重申我的问题:在Jekyll,我怎样才能用kramdown来处理侏儒呢?
解决方案
在Matthias (下面)的帮助下,我能够为Jekyl1.x准备这个Kramdown+Pygments插件。
发布于 2013-08-13 17:16:57
这里是“那个网站”的作者。
这取决于Jekyll版本。写文章时的版本已经足够了。至少Jekyll 1.x要求在matches中定义MarkdownConverter,如下所示:
def matches(ext)
ext =~ /^\.md$/i
endJekyl1.x出现的另一个问题是,每个定制的Markdown转换器都是已忽略。我通过显式地声明输出扩展来解决这个问题。
def output_ext(ext)
".html"
end告诉Jekyll,通过设置
markdown_ext: foo在_config.yml中。
发布于 2014-07-22 11:23:24
我已经更新了由插件创建的胡安,使其与Jekyll2.x兼容,并进行了其他一些改进。
它可以在这里找到:https://github.com/mvdbos/kramdown-with-pygments.git
https://stackoverflow.com/questions/18214424
复制相似问题