前書き

これから私は、このblogツール「Pinky:blog」の特徴について、あなたに長々と前口上を聞かせようと思っている。あなたが一刻も早くこのツールの全体像を掴みたいと考えており、長い文章を読まされたくないのなら、このページを読む必要はない――簡単な特徴のリストを流し読みした上で、動作サンプルを数分ほど触ってもらえればいい。それで十分だ。

このblogツールの特徴、あるいは設計思想について詳しく知りたいという方がいれば、このページが少しは役に立てるかもしれない。全部読まずに、ページの途中までで読むのを止めてもかまわない。重要なことほど先に書いてあるから。


1.CSS着せ替えテンプレートに対応

「CSS着せ替えテンプレートプロジェクト」とは、2006年にワコ氏によって提唱され、現在では希(こいね)氏によって運営されている企画の名称である。これはWebページのテンプレートを配布する際に、htmlファイルを配布するのではなく、一つの基礎htmlに対応したスタイルシート(これをCSS Designplate、あるいは単にCDPと呼ぶ)のみを配布することによって、これを入れ替えるだけでデザインを変更できるようにしよう、という素敵な提案だ。詳しくはプロジェクトの公式サイトを見て欲しい。

公式サイトのロゴ

プロジェクトサイトの立ち上げから二年半ほどしか経っていない(2009年1月現在)にもかかわらず、多くの人たちがこのプロジェクトに協賛し、基礎htmlに対応したCSSテンプレートを制作・公開している。

あなたは自分のお気に入りのCSS着せ替えテンプレートを、自分のblogのテンプレートとして(必要なら少しばかり手を加えて)使わせてもらうことができる。これがPinky:blog最大のセールス・ポイントだ。これに比べれば、他の利点はどれもたいした事ではないと言い切ってしまうことができる。Pinky:blogというツールは、そのすべてがCSS着せ替えテンプレートを使うために設計されているのだから――操作性や画面デザインまで含めて、すべてだ。

どんなテンプレートが配布されているのか知りたい? まずはプロジェクトサイトを訪れて、CSS制作者リンクを片っ端からチェックしてみるといい。きっとあなたは、デザイナーの腕前と、テンプレートの質の高さに驚かされるだろう。

さらに、CSS制作者リンクに登録されていないサイトも、相当な数あることを付け加えておこう(2008年初頭にプロジェクトサイトが移転したときに、リンクが一度初期化されたためだ)。 もっと色々なテンプレートを見て回りたいなら、Googleで検索してみよう。


2.blogツールとしての基本機能

私自身がblogツールとして必須だと思う機能は、一通り実装している。記事のテキスト検索、記事へのコメント、リファラ(リンク元URL)の記録と表示、そして「下書き記事として公開せずに保存しておく」機能など。また、広く知られている「Web拍手」と似たようなツールとして、ひとことメッセージフォームなんてのもある。

また、今までに不足していた基本機能も、先の開発でカバーするようにしている。たとえばバージョン2では、画像の添付、メールによる投稿通知、インポート&エクスポートなどの機能が加わった(これら新機能の詳細については、バージョン2系列での主な新機能・変更点を参照してほしい)。保証はできないが、おそらくこれからも基本機能の強化は進んでいくだろう。

ただし、一つだけ我慢してもらいたいことがある。Pinky:blogはトラックバックに対応していない。送信にも受信にも。これは手間がかかるという理由だけでこうなっているのではなく、私がトラックバックという機能をあまり信用していないことによる。

もしもあなたが「トラックバックの使えないblogツールなんて!」と憤慨されたならば、別のblogツールを使ってみることをおすすめする。もしかしたら何かのきっかけで私の考えがひっくり返り、トラックバック機能がつく可能性もないとは言えないが、それよりも他のblogツールを探してみたほうが早いだろう。私のお奨めはtDiaryだ。


3.記法

記事を継続的に書き続けようと思うのなら、できるだけ書きやすい記法であることが重要になる。そしてその点に関して、HTMLの直書きというスタイルはあまり望ましくない。ちょっとした短い記事を書こうとするだけでも、そのテキストを<p><a>、さらに場合によっては<h3><h4><ul><li><em><strong>で包み込んでやらなければならないからだ。

Pinky:blogでは標準で4種類の記法(フォーマット)をサポートしている。MarkdowntDiary記法通常のHTML、そして装飾なしのテキストだ。最後のは本当にテキストそのままだ(掲示板への書き込みをイメージしてほしい)。それぞれの記法については、記法リストにまとめてある。

