読者です 読者をやめる 読者になる 読者になる

へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)!

Macでプレビューから「Googleで検索」するとSafariが立ち上がってくれやがる問題の解決

Mac OS X

こういう問題

f:id:haruharu1:20150506010014p:plain
f:id:haruharu1:20150506010040p:plain


Safariは使わない派なんだけど( ・`ω・´)!
たまにSafariじゃないと見れないサイトあるんだけど( ・`ω・´)!

解決方法の1つとして

プレビューのアプリをハックしようとしたけど、バイナリで設定書かれてるっぽかったからめんどくさいしよくわからないし諦めてグーグル先生に聞くことにした。

Automatorというアプリケーションを使う。

Macの自動化ツールシェルスクリプトなどで書いておくと、それをサービスから使うことができてわーいわーいってなるやつ。
確かデフォルトで入ってる便利なやつ。

エクセルやVisual Studioサクラエディタのマクロみたいなノリで気軽にマクロ登録もできるので、プログラミング知らない人もとりあえずガンガン使える。

でもMacGUIとかChromeぐらいしか使わないからあんまり使わないっていう。
Chromeで何かしたいときはJavaScriptでエクステンション作ったり、TamperMonkeyでなんか適当に読み込ませとけばいいしな!

フォトショとかイラレとか使う人にはたぶん重宝すると思う。(フォトショとかもJavaScriptで記述できるけど……)

参考元
How to default 'Search with Google' action in Mac OS X to open in default browser?(英語)
http://www.quora.com/How-to-default-Search-with-Google-action-in-Mac-OS-X-to-open-in-default-browser

コードを書く

参考元のやつはRubyで書かれてた。
Ruby知らないけど、とりあえずコピペしてみることに。



require 'cgi'
`open 'http://www.google.com/search?q=#{CGI.escape(STDIN.read.chomp)}'`

手打ちでもいいけど、Automatorのとこで手で打つと、「'(シングルクォート)」が「'(アポストロフィ)」で打たれてしまい、それのせいで動かなかった。
Pythonで書いちゃったじゃないか……

f:id:haruharu1:20150506011333p:plain

↑こんな感じ。
Automator > 新規作成 > サービス > シェルスクリプトを実行 とやると出てくる。

Pythonで書いたやつはこんな感じ


import os
import sys
os.system('/Applications/Google\ \Chrome.app/Contents/MacOS/Google\ \Chrome "https://www.google.co.jp/search?q=' + sys.argv[1] + '"')

こっちは引数を指定しているんだよね。
os.system("hoge")ってたぶんバッドノウハウだけど気にしない。ザ・雑って感じ。
f:id:haruharu1:20150506011541p:plain

これをショートカットキーに登録する。

システム環境設定 > キーボード > ショートカット > サービス のところにさっき作ったスクリプトが登録されているので、
そこにショートカットを追加する。
ぼくは
もともと⇧⌘LGoogleで検索 が使用していたので、それを外して、自分が作ったやつに⇧⌘Lを割り当てた。


f:id:haruharu1:20150506011957p:plain

こうして、PDFファイルなどから⇧⌘Lを押すとChromeでググれるようになった。やったね!


わざわざRubyだのPythonだの使わずにシェルでやればいい気がするのは秘密だ。