getlogのUI

getlog形式の検索画面のユーザーインターフェースを考えてみる。
せっかくsov退避の統計情報を作っているので、それも活用したい。

簡易検索

基本的にキーワードを入れるだけですばやく検索できるようにする。
futurelogのクイック検索と、i-miraiの過去ログ検索機能に相当するものである。

http://malony.dyndns.org/futurelog/getlog.cgi
http://i-mirai.dyndns.org:8007/cgi-bin/bbs.cgi

以下のような一行フォームになる。

「キーワード(テキストボックス)」を
最新「1日/2日/3日/1週間/2週間/一ヶ月/三ヶ月/半年/一年/すべて(プルダウン)」のログから
「AND/OR(プルダウン)」
「検索(ボタン)」

詳細検索フォーム

従来のgetlogインターフェースの場合。

  • キーワード(テキストボックス)
  • 時刻指定(5分ごとのプルダウン)
  • 論理式(AND/ORのラジオボタンまたはプルダウン)
  • 検索対象(投稿者名/題名/全文)
  • 大文字小文字同一視
  • 引用機能使用
  • jcode.pl使用
  • gzip圧縮転送
  • ヒット部分の色を変える
  • 引用色変更
  • 画像展開

これらの改善を考えてみる。

キーワード
複数行入力可能なテキストエリアにしてもよい。キーワード入力欄が改行可能であるとゆとりも違う。これは意外とさまざまなサービスで実現できていない。
時刻指定
futurelogではテキストボックス化によってより入力の柔軟性が増していたが、かえって使いにくかった。これは5分ごとのプルダウンのままにしておくのが正解だろう。
検索対象
なぜ「本文」の指定ができないのかが謎。

追加の機能を考えてみる。

  • 検索エンジンをヒントに、検索式の拡張機能
    • 「""」で囲むとフレーズ検索(実装済み)
    • 「-」を冒頭につけると除外指定(実装済み)
    • 「title:」「name:」「site:」などの項目指定
    • 文字絵検索機能
    • 完全一致検索や、前方一致、後方一致、部分一致機能(ワイルドカード
      • 「餃」だけの投稿とか
    • 「and」「or」「not」などを検索式に入れる形式も検討
    • あいまい検索
      • 特に半角カナと全角カナを区別しない検索はデフォルト化する必要がある。
  • 出力形式の指定
    • ツリー形式による出力(検索キーワードを含むツリーを完全出力)
    • 部分ツリー形式による出力(検索キーワード周辺のみでツリーを構築)
    • 出力したツリーから、時間軸上、近接にあるツリーへのリンク(各ツリーの最初の投稿を表示)
    • 関連ツリー候補の表示(TF/IDFなどの重要語検出アルゴリズムを利用か)
    • 投稿者を指定した場合、投稿者へのレスも表示する指定
    • 検索結果から、「通常表示」「レスも表示」「ツリー表示」の切り替えができる

ファイル一覧

sov退避の統計がとくに生かせる部分。
従来のgetlogインターフェースでは、各ファイルに以下の情報が表示されていた。

  • チェックボックス
  • ファイル名
  • 更新日
  • サイズ
  • トピック一覧、ダウンロード版、dat版などへのリンク

これらを考えてみると、あまり必要のない情報もある。

ファイル名
日付そのまま。本当に必要?
サイズ
ログの基本統計情報のひとつ。同系列の情報として投稿数やキーワードランキングを入れてもよい
更新日
日付ごとにファイルが区切られているのだから、最新日(つまり今日)以外はあまり必要がない
別の表示形式へのリンク
ツリー表示版は必須だろう。他に圧縮版など。

要するに、UNIXのlsやMS-DOSのdirのようなファイルとしての情報を一覧表示するという枠組みにのっとって、更新日やサイズを表示しているのだと思う。それはそれでいいのだけど、せっかくなのでもう少し意味的な情報にしてみたい。

その他

  • sov退避との連携機能の強化。
    • キーワードランキングの各キーワード(の横の出現数)をクリックすると、直接@検索で検索できる。
    • キーワード共起も同様。(使えるかどうかは要検討)
    • キーワード関連マップからもクリッカブルマップで。(うざい可能性大)
    • 固定も同様
    • りみくすトピックも同様
    • あと、普通にログのダウンロードリンクをつけるとか。
  • Remix形式
    • 当然、トピックごとに検索できるようにする。
    • 検索語欄に「topic:トピック名」という指定方法でもいいし、別の欄を設けてもいい
    • だけど、各トピックごとに独立の検索画面を用意するのが一番正解かもしれない
    • その場合、ファイルを日ごとではなく月ごとにダウンロードできるようにしたほうがよさそう。