またPinky:blogでは、新しいHTMLトランスレータを導入することによって、対応する記法の種類を増やすことができるような仕組みになっている。現時点で準備できているのは上記の標準4種類、それに追加で導入できる「Textile」「はてな記法」を合わせて6種類だけだが、他のいくつかの記法への対応も考えている。(今のところ視野に入れているのは、Markdown ExtraPukiwiki記法だ)

もしもあなたがRubyを習得したプログラマなら、自分で他の記法に向けたHTMLトランスレータを書くという選択肢もある。トランスレータAPIを参照してほしい。


4.Windows実行ファイル版

Pinky:blogは基本的にCGIアプリケーションであり、Web上にblogを公開することを主な目的とするツールだ。しかし人によっては、Web上に公開せず個人的な記事を書きたいことがあるだろう。もしくはWeb上に公開しつつ、ローカル環境でも(インターネットに接続せず)執筆・閲覧を行いたいこともあるだろう。

Windows実行ファイル版(スタンドアロン版)は、こうした目的に最適なパッケージだ。

  1. Windows実行ファイル版をダウンロードして
  2. あなたのWindows PC上にファイル一式を展開し
  3. 中に入っている blog_server.exe を実行する

このわずか3ステップで、すぐにあなたのblogが動作する。あとはブラウザから http://localhost:8888/ にアクセスするだけだ。もちろん、追加で何かほかのソフトウェアをインストールする必要はないから、USBメモリに入れて持ち運ぶことさえできてしまう。

このパッケージに関する詳細は、ローカル環境でPinky:blogを動かすにまとめてあるため、興味があればそちらのページも参照してほしい。


他の特徴

ここまで書けば、Pinky:blogをあなたに売り込むには十分だろう。もしもあなたがこのblogツールに興味があり、なおかつあなたの利用しているサーバーにrubyが組み込まれているなら(もしくはWindows上でメモ目的に使ってみたいなら)、ぜひ一度試してみてほしい。

他にもPinky:blogの特徴といえる点を、いくつか書いておく。ただしこれらは蛇足のようなものだ。

  • Pinky:blogでは記事が単一のカテゴリに属するのではなく、複数のタグで属性付けされる。あなたがタグという概念に馴染みがないなら、はてなダイアリーやtDiaryのように一つの記事に複数のカテゴリーを設定できる、と言った方が分かりやすいだろう。もちろん、タグ検索や一括タグ付けも可能だ。

  • あなたが他のblogツールを使ったことがあるなら残念に思うかもしれないが、Pinky:blogには(この手のツールにしては珍しいことに)プラグイン機構がない。おそらく、これ以降追加されることもないだろう。

  • 記事内リンクなどを簡単に書けるようにする、特殊なリンク形式がある。詳しくは特殊リンクを参照してほしい。

  • URLにはPATH_INFO形式を採用している。すなわち、Pinky:blogでの標準的なURLは http://localhost/blog.cgi?id=xxxx ではなく、 http://localhost/blog.cgi/xxxx のような形式をとる。これをあなたが望まないなら、前者の形式に切り替えることもできる。

  • データ保存にはテキストを使っている。一部の頻繁に読み書きするファイルはJSON形式だが、記事のデータなどはヘッダ+本文の単純な形式(拡張子.md)で記録している。もしも必要ならば、テキストエディタで直接読み書きすることも容易だ。

  • ユーザー向けのナビゲーション。執筆者に優しいのも重要だが、読者に優しいこともそれと同じくらい(あるいはそれ以上に)重要なことだ。Pinky:blogではパンくずリストやlink要素を活用して、なるべく素早くblog内を渡り歩けるようデザインしてある。

  • Pinky:blogにはスナップショット機能が搭載されている。blog内のすべての記事と画像などのリソースを、静的なHTMLとして出力して、CGIスクリプトを通さなくても読めるようにする機能だ。それほどよく使う機能でもないが、簡単なバックアップ目的や、自分のPCで読み返したいときには便利かもしれない。

  • サイト上に要望&バグ報告ポストというものが設置してあり、機能に関するリクエストや、バグを見つけた際の報告などを、そこから気軽に――ハンドルネームの入力なしで――行えるようになっている。Pinky:blogを使ってみて「もっとこの点をこうして欲しい!」と思ったときには、ここに投稿すれば解決されるかもしれない(事実、バージョン2で加わった新機能や変更の多くは、このポストへの投稿が元になっている)。

  • 今となっては特に珍しいことではないけれども、Pinky:blogはオープンソースとして配布している。ライセンス(利用条件)も明確にしてあるため、必要があれば改変・再配布なども自由に行うことができる。