Diary on wind(跡地)

おもにPC関係(2008-2013)、跡地兼日記避難所(2014-)

静的ブログウェブサイト生成ツール『Jekyll』

2013-11-22 22:30:10 | ソフトウェア

最近geekどもの間で話題になっているJekyllをWindows上で使ってみる。

Jekyllとは、HTMLやCSSで作ったテンプレートファイルとMarkdownで記述した原稿テキストをもとに、静的なウェブサイトやブログサイトを生成するツール。Movable TypeやWordpressとは異なり、ローカルで実行するもの。Jekyll自体はウェブサイト生成ツールしか含まないので、テンプレートやテキストなどの必要なファイルは自分で作成・配置する必要がある。とはいってもテンプレートは既にネット上で多くの方が公開しているので、それをそのまま使ってもいいし、許されているならそれを改変して自分流にカスタマイズしてもいい。

WindowsへのJekyllの導入手順はこちらの方の情報が参考になった。
Windows で Jekyll 1.3 を動かすまでの手順 - てっく煮ブログ

Pythonにsetuptoolsを入れようとするとUnicodeDecodeErrorが発生するので、Pygmentsの導入はあきらめた。(←後に解決。原因はよくわからなかったけど、とりあえずPython 3.xでは動かないということは明らか。)

Jekyllの導入手順

  1. RubyInstaller for WindowsからRubyInstaller 2.0.0とDevelopment-kitをダウンロード・インストール。
  2. コマンドプロンプトでDevelopment-kitのインストール先をカレントディレクトリにして、「ruby dk.rb init」「ruby dk.rb install」を実行。
  3. コマンドプロンプトで「gem install jekyll」を実行。

[A]新しくサイトを作る場合

コマンドプロンプトからサイトファイルの作成場所をカレントディレクトリにして「jekyll new [サイトディレクトリ名]」を実行。「cd [サイトディレクトリ名]」「jekyll serve」を実行する。次のように表示されていれば正常完了。間にエラーメッセージが表示されていれば、ページ生成に失敗している。

Configuration file: C:/RubyDev/jekyll-bootstrap-master/_config.yml
            Source: C:/RubyDev/jekyll-bootstrap-master
       Destination: C:/RubyDev/jekyll-bootstrap-master/_site
      Generating... done.
    Server address: http://0.0.0.0:4000
  Server running... press ctrl-c to stop.

正常ならば、ブラウザからhttp://localhost:4000を開くとサイトプレビューが表示される。

[B]テンプレートや既存のサイトがある場合

そのルートディレクトリをカレントディレクトリにして、「jekyll serve」を実行する。あとは[A]と同様。

今回はPygmentsを使わないので、サイト生成前にサイトのルートディレクトリにある「_config.yml」に「pygments: false」を追加しておく必要がある。


まだ仕組みを把握し切れていないが、サイト生成を構成するファイルは少ないので、カスタマイズはそれほど難しくなさそう。

問題は技術そのものよりも活用方法で、WordPressみたいな動的ブログサイトとどう使い分けるかということ。
JekyllみたいなのとWordPressみたいなのの組み合わせ - Weblog - Hail2u.net

Jekyllは原稿をテキストファイルで作成して手元に置いておくので、後から参照・修正するときに都合がいい。また、静的コンテンツなのでホストに負担が掛からず、ロードが速い。周りを見ていると、ソースコードの構文ハイライトプラグインを目当てに使っている方が多い。

今のところこれを積極的に使うつもりはない。でもgooブログはソースコードや数式といったテキスト・画像以外のコンテンツを入れるには不便だから、そういった必要が出てきたときはJekyllを活用してもいいかもしれない。

『テクノロジー』 ジャンルのランキング
この記事についてブログを書く
« 131121 Win8.1対応Intel HD G... | トップ | 昔のJISキーボード配列 JIS C... »