2008年06月26日
Plain Old HTML
8時間寝ても疲れが取れなくて、朝起きてまず気がつくのが肩こりの痛みのけんじです。
人は悲しいくらい 忘れていく生き物~♪と言う歌があるように、残念ながら人の記憶は揮発性なのでメモを取ることは欠かせられない。このブログもタイトルが示すようにそれが目的だ。
ブログはWebLogの名前が示すようにログなわけで、必然的に時間軸上に1次元に並ぶ。
しかしある関心事はブログの1エントリーつまり通常1日の中ですべて完結するわけではないので、いくつかのエントリーに分散してしまう。これはまずい。後からエントリーを見直したとき or 他の誰かが情報を検索しに来たときに、検索者は「ある関心事についての解にたどり着くまでに、いろいろ悩んだ軌跡」を見たいのではなく、「ある関心事に関する問題とその解」を見たいわけだ。ブログは残念ながら情報の断片しか見せてくれない。
よってブログは技術情報を保存するメディアとしてはふさわしくない。
では何がよいか。Wikiか?と思ったけど、WikiはWikiで何かしっくりこない。
便利そうだけど、非常に不便なのだ。肌に合わないだけかもしれない。
まず我慢できないのがWikiのエディタの不便すぎるところ。
あの小さい編集窓で大きなテキストを編集させられる苦痛、かつエディタは使いづらい。
さらにその編集結果を確認したくてもレスポンスが遅い罠。
Wikiフォーマットに精通すれば編集結果を確認しなければならない機会も減るかもしれないが・・・。しかしWikiフォーマットは各Wikiで統一されていない。これはひどい。
つまりWikiはこの用途においてはそびえたつクソなのだ。
Wikiは多人数で情報を共有し編集することが目的なので、個人的メモには合わない。
そこで思いついたのがタイトルにもある「Plain OldなHTML」だ。
Plain Old HTMLは何らかのプログラムによって自動生成されていない、生の手書きのHTMLを表す。
Webサーバ上でemacsを常に起動してあるので、その上でhtmlファイルを開く。emacsなのでエディタ機能は完璧だ。さらにWebサーバ上のファイルなので、保存したらすぐに反映される。常にエディタは開いているので、メモしたいときにすぐメモをすることが可能だ。
つまり最適解。
と思ったのだけど、検索機能が無かったり、「Plain Oldと言ってもちょっとはデザイン良くないとやだよね」と色気を出したために発生するデザイン用タグが入ったりとちょっと妥協しないといけないこともある。
検索に関してはページ毎に項目が分かれているため、情報が入っているページはすぐに見つけることができ、後はブラウザの検索機能があるのでそれほど問題にはならない。
検索機能が必要なのは、どこに情報があるのかわからないから必要なのだ。検索しなくてもわかれば検索の必要はない。
あと、サーバ上のファイルを直接編集するため、間違って必要な情報を消してしまったり、編集ミスは結構な痛手となる。
そこでSVNでサーバ上の静的コンテンツをバージョン管理する。これでいつでも元に戻せるのでガンガン編集することができる。
よって、結局各種便利そうなツールはすべて捨て、インターネット黎明期のようなHTMLタグ手打ちが最良ではないかと考えにたどり着いた。この考えが本当に最適かはもうちょっと試してみてから判断してみよう。
こんな考えが思いついたのはSeasar関連の情報がブログ上に散乱してしまっていて、非常に不便な思いをした結果、他人のふり見て我がふり直せと言うこと。今や単なるコメントの付けられる日記としか使われていないブログは、メディアとしての役割を終える。もしくは将来性、可能性を使い果たしたのかもしれない。
と、またダラダラと内容の薄い日記を書いてしまったのだけど、用はトップページにzshやemacsのメモをHTMLドキュメントとして置きましたよと言うことだ。
emacs メモ見せてもらいました。
C-x r 系のキーバインドは矩形操作とレジスタ操作
が混在しててちょっと混乱するよね。
C-x r t は知らなかった。
あと C-x r o はまあ便利です。
文字列置換、僕は普通は M-% (query-replace) か、
M-S-% (query-replace-regexp) を使うかなぁ。
さてここでクイズです。
Q: query-replace(などの名前のわかっている関数) が
現在どのキーにバインドされてるかを調べるには?
ヒント: where
訂正:
誤 M-S-%
正 M-C-%
キーボードによってはかなり押しにくいんだけどねw
M-%で置換は楽ですね。
M-C-%が反応しないな・・・。where-isでは確かにM-C-%に割り当てられているのに。
ということでメモを書き換えておきました。
情報thx!