
Mac OS Xの「開く」右クリックメニューから重複を削除する
MacのFinderでファイルを右クリック(またはControlキーを押しながらクリック)すると、「このアプリケーションで開く」メニューが表示されます。これは、現在デフォルトアプリケーションとして設定されているもの以外に、選択したファイルを開くための代替アプリケーションの一覧を表示するものです。この「このアプリケーションで開く」メニューは便利ですが、同じアプリケーションが重複して表示されることで、画面が乱雑になることがあります。最悪の場合、単に重複しているだけでなく、「このアプリケーションで開く」リストに同じアプリケーションが複数表示されることもあります。ここでは、このような重複したアプリケーションを削除する方法と、今後の使用のために使いやすいエイリアスを作成する方法を説明します。
OS Xの「このアプリで開く」メニューで重複したアプリエントリを削除する
これはMac OS Xのほぼすべてのバージョンで動作するはずです
- /Applications/Utilities/ ディレクトリからターミナルを起動し、次のコマンド文字列のいずれかを1 行に入力します。
1行のコマンド文字列からコピー&ペーストします:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain user;killall Finder;echo "Open With has been rebuilt, Finder will relaunch"
または
同じコマンド文字列が複数行に分割されます:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/\
LaunchServices.framework/Versions/A/Support/\
lsregister -kill -r -domain local -domain user
(注: 2 番目のコマンド内のバックスラッシュは、コピー & ペースト時に実行可能のまま長いコマンドを複数行に拡張するために使用されます。ターミナルにコマンド文字列を手動で入力する場合は、バックスラッシュを含める必要はありません)
Launch Servicesデータベース全体を再構築する必要があるため、この処理にはしばらく時間がかかる場合があります。この再構築プロセスでは、右クリックメニューから重複したアプリのエントリが削除されます。この処理が完了したら、変更を有効にするためにFinderを終了して再起動する必要があります。これはコマンドラインから行うのが最も簡単です。
killall Finder
Finder が再起動したら、任意のファイルに戻って右クリックし、「プログラムから開く」メニューをプルダウンして、重複したエントリがすべて消えていることを確認します。
でも、これを頻繁に実行する必要がある場合、コマンド文字列はちょっと面倒ですよね?それを大幅に短縮する方法をご紹介します。
「重複して開いているファイルを削除する」の短縮エイリアスを作成する
これを必要以上に頻繁に実行する必要がある場合は、コマンド シーケンス全体に対して単純な bash エイリアスを作成すると、長い一連のコマンド文字列を入力する必要がなくなるため、大幅に時間を節約できます。
- お気に入りのテキスト エディターで .bash_profile を開きます。このチュートリアルでは簡単なので nano を使用します。
- 次のエイリアスを.bash_profileの1行に貼り付けます。必要に応じてエイリアスの名前を変更します。
nano .bash_profile
alias fixow='/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain user;killall Finder;echo "Open With has been rebuilt, Finder will relaunch"'
- 保存するにはControl+Oを押し、nanoを終了するにはControl+Xを押します。
コマンドラインで「fixow」と入力して、エイリアスが機能していることを確認してください。ただし、「Open With」を既にクリアしている場合は、同じ効果は得られません。上記と全く同じコマンド文字列を使用した場合は、次のような短いメッセージがエコーバックされます。
$ fixow
Open With menu has been rebuilt, Finder will relaunch
何らかの理由でそのコードを入手できない場合は、OSXDaily GitHub ページからコピーすることもできます。このページでは、OS X 用の特に役立つシェル スクリプトの収集を開始しています。
これにより、「fixow」(Fix Open With の略です。わかりますか? 私たちは本当にクリエイティブです)と入力するだけで、全体を再度入力しなくてもコマンド文字列全体が実行されます。
「開く」メニューからすべてのアプリを削除できますか?
重複や繰り返しのエントリが問題の原因ではない場合は、「開く」メニュー全体を消去して最初からやり直すという方法もあります。この方法ではメニューからすべての項目が削除されるため、アプリとファイルの種類や形式を手動で関連付けるか、OS Xを使って特定のファイルを開く必要があります。これは本当に最後の手段であり、リストを自分で再構築して関連付けをより厳密に行いたい場合など、高度なカスタマイズを行うための方法です。