単語検索に新しいコンセプトを。
Textwell 1.2.2
分類: 仕事効率化,ユーティリティ
価格: \300 (Sociomedia)
エディタの命と言える「検索」。文中のキーワードを探す。でもいろいろなタイプのエディタを使ってきましたが、検索について新機軸が見当たりません。どれもダイアログボックスが開き、前後の該当位置にジャンプする。でもタッチパネルの時代には、それに合ったデザインがあるんじゃないか。それで不遜にも「今までとは別の見せ方」を考えてみました。
text=T.text; c=T.range.loc; word=(T.range.len)? T.current : prompt("検索語は何ですか?"); if(word){ p=mode=0; len=word.length; s=text.split(word); draft="<meta name=viewport content=initial-scale=1><title>SearchLight</title><body style=white-space:pre;word-wrap:break-word;>"; for(i=0;i<s.length;i++){ p+=s[i].length+len; if(mode){ if(mode==1) draft+="<span id=wine></span>"; mode=2; }else{ if(c<p) mode=1; } draft+=s[i].replace(/</g,"<"); if(i<s.length-1) draft+="<span onclick=Jump("+i+") style=background:yellow;>"+word+"</span>"; } draft+="</body>"; document.write(draft); location="#wine"; T.translucent(false); }else{ T("done"); } function Jump(x){ p=0; for(i=0;i<=x;i++) p+=s[i].length+len; T("replaceRange",{text:"",selectingRange:{loc:p-len,len:len}}); }
登録リンクはこちら→ http://tinyurl.com/lssn5kv
まず範囲選択されていれば、それを検索語にする。iOSはダブルタップで単語をピックアップするんだから、これを活用する。再入力の手間を省き、選んでいるものがキーワード。ただし、何も選ばなければ、いつも通りのダイアログボックスが開きます。
アクションを実行すると、カーソル位置からのプレビューになる。そして検索語の部分をハイライト。これだと前後の文脈も読み取りやすくないですか。
検索語をタップすると、その箇所を開きます。キーワードを選択状態にするので、そのままタイプすれば訂正可能。あるいはクリップボードをペーストするとか。
ただ組んでわかるのは、この方法、長い文章に具合が悪い。終わりに出てくる単語だとスクロールしなくちゃ見つからない。該当箇所のないプレビューを延々流すことになる。やはり従来通りには、それなりの合理的な理由がある。でも、もう一歩の気もするんだよなあ。