Butlerがヤバい、Firefoxから一発で辞書を引く
http://www.manytricks.com/butler/
ButlerというOSX用アプリがすげえ便利過ぎる。
まずは小手調べ、キーバインド変更
Firefoxとかで、前のタブ、次のタブをするときはCtrl+Tab、Ctrl+Shift+tabを押す訳だが、これが結構指がつる。
そんなとき、Butlerを使ってキーバインドをかえてみた。LDR風でCtrl+A,Sでタブを移動させたい。
Butlerの環境設定のメニュー構成で、以下の様に設定する。
キーストロークを追加
「見えない項目」に右クリックで
スマートアイテム>キーストローク
を追加し、右側のインスペクタのデフォルトタイトル「キーストローク」をFx Tab Fwdなどと適当に書き換える。
キーストロークの内容を設定
「キー」タブで、
Ctrl+Tab
を同時におすと、キーストロークの登録ができる。
まちがえたら、下部の「<x」みたいなBackspaceボタンをクリックすると、削除できる。
本題、Firefoxで辞書を引く
OSXには辞書.app(Dictionary.app)が標準であり、結構便利。
特に、Safariでは範囲選択してCmd+Dするだけでポップアップで辞書が引ける、これはすっごく便利なのだがCocoaアプリケーションでしかできない技らしく、Firefoxではできない。
だが、これがButlerで実現できる。
コンテナを登録する
今度はコンテナを使う。
見えない項目にコンテナを追加し、名前は「Firefoxで辞書を引く」などと設定する。
そのコンテナのトリガーには「Cmd+Shift+D」かつ、Firefoxだけで有効とする(上の方法を参照)
同じタブの「すべての内容を連続してひらく」としておくことで、この後で追加する一連のアクションが連続して実行される。
コンテナの中にキーストロークを追加
次に、コンテナ内部(子要素)にキーストロークを追加する。
今回はトリガーは不要で、キーストロークには「Cmd+C」を設定する(つまりコピーするキー操作)。
Cmd+Cの後に、ウェイトを入れてあげる、入力欄下の+をクリックして、0.5秒程度を入れておくと良い。*1
コンテナの中にAppleScriptを追加
最後にコンテナ内部に
スマートアイテム>AppleScript>AppleScript
をえらび、AppleScriptを追加する。
こちらもトリガーは設定せず、AppleScriptのコードには
open location ("dict://" & (the clipboard)) as string
と指定してあげる。
いざ実行
Firefoxをひらき、テキストを範囲選択し、Cmd+Shift+Dをタイプする。
最初一回は連続実行してよいかと確認画面が出るが、常にOK、とすればよい。
これで自動的に辞書.appが引かれ、検索が行われる筈、すげー便利です。
開いた辞書.appはCtrl+Wなどで閉じれば、即Firefoxにフォーカスが戻ります。
欠点はクリップボードが汚染されてしまうこと
AppleScriptをがんばればできるのかもしれないけど、俺はAppleScriptさっぱりわからないので、妥協してます。
だれかがんばって下さい。
辞書を換える事だってできる、はず。
ウェブページを自動的にひらくとか、そういう事だってできるはずです。
もちろんFirefox以外でもつかえる
*1:ウェイト無しだと、自分の環境ではうまく動かなかった。