toshikaz Blog

A blogging framework for hackers.

Markdown形式のファイルをターミナル上でプレビューする方法

Octopressでは

% rake new_post\["title"\]

このようにnew_postコマンドで、記事ごとにMarkdown形式でファイルを作成する。

作成したMarkdown形式のファイルからHTMLファイルを生成し、サーバにデプロイすることで静的なブログ記事を投稿する。

% rake gen_deploy

自動的にサーバにデプロイされてしまうので、デプロイ前にプレビューするコマンドもあるが、いちいちブラウザで開くのが面倒くさい。 それに、以前からMarkdown形式のファイルを簡単に見ることができないかと思っていた。

最近はREADMEファイルがMarkdown形式であることも割りとあるが、README.markdownファイルを見るのに、一般的にはどうしているのだろうか? marukuコマンドでHTMLファイルを生成してブラウザでみてるのか、それともMarkdown形式対応のエディタで開いてるのだろうか…

いずれにせよ、ターミナルから離れるのが面倒なので、markdownコマンドとテキストブラウザのlynxでプレビューすることにした。

% sudo brew install markdown
% sudo brew install lynx

これで、

% markdown README.markdown | lynx -stdin

とすることで、ターミナル上でMarkdown形式のファイルを表示できることができる。

せっかくなので、aliasを作成して、

% mdview README.markdown

だけで、プレビュー表示できるようにしようとしたが、ここでちょっとつまづいた。

zshではaliasの設定に引数を取れないので、

% alias mdview="markdown $1 | lynx -stdin"

とは書けない。そのような場合は関数を定義するらしい。 .zshrcファイルに

function mdview() {
         markdown $1 | lynx -stdin
}

と記述することで、

% mdview README.markdown

とaliasのように使用することができた。 関数名は mdless の方がよかったかな?まぁいいや。

これで楽になった。よかったよかった。

Comments