Evernote for iPhone hack 再び

Saved Search の削除

以前、Saved Search の検索キーワードにダミーのキーワードを設定することによって、Note を Notebook 単位で見やすくする方法を 書き ましたが、この方法の問題点の1つとして、作成した Saved Search を削除できない というものがありました。

現状、Evernote for iPhone の「Saved Searches」画面 の項目の上でスワイプしても、他のアプリのような削除ボタンは現れません。

これはどうすればいいのかというと、Mac 版のクライアントソフトで削除することができます。クライアントソフトの各機能をちゃんと活用してる人には、今さら何だ、という話かもしれませんが 汗(以前の記事参照)

iPhone 上で Saved Search に変な名前を付けちゃったときにどうぞ。

ダミーのキーワードは「#」(シャープ)がよい

Mac 版のクライアントソフトは、もはや生活の一部、いや一体(同じか)となっているのですが、(あんな記事を書いておきながら)iPhone 用は、まだそれほど活用できていませんでした。

なので、Evernote for iPhone の表示に関して、ひとつの問題に気付いていたのですが、一ヶ月ぐらいの間、無意識にスルーしていました(おい)。その問題とは、プレビュー中の記事の内容が全く表示されない というものです。

この週末にようやく原因を探ってみると、原因は前回の記事で Saved Search の検索キーワードとして設定していた、「\」(バックスラッシュ)にあることが分かりました。(つまり、検索キーワードに \ が設定されていると、検索結果の Note をタップしてプレビューしても、内容が表示されない)

そこで代替となる検索キーワードを探してみたところ、「#」であれば、「無効な検索キーワードになる(= Notebook 内のすべての記事が表示される)」と、「プレビューの不具合が起きない」という二つの条件を満たせることが分かりました。

ちなみに、この検索キーワードを使うことには、もうひとつのメリットがあります。

デスクトップクライアントからの Saved Search の追加

「これからは iPhone 版ももっと活用しよう」ということで、バックスラッシュ問題の解決に先立ち、すべての Notebook に対応する Saved Search を作ることにした(まだしてなかった)のですが、現在 17 個ある Notebook の Saved Search を iPhone 上で作るのは、とても面倒くさそう。

そこで、Mac 版の クライアントソフトで Saved Search を作り、iPhone 版と Sync する、という方法を試みたのですが、検索キーワードにバックスラッシュを使った Saved Search は、iPhone 版では「真っ当に」検索されてしまい、検索結果がゼロになってしまいます。

ここで役に立つのが、先ほど書いた「#」キーワードで、これを使えば、Mac 側で設定した Saved Search も期待通りに動きます。

各 Notebook に対応した Saved Search を作る AppleScript

最後に、前述の性質を利用して、

  • 名前:Notebook 名
  • 検索キーワード:#

の Saved Search を自動で作る AppleScript を掲載しておきます。

Evernote は独自の AppleScript 用語辞書を持っていますが、これには Saved Search に関する API はなく、一方 Web サービス API を使おう、という話になると大袈裟すぎるので、今回は GUI Scripting を使ってこれを実現しています。

処理の大まかな流れとしては、

  1. 画面左の「NOTEBOOK」グループの項目をひとつづつ選択していく。このとき、各 Notebook の名前を記憶しておく
  2. 検索キーワードに # を設定する
  3. File メニューの「New Saved Search」を選択し、表示されたシートに Notebook の名前を入力、「OK」ボタンを押す。

というものです。

現在のところ、既存の Notebook すべてに対して処理を行おうとするので、新しい Notebook を追加したときは、古い Saved Search をすべて削除してからスクリプトを実行するか、名前が重複する Saved Search には、Evernote が警告ダイアログを出しますので、そのダイアログで「Cancel」ボタンを押し、必要のない Saved Search の作成をスキップしてください。

データを消去するような処理は含まれていないので、大きな問題はないと思いますが、いつも通り at your own risk でお願いします。ライセンスは、パブリックドメインとします。

hack その後

Evernote for iPhone に、もともと Notebook ごとの表示機能がついているかのように使うことができるようになったので、快適です。Notebook 内の検索も素早くできますし。

僕のように、Notebook をいくつか作ってひたすら書き込む、という使い方をしている人(あまりいない? てか、タグ機能とかも活用しないとな…汗)には、なかなか便利かと。

また、iPhone OS 2.2 になってますますキーボードの応答性が上がってきているので、これはかなり使えそうです。

Leave a Reply

Your email address will not be published. Required fields are marked *