5

当我在前面的问题中出现语法错误时,我收到以下错误:

 /.../psych.rb:203:in `parse': (<unknown>): could not find expected
 ':' while scanning a simple key at line 6 column 1
 (Psych::SyntaxError)
        from /.../psych.rb:203:in `parse_stream'
        from /.../psych.rb:151:in `parse'
            from ....

你知道一种方法来判断是什么文件导致了问题吗?

我知道我可以按如下方式使用 DTrace:

dtrace -n 'syscall::open*:entry { printf("%s %s",execname,copyinstr(arg0)); }'| grep _posts

但我正在寻找更直接的东西。

4

2 回答 2

4

似乎 jekyll 在 ruby​​ 1.9.3 上不能很好地工作。引入了更具限制性的 yaml 解析器:Psych 可能具有不同的异常层次结构,因此 jekyll 无法正确处理它。

于 2012-05-04T14:26:32.040 回答
3

You may find that this is caused by faulty formatting

If your front matter looks like this:

---
menu:
- text: Home
url: /en/index.html
- text: Overview
url: /en/overview.html
---

instead of

---
menu:
- text: Home
  url: /en/index.html
- text: Overview
  url: /en/overview.html
---

then the YAML parser will throw it out.

于 2013-03-09T15:27:05.227 回答