GitHub风格降价和Pygments来做凸显杰基尔(Github flavored Markdow

2019-07-04 00:17发布

我已经部署了一个VPS我的化身博客。 我现在想Github的味降价添加到它,使用Pygments来做突出,但我不知道哪些文件我是否需要修改和如何。

到目前为止,我已配置的唯一文件是_config.yml至极看起来是这样的:

  1 safe:        false
  2 auto:        false
  3 server:      false
  4 server_port: 4000
  5 baseurl:    /
  6 url: http://localhost:4000
  7 
  8 source:      .
  9 destination: ./_site
 10 plugins:     ./_plugins
 11 
 12 future:      true
 13 lsi:         false
 14 pygments:    false
 15 markdown:    maruku
 16 permalink:   date
 17 
 18 maruku:
 19   use_tex:    false
 20   use_divs:   false
 21   png_engine: blahtex
 22   png_dir:    images/latex
 23   png_url:    /images/latex
 24 
 25 rdiscount:
 26   extensions: []
 27 
 28 kramdown:
 29   auto_ids: true,
 30   footnote_nr: 1
 31   entity_output: as_char
 32   toc_levels: 1..6 
 33   use_coderay: false
 34 
 35 coderay:
 36   coderay_wrap: div
 37   coderay_line_numbers: inline
 38   coderay_line_numbers_start: 1
 39   coderay_tab_width: 4
 40   coderay_bold_every: 10
 41   coderay_css: style

如何正确配置杰基尔使用GitHub风格降价和Pygments来做高亮?

Answer 1:

编辑:现在容易

作为哲基尔> = 0.12.1 redcarpet2是原生支持杰基尔,所以你可以简单地设置您的配置,以markdown: redcarpet ,你是好去与GFM /围栏代码块没有这个mumbojumbo休息...

原来的答案

您明确要求使用Github的口味降价,所以我想你是不是在找那个创建代码块与非降价液体形式的答案:

{% highlight python %}
def yourfunction():
     print "Hello World!"
{% endhighlight %}

但宁可能写的东西用围栏代码块:

```python
def yourfunction():
     print "Hello World!"
```

等等。对于这一点,你会想用隆重接待降价解析器。

Github上味减价使用名为“隆重的接待”一降价解析器1 。 讽刺的是,尽管GitHub风格降价使用redcarpet2 ,这个降价解析器不杰基尔默认支持。 取而代之的是,你可以通过安装红宝石宝石将其添加为插件

gem install redcarpet

然后加入redcarpet2化身插件 。 (安装在杰基尔插件相当于放置.rb在仓库到你给Ruby脚本_plugins目录。可以在子目录_plugins太)。

然后,对文档的解释有,编辑您_config.yml使用redcarpet2:

markdown: redcarpet2
redcarpet:
  extensions: ["no_intra_emphasis", "fenced_code_blocks", "autolink", "strikethrough", "superscript"]

这增加了通过GitHub的口味,降价又名redcarpet2提供了常用的扩展(嗯,差不多了。这不会做的github具体降价之类的东西用数字找出问题,或哈希承诺,因此他们不是在技术上是相同的)。

具有插件的手段,就目前而言,你必须在当地建立自己的网站,并复制_site ,到Github上,如果您有托管你的网站redcarpet2不可用的哲基尔发动机的Github上版本(见本打开的问题在哲基尔)

注意 :您不需要您已在规定的所有降价编辑_config.yml的方式。 对于使用redcarpet2一个基本的例子,你可能希望看到这个配置 ,并连同它相关的哲基尔目录。



Answer 2:

杰奇的最好的部分是,如说在这里 ,

......它需要一个模板目录(代表网站的原始形式),运行它通过纺织或降价和液体的转换器,并吐出了一个完整的,静态的网页...

这意味着,你降价和Pygments来做默认突出。

您可以丢弃或使用默认_config.yaml此设置。 与您现有的配置,你可能想Pygments来做设置为true: pygments: true

这里是你做什么

  • 降价 :刚才您的文件命名为* .markdown,例如2012-12-01-my-post.markdown和任何地方它的根目录中。 通常情况下,你将它放在_posts。

    当化身解析这个文件,它会通过它传递降价过滤器。 作为额外的奖励,你要保存为* .textile并将其解析用纺织品 。 和着,当然,你可以把它.HTML所以没有解析发生的降价。

  • Pygments来做 :只要做到这一点与您的代码:

     {% highlight python %} def yourfunction(): print "Hello World!" {% endhighlight %} 

    你也做得到linenumbers:

     {% highlight python linenos %} {% endhighlight %} 

编辑:而且也, 你需要使用命令生成语法样式表

pygmentize -S default -f html > style.css

提到这里 ,并通过@ joshuahornby10。 在HTML style.css的,很明显。 然后,你的代码将被强调语法的使用Pygments来做。

哦,你不必改变_config.yaml任何设置这个工作。 只需使用运行你的网站jekyll --server --auto ,看看它是否看起来不错。 侧面说明,编辑_config文件时,您将需要停止自动运行并重新运行杰奇任何更改生效。



Answer 3:

在配置文件中的变化

 pygments:    false 

 pygments:    true

当你写的降价文件(巨大的资源的代码段,这将意味着http://daringfireball.net/projects/markdown/ ),他们将使用Pygments来做造型。 请确保你已经安装了,这是一个错误,我做。 此外,一旦它的安装,您将需要创建一个CSS文件为造型的时间(听起来很明显,但我犯了这个错误)

 pygmentize -S default -f html > stylesheets/pygments.css

您可以更改默认这里找到主题的人:

http://pygments.org/demo/35195/

至于降价我已阅读,为了得到Pygments来做工作,你需要以降价为maruku你已经在配置文件中设置。

希望这可以帮助,我发现哲基尔是一个高明的博客平台,但很下记录。



文章来源: Github flavored Markdown and pygments highlighting in Jekyll