ここにたどり着いたちみは誰かの日記ページからクリックして来たに違いな い。そこのページで日付ごとの一覧ページがあったじゃろう。それを 自動生成しているのがここで紹介する mkdiary.rb である。
日記は、URL見れば分かるように、「年/月/日」というディレクトリ構成になっ ていて、「日/」ディレクトリの下に日記.htmlを突っ込んでいき、「年/」のディ レクトリにその年のタイトル一覧が出るようになっている。これを一括してやる ためのスクリプトがmkdiary.rbである。あらかじめ 「年/月/日」 と いうディレクトリにその日の日記ファイルが出来ているという状態のときに、 「年/」のディレクトリで
% mkdiary.rb .ってやると、その年の一覧ができるようになっている。
では最初に当日の日記を書くときの初期設定はどうしたら良いかというと、 mkdiary.rbに日付を与えて、
% ./mkdiary.rb -date 1999/08/30
とすれば良い。しかし、いちいちシェルに下りて日付指定を打つのが面倒に なったので、webdiary.elという Emacs-LispプログラムによりEmacsの中から勝手に mkdiary.rb -date ほげ を呼べるようになっている。手順をまとめると次のようになる。
(autoload 'webdiary "webdiary" "Keep web diary!" t)を追加する。
以後はweb日記を付けたくなったら、M-x webdiary のあと日付を入力すると その日用のディレクトリが自動的に掘られ、日記用テンプレートがバッファに現 れるので、そこに文章を書いていく。そのファイルをセーブするとバックグラウ ンドで mkdiary.rb が呼ばれ、「年/」のディレクトリのindex.htmlが更新され る。
おっと旅行中も日記をつけたくなっちまったぜー。てなときにmail経由で サーバ上の日記ディレクトリに登録できるようにした(暇だねぇ)。ここに書くと 長くなるかな。てことで詳しいマニュアル。
rjpgというスクリプトとimg2wwwというスクリプトを組み合わせて サムネイル画像の埋め込まれたHTMLを生成している。全体の手順は以下の通り。
デジカメでパシャリ。当然メモリカード上にjpgで存在しているので 話は簡単。
Web用なら400x300くらいがちょうど良いのでそのサイズにして ディレクトリに置く。例えばこんな感じ。
% mkdir hokkaido1999
% cd hokkaido1999
% rjpg -x 400 /dos/d/dcimages/*.jpg
きょーびの回線事情なら 400x300 より大きくてもいいかもしれん。
たとえば800x600でいいなら rjpg -x 800 〜〜
て感じ。
これでメモリカードにフルサイズで存在するjpgファイルが全て 400x300とかにリサイズされてコピーされる。ついでに、jpgのコメントエリア に写真のタイムスタンプを埋め込むので、以下で説明するimg2wwwでHTML ファイルのタイトルに日付を埋め込むことが可能になる。ちなみに rjpg利用にはnetpbm と jpegライブラリが必要。
400x300にした段階で要らない写真を消しとく。で、Webページに組み 込む写真のサムネイルを作り、そいつを含んだhtmlを一気に吐き出す。 ツーレポなら、
% img2www *.jpg日記なら、
% img2www -T *.jpgimg2wwwってのが一気にサムネイルとhtmlを吐 き出すシェルスクリプト。これも要netpbm。
既に写真を埋め込んだindex.htmlが出来上がってるので、あとは 適当に文章を書いてく。
でおちまい。
てな流れで書いていたら、ふなが img2wwwをmkdiaryと連係させて欲しいというので、 img2www.elを作った。これは*.jpgのたくさんあるディレクトリで index.htmlなどを編集しているときに、M-x img2www とすると、 バックグラウンドで img2www を呼び出して、それが吐き出したHTML文を ポイント位置に挿入してくれる。領域を指定してから、 C-u M-x img2www すると、領域部分をimg2wwwの出力に置換してくれる。 インストールは、~/.emacs に
(autoload 'img2www "img2www" "Image indexer interface" t)
を追加する。
わかるかな、分からなかったら質問下さい。
ついでに、大量写真をブラウズするときに便利な -br オプションも あるが、それについては デモページを。
…
あーもう、なんでわしはすぐ、こういうのを書くことより、 書く環境を整えて、その道具をいじるほうに夢中になってしまうのだろうか。 まいいや。
気まぐれ記