32a04aaa7093a2e757f61096e566c8ada3b894ea
vscode/\343\202\277\343\202\271\343\202\257\343\202\222\345\256\237\350\241\214\343\201\231\343\202\213\345\272\246\343\201\253\346\226\260\343\201\227\343\201\204\343\202\277\343\203\274\343\203\237\343\203\212\343\203\253\343\203\221\343\203\215\343\203\253\343\202\222\351\226\213\343\201\217.md
| ... | ... | @@ -1,9 +1,10 @@ |
| 1 | 1 | この記事はgpt-5.1によって生成されました。 |
| 2 | 2 | |
| 3 | + |
|
| 3 | 4 | ## 概要 |
| 4 | 5 | |
| 5 | 6 | VS Code のタスク実行では、デフォルトで複数タスクが同じターミナル(shell)を共有します。 |
| 6 | -タスク実行のたびに新しい shell を使いたい場合は、`tasks.json` の `"presentation"` 設定で制御します。 |
|
| 7 | +タスク実行のたびに新しい shell を使いたい場合や、**同じタスクでも毎回新しいパネルを開きたい**場合は、`tasks.json` の `"presentation"` 設定で制御します。 |
|
| 7 | 8 | |
| 8 | 9 | --- |
| 9 | 10 | |
| ... | ... | @@ -26,19 +27,21 @@ VS Code のタスク実行では、デフォルトで複数タスクが同じタ |
| 26 | 27 | |
| 27 | 28 | - `"dedicated"` |
| 28 | 29 | - タスクごとに専用ターミナルを 1 つ割り当てる |
| 29 | - - 同じタスクを再実行した場合は、同じ専用ターミナルを再利用する |
|
| 30 | + - **同じタスク**を再実行した場合は、同じ専用ターミナルを再利用する |
|
| 30 | 31 | |
| 31 | 32 | - `"new"` |
| 32 | 33 | - タスク実行のたびに新しいターミナルを作成する |
| 34 | + - **同じタスクであっても毎回新しいパネル(ターミナル)が開く** |
|
| 33 | 35 | - 毎回新しい shell を起動し、使い回さない |
| 34 | 36 | |
| 35 | -「毎回必ず新しい shell で実行したい」場合は `"panel": "new"` を指定します。 |
|
| 37 | +「毎回必ず新しい shell で実行したい」「同一タスク実行でも毎回新しいパネルが欲しい」場合は `"panel": "new"` を指定します。 |
|
| 36 | 38 | |
| 37 | 39 | --- |
| 38 | 40 | |
| 39 | 41 | ## タスク単位での設定例 |
| 40 | 42 | |
| 41 | -### 実行のたびに新しい shell を使うタスク |
|
| 43 | +### 実行のたびに新しい shell を使うタスク |
|
| 44 | +(同一タスクでも新規パネルを開く) |
|
| 42 | 45 | |
| 43 | 46 | ```jsonc |
| 44 | 47 | // .vscode/tasks.json |
| ... | ... | @@ -51,14 +54,15 @@ VS Code のタスク実行では、デフォルトで複数タスクが同じタ |
| 51 | 54 | "command": "echo hello && sleep 3", |
| 52 | 55 | "presentation": { |
| 53 | 56 | "reveal": "always", |
| 54 | - "panel": "new" |
|
| 57 | + "panel": "new" // 同じタスクを何度実行しても毎回新しいターミナル |
|
| 55 | 58 | } |
| 56 | 59 | } |
| 57 | 60 | ] |
| 58 | 61 | } |
| 59 | 62 | ``` |
| 60 | 63 | |
| 61 | -`"run script"` タスクを実行するたびに、新しいターミナル(shell)が開かれます。 |
|
| 64 | +この設定では、`"run script"` タスクを実行するたびに、 |
|
| 65 | +**同じタスク名であっても**毎回新しいターミナル(shell)が開かれます。 |
|
| 62 | 66 | |
| 63 | 67 | ### 同じタスク用に専用ターミナルを使う場合 |
| 64 | 68 | |
| ... | ... | @@ -85,7 +89,7 @@ VS Code のタスク実行では、デフォルトで複数タスクが同じタ |
| 85 | 89 | "version": "2.0.0", |
| 86 | 90 | "options": { |
| 87 | 91 | "presentation": { |
| 88 | - "panel": "new" |
|
| 92 | + "panel": "new" // ここで全タスク共通のデフォルトを指定 |
|
| 89 | 93 | } |
| 90 | 94 | }, |
| 91 | 95 | "tasks": [ |
| ... | ... | @@ -103,14 +107,21 @@ VS Code のタスク実行では、デフォルトで複数タスクが同じタ |
| 103 | 107 | } |
| 104 | 108 | ``` |
| 105 | 109 | |
| 106 | -ここで `"panel": "new"` を設定しておくと、個々のタスクで `"presentation"` を上書きしない限り、すべてのタスクが実行のたびに新しいターミナル(shell)で起動されます。 |
|
| 110 | +ここで `"panel": "new"` を設定しておくと、個々のタスクで `"presentation"` を上書きしない限り、 |
|
| 111 | +**すべてのタスクが実行のたびに新しいターミナル(shell)で起動**されます。 |
|
| 107 | 112 | |
| 108 | 113 | --- |
| 109 | 114 | |
| 110 | 115 | ## まとめ |
| 111 | 116 | |
| 112 | -- タスク実行ごとに新しい shell を使いたい → `"panel": "new"` |
|
| 113 | -- タスクごとに専用ターミナルを使いたい → `"panel": "dedicated"` |
|
| 114 | -- 複数タスクでターミナルを共有してもよい → `"panel": "shared"`(デフォルト) |
|
| 117 | +- タスク実行ごとに新しい shell を使いたい |
|
| 118 | + → `"panel": "new"` |
|
| 119 | + → **同一タスクでも毎回新しいパネルが開く** |
|
| 120 | + |
|
| 121 | +- タスクごとに専用ターミナルを使いたい(同じタスクは同じパネルを再利用) |
|
| 122 | + → `"panel": "dedicated"` |
|
| 123 | + |
|
| 124 | +- 複数タスクでターミナルを共有してもよい |
|
| 125 | + → `"panel": "shared"`(デフォルト) |
|
| 115 | 126 | |
| 116 | -`tasks.json` の `"presentation"` 設定で、VS Code のタスク実行時の shell の使われ方を調整できます。 |
|
| ... | ... | \ No newline at end of file |
| 0 | +`tasks.json` の `"presentation"` 設定で、VS Code のタスク実行時の shell の使われ方を細かく制御できます。 |