Macの右クリックメニューに項目を追加する方法

Macの右クリックメニュー、正式にはコンテキストメニューといいますが、そこに特定のサイト上で検索を実行する項目をつけたいと思ってやってみました。

やりたいこと

英語で書かれたページを見ているときに、複数の単語で構成されるイディオムや言い回しを簡単に検索したい。

今やっている手順

OS X Lionから3本指タップなどの簡単な操作で辞書検索ができるようになってとても便利なのですが、いかんせん単語しか検索できません。私は、複数の単語からなるイディオムを調べたい時には、Safariの新規タブを開いて次の順に検索しています。

これらのページはSafariのブックマークバーに登録しているのですが、ページを開いて、コピーしたテキストを指定の位置に貼付けて、検索ボタンを押して検索するという操作が面倒に感じてきました。

実現方法

右クリックメニューに辞書検索やGoogle検索の項目があるので、同じような感じで実現することにしました。少しぐぐってみると、すでに同じようなことをしている方がおられました。(うんたらかんたら日記 – automatorを使ってコンテキストメニューにサービス追加

そこで同じようにして個々のサイト上で検索を実行するAppleスクリプトを作成しました。

set aURL to "http://ejje.weblio.jp/content/" & (get the clipboard)
open location aURL

手順は、次のとおりです。

  1. Automator起動
  2. サービスの新規作成
  3. 「ユーティリティ」にある「クリップボードにコピー」を右の枠にドロップ
  4. 先頭にある「AppleScriptを実行」を右の枠にドロップ
  5. AppleScriptを記述
  6. 右クリックメニューに表示したい名前をファイル名にして保存

これだけで、右クリックメニューに出てきました! ヾ(=^▽^=)ノ

weblioサービス追加

他のサイトも同じようにして作りました。

複数サービス追加

項目が多くなったせいでサービスというカテゴリにまとめらてしまっているようです。少し手間がかかることになりますが致し方ありません。

折角なので、これらを一気に検索するサービスも作りました。(参考サイトは後述)

set urlList to {"http://www.google.com/search?q=", "http://chiebukuro.search.yahoo.co.jp/search?flg=3&class=1&UTF-8=ei&fr=common-navi&dnum=2078297840&p=", "http://idioms.thefreedictionary.com/", "http://ejje.weblio.jp/content/"}
set numURLs to (count urlList)
open location (item 1 of urlList) & (get the clipboard)
tell application "Safari"
activate
tell window 1
repeat with i from 2 to (numURLs)
set current tab to (make new tab)
set URL of document 1 to (item i of urlList) & (get the clipboard)
end repeat
end tell
end tell

※ デフォルトのブラウザがSafariであることが前提になっています。

複数の単語を選択して右クリックで一括検索を選ぶと…

一括検索サービス

新しいSafariのウィンドウが立ち上がってタブでそれぞれの検索が実行されます。

一気に検索できていい感じです♪

豆知識

今回AppleScriptを記述して分かったことです。

  • コメント記号:#
  • 変数の確認:display dialog 変数名
  • 配列要素の列挙時に改行はできない

■作成したサービスが保存される場所: ~/Library/Services/

■右クリックメニューに表示する項目の表示/非表示制御:

システム環境設定 > キーボード > キーボードショートカット> サービス

参考サイト


関連記事