うずまき2017 powered by Jun-Systems

耳管開放症, SAS, 統計解析, 人工知能, プログラミングそれに思考

*

FinderやAlfredから直接Visual Studio Codeの「フォルダを開く」を使う

   

すっかりWindowsが大嫌いになってしまったわたしですが、ここ1年ぐらいコーディングにはMicrosoftのVisual Studio Code (VSCode)を使っています。PythonやMATLABといった言語別やディレクトリ別にlintingや整形などの設定が簡単にできて楽です。

ところでこのVSCodeはNew Windowで開くとこんな感じで「フォルダーを開く…」を使って特定のフォルダ以下の階層のツリーを読み出すことができます。

できるんですけどVSCode側からいちいちフォルダを指定して開くのクソ面倒なんですよね。Finder側のアイコンからダブルクリックするとそのフォルダを開いた状態のVSCodeが立ち上がってほしいんですよ。

ターミナルからコマンドでVSCodeが立ち上がるように設定

まずこれに先立ってTerminal.appからコマンドラインでVSCodeが立ち上がるようにする。
VSCode上でCommand+Shift+Pでコマンドパレットを立ち上げて”Shell”なり打ち込むとターミナルにパスを通すためのコマンドが出てきます。(Running VS Code on Mac | Visual Studio Code)

これでTerminal上で

code

を叩くことでVSCodeが起動するようになります。オプション無しで叩くと前回の作業状態がレジュームされます。シェルスクリプトの置いてあるディレクトリ名を取得してVSCodeを開くためには、

#!/bin/sh
cd $(dirname $0)
code .

これを”open_[dirname].sh”とかで好きなフォルダに保存する。あとはパーミッションだけ変えて実行権限を与えておく。

chmod +x open_[dirname].sh

これでとりあえずダブルクリックで直接VSCodeが開くようになる。

Alfredにも応用する

Mac最強のランチャーアプリAlfredからスクリプトを走らせることで「VSCodeで特定のフォルダを開いた状態」をいきなり立ち上げることもできる。つまり極端なことを言うとファイルをフォルダにおいておく必要も別にない。

こんな感じでWorkflowを組んで、中の設定は…

#!/bin/sh
PATH=$PATH:/usr/local/bin
code ~/Dropbox/MyResearch/deepmat/

としておけばいい。ここでわざわざパスを通しているのは、VSCodeで普通にスクリプトを走らせる場合にはパスが通らないからなんですね。普段のアカウントでログインした状態でbashが走るわけではないので、上で通したPATHも読み込まれません。なので予めPATH=$PATH:/usr/local/binでパスを通すわけですね。これがないとAlfredでデバッグモードにしてスクリプトを走らせた時に
[2017-06-01 14:27:24][ERROR: action.script] code: command not found
とか返ってきてVSCodeは開きません。

これだけやっておけば,


とかこんな感じでワンタッチで開けるようになります。

便利!

PS:
もちろんAlfredに引数を渡して

code argv

にすれば任意のフォルダを開ける


 - macOS , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

関連記事はありませんでした