JINMUSOFTWARE

フォルダの右クリックからアプリを起動する方法

macos

“Run an App from the Right-Click Menu”

要求

MacOSでフォルダを右クリックしてからVSCodeを立ち上げる方法

WindowsOSには、フォルダを右クリックすると「プログラムから開く」という項目があり、起動するソフトウェアを選択することができます。これと同じことをやりたい。

現状

MacOSを使用しています。

Macではフォルダを右クリックしても特定のソフトウェアを起動できないようです。

解決方法

右クリックしたときに表示される「クイックアクション」に多様な処理を登録できます。

「Automator」というツールを使用してクイックアクションを登録し、特定のソフトウェアを起動することができます。

Automator
Automator

クイックアクションの登録方法

クイックアクションの新規作成

「Automator」を起動します。

起動すると「書類の種類を選択してください」ダイアログが表示されます。

「クイックアクション」を選択します。

quick action
quick action
Automatorの新規作成画面
Automatorの新規作成画面

クイックアクションを設定する画面が開きました。

基本設定

右側領域にある設定を変更します。

  • ワークフローが受け取る現在の項目 : フォルダ
  • 検索対象 : Finder.app

スクリプトの登録

左側にあるライブラリからユーティリティを選択し、シェルスクリプトを追加します。

設定を確認

  • シェル:/bin/zsh (デフォルトのシェルが選択されていると思います)
  • 入力の引き渡し方法:「引数として」を選択します。

スクリプト

シェルの内容を次の様に修正してください。

ShellScript
open -a "Visual Studio Code" "$@"

フォルダ複数選択している場合は、VSCodeのエクスプローラにそのフォルダが表示されます。新規のワークスペースとして開く様です。

フォルダを複数選択して別々の画面でVSCodeを開きたい場合は次のコードになります。

ShellScript
for f in "$@"
do
  open -a "Visual Studio Code" "$f"
  sleep 1
done

sleep を挟むのがコツのようです。

codeコマンドをインストールしている場合はcodeコマンドを使用できます。この場合path情報の調整が必要になります。

以下参考画像:

quick action
quick action

保存

では保存しましょう。メニューからファイル>保存と選択してください。

ここで名付けたファイル名がクイックアクション名として表示されます。

拡張子は、「*.workflow」になります。

保存先は、「ユーザフォルダ > ライブラリ > services」です。

ユーザフォルダにあるライブラリフォルダは隠しファイルです。「Shift + Command + .」で表示させましょう。

workflowファイルをダブルクリックすると、設定が開きます。編集して再保存することができます。

Finderからファイル名を変更すると反映に時間がかかる様でした。workflowファイルを開いて保存するなどしているとクイックアクションの名前にも反映されました。明確な更新方法は不明です。

動作確認

適当なフォルダで右クリックしてみましょう。

クイックアクションから表示されるメニューに先ほど設定した項目を確認できるはずです。

では、VSCodeを起動してみましょう。

VSCodeが起動し、フォルダが表示されていれば成功です。

Menu from right click
Menu from right click

以上です。