VSCodeの複数ターミナル起動自動化

July 18, 2021

はじめに

最近はRaspberry PiやJetson等のボードコンピュータを扱うことが多い。 ボードコンピュータ上で開発するために色んな開発環境を試してきたが、最終的にvscodeのRemote-sshに落ち着いた。

開発する時はvscodeのターミナルを複数開いて、それぞれ異なるプロセスを実行しながら進めている。 例えばメモリ使用量とか、CPUの温度とかを監視しながらとか。

なんにしても毎回起動するのが面倒くさい。自動化できるエクステンションないかな~と思って探したところ、Restore Terminalsという素晴らしいものがあったので紹介する。

Restore Terminals

公式はこちら:https://marketplace.visualstudio.com/items?itemName=EthanSK.restore-terminals

setting.jsonのサンプルと設定値の説明は以下の通り。

{
  "artificialDelayMilliseconds": 300, //コマンド実行時のDelay、うまくいかないときは大きくした方がいい
  "keepExistingTerminalsOpen": false, //Restore Terminals実行時にOpenしているファイルを保持するか
  "runOnStartup": true, //vscode起動時に実行するか
  "terminals": [ //実行するターミナルとコマンドを登録する
    {
      "splitTerminals": [ //ターミナル1
        {
          "name": "server", //分割されたターミナル1
          "commands": ["npm i", "npm run dev"] //実行コマンド
        },
        {
          "name": "client",//分割されたターミナル2
          "commands": ["npm run dev:client"]
        },
        {
          "name": "test",//分割されたターミナル3
          "commands": ["jest --watch"]
        }
      ]
    },
    {
      "splitTerminals": [//ターミナル2
        {
          "name": "build & e2e",
          "commands": ["npm run eslint", "npm run build", "npm run e2e"],
          "shouldRunCommands": false //コマンドが入力された状態で保留するか
        },
        {
          "name": "worker",
          "commands": ["npm-run-all --parallel redis tsc-watch-start worker"]
        }
      ]
    }
  ]
}

F1を押下し、Restore Terminalsを入力すれば実行できる。

restore terminals


Profile picture

Written by yanofu

© 2021, yanofu