Jekyll/kramdown 没有正确格式化 Scala

Jekyll/kramdown not formatting scala correctly

我正在尝试为一个开源项目贡献一些文档,因此我正在尝试在本地预览文档页面,这些页面是 github 网站的一部分。但是,我的代码块没有被正确格式化。我创建了一个最小的例子:

_config.yml

markdown: kramdown
highlighter: rouge
kramdown:
  input: GFM
  hard_wrap: false
  parse_block_html: true
name: test

default.html

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

auth.md

---
layout: default
---
## Authentication

Some description.

```scala
case class User(id: Long, name: String)
// defined class User
```

jekyll build 的结果输出是

<!doctype html>
<html>
<body><h2 id="authentication">Authentication</h2>

<p>Some description.</p>

<div class="language-scala highlighter-rouge"><span class="k">case</span> <span class="k">class</span> <span class="nc">User</span><span class="o">(</span><span class="n">id</span><span class="k">:</span> <span class="kt">Long</span><span class="o">,</span> <span class="n">name</span><span class="k">:</span> <span class="kt">String</span><span class="o">)</span>
<span class="c1">// defined class User
</span></div>
</body>
</html>

这导致一长行未格式化的代码。在 github 网站上(您可以在 http://http4s.org/docs/0.15/auth.html 处看到),html 有 <pre><code> 元素。像这样:

<div class="language-scala highlighter-rouge"><pre class="highlight"><code><span class="k">...

由于其他人在本地预览网站时没有这个问题,而我在预览时也遇到同样的问题 http://typelevel.org/cats/,我认为这是某种本地配置问题。但是,我一直无法弄清楚任何事情。这是我第一次使用jekyll/kramdown,所以我没有经验可以利用。

我安装了 github-pages gem,它给了我 jekyll 3.3.1kramdown 1.11.1

万一能帮到别人:

我在查阅 Github 文档后发现了它。它实际上是一个版本并安装了 gem 的问题。存储库中有一个 Gemfile 和 Gemfile.lock 文件。其一,它们没有被构建过程复制到站点 运行 所在的目录。而且,我需要安装 bundler gem 来安装 bundle install 的依赖项。然后 运行 带有 bundle exec jekyll serve 的站点。这与 repo 网站上的说明不同。