Landscape トップページ | < 前の日 2004-01-24 2004-01-25 次の日 2004-01-26 >

Landscape - エンジニアのメモ 2004-01-25

記事単位での html 出力と記事の削除


* 記事単位での html 出力と記事の削除

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [ChangeLog メモ]

ChangeLog メモを html に変換するとき、記事単位で html を出力したい。でも、記事を削除したときに URL が変わってしまう場合、どう対応すべきなのか?

- やっぱり日付よりも title

今までは chalow の「日付単位での html 出力 + 記事単位アンカー」で十分だと思ってたが、考えが変わった。

何日か前に、Google で いっしょにシレン を検索したとき、自分のサイトがヒットした。しかし、title タグには Landscape と日付しか入っていないので、どんな内容が書かれているかわかりにくい。せっかく記事毎にタイトルを付けいているのに、生かされていない。日記なら日付が基準なので良いけど、私はこのサイトは日記ではなくメモだと思ってる。せっかく書いた内容なんだし、最大限に利用できるように整えたい。

- chalow で 記事単位で出力させることはできるだろうけど・・・

日付 + 記事番号をファイル名として利用すれば chalow でも記事単位で出力できる。title タグに ItemHeader を埋め込む修正も可能だろう。しかし、問題がないわけではない。記事を削除したり順番を入れ替えたりすると、URL が変わってしまう。2004-01-24 の記事群から「* amazon: 北島三郎のアルバムの曲目リストが間違ってるのでアマゾンに報告」を削除したり、プライベートアイテム化して不可視にすると、記事番号がずれる。結果、それよりも後ろのにある 「* ラーメン: 駿河@栃木市の塩ラーメン」 の URL が変わってしまう。日付単位の出力であればファイル名は変わらないので、探す手間は少し増えるがアンカーの位置がずれても記事を読むことはできた。しかし、記事単位のファイル名だと、ファイル名の変更は即 404 Not Found に繋がる。これは問題だ。

記事の削除や入れ替えなんてほとんどないから良いかもしれない。でも、なんとかする方法は無いものだろうか? MovableType では記事別 html は普通に使われてるが、DB を使って管理している。おそらく、記事登録時に連番を振っているんだろう。記事のタイトルや記事本文のハッシュを元にファイル名を決めるのでは、タイトルや本文を修正するたびに URL が変わってしまう。何か記事番号を手動で振るのは、簡単にメモできるという ChangeLog メモの利点を損なう。それに同じ番号を振ってしまったりするミスが発生しかねない。ツールで検出できるだろうけど。やっぱり記事を管理するファイルなり DB なりを導入するしかないのかなあ。他のシステムでは、この問題をどうやって解決しているんだろう?

- 先行事例調査

うろ覚えだけど、tDiary はファイル単位で記事を管理していたはずだ。参考になる情報があるかもしれない。

Google で tdiary 記事別 html で検索。期待する記事がヒットしないな。では、Google で tdiary 記事別 html を検索ではどうだろう。ダメだ。ヒット数0件。記事別 というキーワードが悪いのかな。記事単位で検索してみるか。全体的にヒット件数が少ないので、html という絞り込みもとりあえず外してみよう。Google で tdiary 記事単位 で検索。参考になりそうなサイトがいくつかヒット。

tDiary でも 記事単位で出力できるようだ。
tDiary Blogkit: tDiaryをblog風に運用する
http://cvs.sourceforge.net/viewcvs.py/tdiary/blogkit/README? ...
うーん、削除については書いていないな。

キーワードを変えて、Google で tDiary エントリー 単位で検索してみると同じ問題を考えた人の記録がヒット。
ishinao.net/mylog - Web日記システムの欠点はtitle要素の扱いだ from 気分はノースサイド
http://mylog.ishinao.net/id/574
ドキュメントは、1ドキュメント単位、ジャンル単位、日付単位など自由に表示できるようにする。内部管理単位はそのいずれにも依存しないようにしつつ、それをどう見せるか(Web日記的にするか、Wiki的にするか、blog的にするか)は表示側の処理が決める。
管理についての具体例は書かれてないなあ。いくつか関連記事にリンクが張ってあったので読んでみよう。

Web日記システムの欠点はtitle要素の扱いだ
http://www.club-siesta.com/northside/2003/05/08weakpointofdi ...
そのページに記述されている内容を的確にtitle要素に書くことで、ユーザビリティは大幅に向上する。その根底には、「URI一つに対して、リソースが一つ対応する」という、とても美しいWWWの原則がある。ページ内のアンカーに対して一つのコンテンツを対応させるという考え方は、WWWの原則に馴染まないのだ。
とても共感できる内容。美学を追究しているという点でも見習うべき。すばらしいなあ。

