sbのテンプレートを配布する

sbが1.06にアップデートされたのに伴い、
自分が使用しているテンプレートをパッケージにして
ファイル1つで配布できるという素晴らしい機能が追加されました!

・・・が、パッケージの作り方について公式ページの説明は

配布アーカイブにはテンプレートパッケージファイルを作成するためのスクリプトを添付しています

のみ。さすがtakkynさん_| ̄|○

というわけで、以下自作のsbテンプレートの配布方法を書いてみました。
自作のsbテンプレートを公開したい、という方は参考にして見てください。

1.sb1.06をダウンロード
sb1.06をダウンロードして解凍します。
解凍したsb1.06の\sb106D.tar\sb\util\make_template
がパッケージ作成用のスクリプトとなります。

2.make_templateフォルダ内のファイルを編集
ダウンロードしたmake_template内のファイルはsbの標準テンプレートが適用されている状態です。自分のblogのテンプレートをパッケージにするためにこれらのファイルを差し替えます。

・base.html
ベースHTMLテンプレートです。自分のblogで使用しているベースHTMLテンプレートをそのままコピーします。
・entry.html
個別エントリー用HTMLテンプレートです。自分のblogで使用している個別エントリー用HTMLテンプレートをそのままコピーします。
・style.css
CSSテンプレートです。自分のblogで使用しているCSSテンプレートをそのままコピーします。
・__templateフォルダ
自分のテンプレートで使用している画像ファイルを保存します。
・info.txt
配布するテンプレートパッケージに記述する説明書きです。自分のテンプレートを配布するときに気をつけてもらいたいことなどを記述します。

・make_temp.pl
スクリプト本体です。触る必要はありません。
・template.txt
パッケージ化されたsbの標準スクリプトです。この後自分のテンプレートを作成すると上書きされてしまうので、名前を変更しておきます。

なおテンプレート作成時の忘れがちな点ですが、

1)MyblogList、blogpeople等のリンクを外す。

2)画像へのリンクをurl(./__template/****)もしくはsrc="./__template/****"といったような相対パスで記述する。

3)画像の名前がbackgraund.gifのような一般的なものにならないようにする。僕の場合はファイル名をbackgraund_tera1.gifのように自分の名前を語尾につけています
※2004/09/26 17:18修正 a~z,_(アンダーバー)以外の文字の含まれたファイルはパッケージできません。

(今回のテンプレートパッケージの仕様では、テンプレートを読み込んだときに画像ファイルが全てWeb上のtemplateフォルダにアップされます。そのためsb管理画面で複数のテンプレートを読み込んだ場合、画像ファイルの名前が同じだと上書きされてしまいます。)

以上3点に気をつけましょう。

3.Active perlをダウンロード
今までの手順でスクリプトの配布準備は終了しました。
後はmake_temp.plを実行すればtemplate.txtが生成されるのですが、
make_temp.plを実行するためには、自分のPCでperlのプログラムが実行できる必要があります。
そのためにはhttp://www.activestate.com/からActive perlというperlの実行モジュールをダウンロードしてインストールします。
インストールの方法はhttp://muimi.com/j/lang/perl/に詳しく書いてあるので参考にしてください。

4.テンプレートパッケージを作成する。
それではいよいよテンプレートパッケージを作成します。
といってもここまでくればmake_temp.plをダブルクリックするだけで終わりです。template.txtというファイルが自分のblogのテンプレートパッケージとなります(画像、CSSなども全て1つのテキストファイルにまとまります)。

なお、コマンドプロンプトから実行すると以下のようになります。

・・・以上でパッケージ配布方法の説明は終わりなのですが
売名ついでにこのブログで使用しているテンプレートを配布しておきましょう(笑)

■テンプレート
http://prius.sakura.ne.jp/sbtemp/template-tera1.txt
「右クリック⇒対象をファイルに保存」で保存して下さい。

見た目はこんな感じです。

こんな便利なテンプレートパッケージ作成用のスクリプトがあるのだから、
みんなが自分のテンプレートを発表する場があればいいのになぁ。
JUGEM TEMPLATER 同盟じゃないけどさ。