トップ «前の日記(2005-05-08) 最新 次の日記(2005-05-10)» 編集

いしなお!

2002|01|02|03|04|05|06|07|08|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|02|03|04|07|
2009|03|

2005-05-09 [長年日記]

_ [タグ][キーワード][SBM] キーワードとタグ (11:16)

はてなブックマークとTaggingはてなブックマークとTagging」あたりのネタ。ちゃんと一般論としてまとめる気力がないんで、現在のMM/Memoの実装例を紹介してみる。

MM/Memoでは、

  • ユーザーが自由に入力するタグ(ジャンル)
    • タグ入力候補として、該当のドキュメントから自動抽出した特徴語を表示し、ワンクリックでタグとして追加可能な入力補助機能
  • 上記で自動抽出した特徴語を、隠しタグとして登録。通常表示時は見えないが検索キーとしては利用できる。
    • 検索から「自動ジャンルも検索」を有効にして検索すると、ユーザーが入力したタグと、自動登録した隠しタグをフラットに検索する

というようにしてある。

現状のインターフェースが使いやすいかどうかはともかくとして、ひとまず上記のような構造にすれば、ちゃんとタグを入力したい人はdel.ico.usみたいな使い勝手、タグを入力しない場合でもはてなブックマークみたいな使い勝手での、ブックマーク(メモ)の串刺し検索が実現できる。

あと、MM/Memoではブックマークのタイトル、タグ、コメントなどで使われているテキスト自体から特徴語を抽出し、特徴語が類似しているブックマークをEstraierの類似文書検索機能を利用して抽出している。だから、似たような話題に関するブックマークは、URLやタグが違っていても、related検索(各ブックマークの虫眼鏡マークをクリック)である程度抽出することができる。

MM/Memoは実験的に機能を追加していっているんで、インターフェースはあまり洗練されていないし、作ってみたらダメだった機能もいろいろあるけれども、上記のような機能群はかなり有用な機能だと思う。洗練されたインターフェースで実用レベルで実装してくれるところ希望。

_ [MM][JavaScript] メモを該当ページ上で書くbookmarklet (21:18)

JavaScriptの動的ロード」話をみて最初に思いついたネタなんだけど、どうせ誰か作るだろうと思って放置していたら誰も作る気配がないんで、試しに作ってみた。

bookmarklet: その場でMemo!

何をするものかというと、MM/Memoにメモを登録するフォームを、現在開いているページ上の可動レイヤーとして生成し、ドキュメントを見ながら入力して投稿できるというもの。呼び出しているのは、このスクリプトね。

あまり真面目に作ってないけど、フォームの見た目を格好良くして、レイヤーの移動周りの処理ももうちょっとインターフェース的にわかりやすくしたら、仕組み的にはかなり使えると思う。一応WindowsのIE、Firefox、Opera8では動作した。

「隠す」をクリックするとフォームが消えるけど、もう一回同じbookmarkletを実行すれば、消えた前の状態でフォームが復元する。フォームを移動しても邪魔になる場合なんかに、一時的にフォームを消して、その下に隠れている文章を読んだりするのに使う。

呼び出しているjavascriptをダウンロードして、フォーム生成部分を適当に書き換えて使ったら、他のいろんなサービスにも使えるでしょう。blogツールに直接投稿できるようにしたりしてもいいかもしれない。wemaと連動させてもいいかもね。ユーザーサイドjavascriptなんかと組み合わせれば、どこでもwemaみたいなこともできそうだ。

JavaScriptコードが消えちゃった

サーバートラブルの影響で、上記JavaScriptコードが消えちゃった。もう一回書く気になれないんで概要だけ書いておくと、bookmarkletから外部JavaScriptコードをインポートして、そこで適当な可動レイヤーを作った上に投稿フォームを生成する、というコード。bookmarkletの文字数制限を回避するために、外部JavaScriptコードを呼び出す方法は、malaさんのところとかで詳しく説明されている。可動レイヤーとかフォームの生成は、JavaScript+HTMLの基本なんでまあ適当に作ってください。

[]