私はアンカーってあまり良いものだとは思わない。アンカー付きのリンク先をクリックしたとき、ブラウザのスクロールバーが中途半端な位置にあるのがまず美しくない。収まりが悪いというか。男ならわかるよな。で、逆にスクロールバーが無いページや、アンカーが最下段や最上段にあるときにだと、いったいどこをアンカーが示してるのかがわからないことがあって、それも不便だと思う。tDiary だと JavaScript を使って選択されたアンカーをハイライトさせるけど、あれはすばらしい機能だと思う。ブラウザはあの機能を標準でサポートしてくれるといいのにね。

Web日記システムの欠点はtitle要素の扱いだ
http://sho.tdiary.net/20030509.html#p01
やっぱり日記ってそういうものじゃないんだろう
という主張から、tDiary のポリシーが伺える。確かに日記ならそれで良いんだよね。ただ、私は前述したように日記としてではなくメモとして書いている。そういう場合は MovableType を使う方が良い、というのも正論だが、今回の問題は Chagelog メモという環境での方法を考えてる訳なので、別のツールを使うのは最後の手段だ。

2003/05/12はどんな日?
http://min.sugama.org/nikki/2003/05/12.html#y2003m05d12c2
一つのタイトル要素がすべての人に最適な情報が伝わるなんてことはありません。『2003/05』よりはマシでしょうが、集約に関してはけっきょくのところどこで妥協するかだけだと思います。
確かに。内容はユーザが探しているものと一致しているのにもかかわらず、タイトルの付け方が悪いために求めているものと違うと誤解されることだってあるはず。でも、大量の検索結果のほとんどが日付しか表示していない中で、タイトルが表示されているというのはかなりの強みになるはず。

おもしろいと思ったアイディア。ブラウザはまだまだ進化の余地がある。
http://min.sugama.org/nikki/2003/05/12.html#y2003m05d12c2p7
あと、ブックマークの話はどちらかというとブラウザがブックマークにアンカーを含めることができるインターフェースをもち、なおかつ(たとえば)<p id>〜</p>で囲まれたところをタイトルとして抜き出すという実装ができればいいだけの話で、あまりWEB日記には関係ないような気がします

- 結論は?

ああ、勉強になったなあ。おやすみなさい・・・って、結論が出てないじゃん。それもそうか。今日のサイト群の主張は面白かったが、そもそもデータのハンドリングについて論じているものではない。日記とはどうあるべきか、ユーザビリティから考えるとタイトルはどうあるべきかといったことについて論じていたのだから、私の直面している問題について結論が出ていなくて当たり前だ。

- うわあぁああああ〜〜ん どおおおおしよおおお 不安だよォォオオ〜 ねえええ〜〜〜ッ 失敗したら どおおおしよお〜〜 このアイデアがぶっつぶれたら どおおおしよおお〜〜

結局、削除しないとか、削除したらダミーの記事を追加するとか、そういった方法しかないのかなあ。

すべての記事の見出し (全1029件)
全カテゴリの一覧と記事の数
カテゴリごとに記事をまとめ読みできます。記事の表題だけを見たい場合は、すべての記事の見出し (カテゴリ別表示) へ。

直近30日分の記事
2007-04-23 (Mon)
2007-03-07 (Wed)
2007-02-27 (Tue)
2007-01-17 (Wed)
2007-01-15 (Mon)
2007-01-14 (Sun)
2007-01-08 (Mon)
2006-12-01 (Fri)
2006-11-22 (Wed)
2006-11-20 (Mon)
2006-11-19 (Sun)
2006-09-30 (Sat)
2006-08-29 (Tue)
2006-08-04 (Fri)
2006-07-27 (Thu)
2006-07-23 (Sun)
2006-07-17 (Mon)
2006-07-10 (Mon)
2006-07-06 (Thu)
2006-07-03 (Mon)
2006-06-29 (Thu)
2006-06-28 (Wed)
2006-06-27 (Tue)
2006-06-25 (Sun)
2006-06-19 (Mon)
2006-06-18 (Sun)
2006-06-15 (Thu)
2006-06-11 (Sun)
2006-06-01 (Thu)
2006-05-30 (Tue)
プロファイル
斎藤 宏明。エンジニアです。宇都宮市に住んでいます。
リンク
RSS
スポンサードリンク
Powered by
さくらインターネット

© 斎藤 宏明 Saito Hiroaki Gmail Address
Landscape - エンジニアのメモ http://sonic64.com/
Landscape はランドスケープと読みます。
ひらがなだと らんどすけーぷ です。