octopressの整理をしようとgitからクローンしてきたら、なんかエラーが出てうまくいかないことが。

頑張って直したので、対処法をメモ。

エラー内容

クローンして、初期設定して、source/_postsの中身をコピーして、rake previewしたんですよ。

すると、

1
2
3
4
5
6
7
8
9
[2014-12-14 16:18:51] INFO  WEBrick 1.3.1
[2014-12-14 16:18:51] INFO  ruby 2.0.0 (2014-05-08) [universal.x86_64-darwin13]
[2014-12-14 16:18:51] INFO  WEBrick::HTTPServer#start: pid=49576 port=4000
Configuration file: /Users/owner/workspace/octopress-new/_config.yml
>>> Compass is watching for changes. Press Ctrl-C to Stop.
            Source: source
       Destination: public
      Generating...
jekyll 2.5.2 | Error:  Pygments can't parse unknown language: </p>.

なんてエラーが出てきたんですね。なんじゃこりゃ。

generateしたときになんかがダメでgenerateに失敗しているらしい。

エンジニアらしくない調べ方

自分より賢い人が作ったoctopressだから、間違っているのは自分のほうだという考えに基づいて、今までの記事を見なおしてみました。

具体的に、_postsの中身を区切りながらコピーして、どの記事で引っかかったかを確かめました。

すると、、、

4つほどの記事が引っかかりました。

引っかかった記事の中身を消去して、再びrake previewしてみます。

すると、うまくプレビューされました。やった!

原因っぽいものを直してみる

引っかかった記事を一つ取り出して、エラーになりそうな部分を直してみます。

直した箇所は、こんな感じ。

1. 見出しの前後に改行を付ける

1
2
3
見出し前の行。
###こんな見出しで
こう書いていたものを、
1
2
3
4
5
見出し前の行。

###こんな見出しで

こう直しました。

2. コード記述の前後に改行を付ける

コードは、バッククォート3つで囲みます。見出しと同様に、上下に改行をいれてみました。

結果

きちんとプレビューされました。改行を入れるのは結構大事みたいですね。

もうひとつ

この記事を書いているときに、この記述を文の先頭に書いてはいけない事に気づきました。

これは、バッククォート3つのあとに挟まずに記述します。

先頭だと、コードの記述と混同してしまうのでしょうか。めんどくさいですね。