LoginSignup
4

More than 5 years have passed since last update.

VSCodeのタスクでjupyter notebookを起動する

Posted at

はじめに

普段VSCodeでコードを書いていますが、jupyter notebookも使いたいときがあります。
jupyter notebookの起動はコマンドjupyter notebookで一発ですが、いちいち黒い画面でコマンドをたたくのはめんどくさいです。
自分はMinicondaを使っているので、activateしてからコマンド叩くのはもっとめんどくさいです。

そこで、VSCodeのタスクから起動できるようにタスクランナーを定義して使っています。
tasks.jsonの書き方いつも忘れるので備忘録を兼ねて。

環境

OS - Windows10
VSCode - 1.19.1
Anaconda3/Miniconda3 - 4.3.30

タスク定義

tasks.json
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "run-jupyter(環境名)",
            "type": "shell",
            "command": "cmd.exe",
            "args": [
                "/C",
                "'C:\\Users\\[user name]\\Miniconda3\\Scripts\\activate.bat 環境名 & jupyter notebook'"
            ],
            "group": "none",
            "options": {
                "cwd": "C:\path\to\notebook_dir"
            },
            "problemMatcher": []
        }
    ]
}

label
タスク名。condaの環境名を入れておくとわかりやすい。

command
実行するファイルはコマンドプロンプトとする。

args
(ここがキモ)
一つ目の値 "/C" でコマンドプロンプトで実行するコマンドを指定。
二つ目の値 "'C:\\Users\\[user name]\\Miniconda3\\Scripts\\activate.bat 環境名 & jupyter notebook'" で、指定したconda環境をactivateしてjupyter notebookを起動する。
コマンドプロンプトでは、シングルクォートで囲うことでスペースを含んだコマンドを渡せる。
& で区切り、前のコマンドが実行された後に後続のコマンドを実行する。
前半でactivate.batで対象の環境をactivateし、その状態でjupyter notebookコマンドを実行する動作となる。

options の cwd
タスクが実行されるワーキングディレクトリ。jupyter notebookのルートディレクトリにしたい場所を指定する。

実行

上記定義ができたら、ctrl+p -> task [タスク名] と入力すれば、jupyter notebookが開きます。
止めるときは、VSCodeのターミナル画面でCtrl-Cです。VSCode自体を終了しても止まります。

終わりに

  • 自分は試していないのですが、jupyterをAnaconda環境で使う場合、環境をnotebook上のKernelから切り替えられるextensionもあるみたいです。
    https://qiita.com/yoppe/items/38005f415a5b8b884c7d
  • command や args を置き換えれば同じコンセプトで他のOSでもできると思います。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4