Xway

The world is full of fascinating problems waiting to be solved~.

使用octopress中的故障记录

| Comments

使用octopress已有半年了,到目前为止感觉不坏,相比国内的博客平台,最大的好处是不用担心若干莫名其妙的敏感词导致文章不能发布,而且它确实是个时尚玩具,和ruby,github,sass都扯上了关系,满足了我这个伪程序员一点虚荣心,不过这类玩意儿就像快刀,好用是好用,一不小心就划伤手指。

言归正传,记载几个我使用过程中遇到过的问题,大部分情况下,你在rake generate时看到的出错提示很相似,如下:

最常见的故障显示

/Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse': (/Users/toutakashi/xway/octopress/_config.yml): could not find expected ': while scanning a simple key at line 8 column 1 (Psych::SyntaxError)
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:151:in `parse'
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:127:in `load'
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:297:in `block in load_file'
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:297:in `open'
from /Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:297:in `load_file'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/gems/jekyll-0.11.0/lib/jekyll.rb:119:in `configuration'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/gems/jekyll-0.11.0/bin/jekyll:207:in `<top (required)>'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/bin/jekyll:19:in `load'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/bin/jekyll:19:in `<main>'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `eval'
from /Users/toutakashi/.rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:14:in `<main>'

别被浩浩荡荡的提示吓着了,怎么看呢,根据我的经验,以from开头的句子都可以忽略,看其他的吧。

_config.yml中的空格

上面这个例子中说在config.yml中找不到某个 “ : ”, 实际上是,config.yml中各个项的写法是类似simple_search: http://google.com/search,注意冒号后面有个空格,忘掉打空格,就等着报上面的错。

categories中的类别

上面的错误至少还指示了出错的文件和行号,那下面这个完全就是看不明白了(已省略大把的from):

/Users/toutakashi/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse': (<unknown>): did not find expected key while parsing a block mapping at line 2 column 1 (Psych::SyntaxError)

一个<unknown>让你欲哭无泪。我碰上这个错误时,恰好是在更新octopress之后,于是怀疑面很广,为此重装了octopress,重装了不同版本的ruby,其间发现由于我的新系统lion不带gcc,无法编译ruby,又折腾半天发现得给xcode安个command tools,但即使这样还是没有改善,最后偶然的发现原因是最近的一片文章中categories格式错了,本来应该是categories: [python,notes],我不小心给写成了categories: [python],[notes],于是悲剧了。

sass更新的问题

没事儿最好别急着更新,我在某次跟风更新octopress的源码之后,界面变得乱七八糟,最后发现是sass版本太新的原因,好在这种事情不是我一个人遇到,不久作者的github的页面上就给出了解决方案,但我也有半个月没写成博客。

记载

上述这些故障并不复杂,很多是由于失误造成,但由于错误呈现的方式不明,解决起来相当耗时,先记载这些,再遇上新问题会直接添加在此文末尾。

Comments