首页 文章

Kramdown反引号在GFM模式下无法识别

提问于
浏览
3

我正在尝试通过使用kramdown来处理markdown和rouge以进行语法突出显示,使用Jekyll正确渲染一些非常简单的页面 . 然而,即使在GFM模式下,Kramdown似乎也不会解释三重反推 .

我相信我已经遵循了这封信的说明,当推送到github页面时,事情很好,但我的本地设置只是忽略了反引号 .

如果有任何帮助,可以在OS X上使用Jekyll 3.1.1进行观察 . 用于调用jekyll的命令行是 jekyll serve --config "_config.yml" .

我已将问题缩小到以下最小测试:

_config.yml

markdown: kramdown
highlighter: rouge

kramdown:
  input: GFM

index.md

---
layout: default
---

```scala
def test(i: Int): Unit = {
  println(i)
}



### layout / default.html

```xml
<!doctype html>
<html>
  <body>{{ content }}</body>
</html>

结果index.html

<!doctype html>
<html>
  <body><p>```scala
def test(i: Int): Unit = {
  println(i)
}</p>

<p>```</p>
</body>
</html>

1 回答

  • 2

    我建议你这样做 . 我使用以下配置测试了您的代码块,它工作正常:

    config.yml

    highlighter: rouge
    markdown: kramdown
    kramdown:
      input: GFM
    

    然后,到您的文件 index.md

    ```scala
    def test(i: Int): Unit = {
       println(i)
     }
    
    
    注意:我注意到 ````scala` 之前有一个空格,它不应该存在 . 
    
    然后,使用bundler运行 `jekyll serve` :
    
    打开终端并:
    
    
    - 安装捆绑包: `gem install bundler` 
    
    
    - 更新所有宝石(如果需要): `bundle update` 
    
    
    - 将 `Gemfile` (不添加任何文件扩展名)添加到您的网站 `root` 并将下面的代码粘贴到其中 . 这是GitHub Pages [recommended method](https://help.github.com/articles/using-jekyll-with-pages/#installing-jekyll) . 
    
    ```java
    source 'https://rubygems.org'
    
    gem 'github-pages'
    
    • 转到项目根文件夹(在终端上)并运行: bundle install (这将确保您在本地安装了所有必需的gem及其依赖项) . 将在您的站点根目录为您生成 Gemfile.lock . 把它留在那里 .

    • 运行 bundle exec jekyll serve --watch 以在 http://localhost:4000 本地查看您的网站

    完成!

    如果这对您有用,请告诉我,是吗?

相关问题