Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save takkkun/5325983 to your computer and use it in GitHub Desktop.
Save takkkun/5325983 to your computer and use it in GitHub Desktop.

git + markdownで管理/記述するブログについて

いきさつ

「CMSでブログ書くのダルくね? やっぱ使い慣れたテキストエディタが一番でしょ」

という声が聞こえてくると言うか、プログラマならそう思っちゃうのは自然の摂理。

概要

基本はvimなりEmacsなりSublime Textなりでmarkdownによってブログエントリを書き、 それをgitのリポジトリに突っ込むと、ブログに反映されてわー嬉しいというもの。

なので、要素としては:

  • ブログエントリを管理するgitリポジトリ
  • そのgitリポジトリの内容をブログ(HTML)として表すアプリケーション

以上の2つとなる。

"ブログとして表すアプリケーション"では噛みそうになるので、ここでは仮に"rabbitfire" と名付けておきます。

rabbitfireについて

以下のようにしたい。

$ gem install rabbitfire
$ vi config.rb
$ rabbitfire -c config.rb

これだけでそのアプリケーションは起動し、設定ファイル(上記の例ではconfig.rb)に 記述されたgitリポジトリを元に、ブログを提供するようになる。

蛇足だが、昨今のアプリケーションサーバ(unicorn, puma, etc...)に倣い、設定を 設定ファイルで記述することはもちろん、rabbitfireコマンドへのコマンドライン引数と して与えられるようにしたい。理想は:

$ gem install rabbitfire
$ rabbitfire -s https://github.com/takkkun/blog.git

だけで簡単に作れちゃう、みたいな感じ。

ブログの作成

rabbitfireは起動したので、次はブログの作成に移る。こんな感じを想定。

$ git clone https://github.com/takkkun/blog.git
$ cd blog
$ gem install rabbitfire-tools
$ rft new .
$ git add .
$ git commit -m 'Create my blog'
$ git push origin master

エントリの作成

こんな感じ(カレントディレクトリがblogなのを想定)。

$ rft edit
(エディタが起動する)
$ git add .
$ git commit -m 'Write an entry'
$ git push origin master

他いろいろ

  • SCMはgit以外も使えるとまあいいよね
  • もちろんmarkdown以外でも書けるといいよね
  • rft editは引数なしだとエントリの新規作成を想定してるけど、editの後にエントリの 識別子を指定すると編集になる。そこで補完とか効くとクールだよね
  • ブログのデザインなども管理したいよね
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment