VSCodeのターミナル設定を変更する方法について

採用はこちら

Visual Studio Code(VSCode)には、エディター内でコマンドを実行できる「統合ターミナル」が搭載されています。

WindowsではPowerShellやコマンドプロンプト、Git Bashなどを利用でき、macOSやLinuxではbash、zsh、fishなどを使用できます。

VSCodeでは、デフォルトで起動するターミナルを変更できるほか、フォントサイズや表示方法、スクロール履歴、タスク実行用のシェルなども細かく設定できます。

ここでは、VSCodeのターミナル設定を変更する方法を詳しく解説します。

目次

VSCodeのターミナルとは

VSCodeのターミナルは、エディター内でシェルを操作できる機能です。

一般的には「統合ターミナル(Integrated Terminal)」と呼ばれます。

VSCodeの画面内でコマンドを実行できる

統合ターミナルを利用すると、別途ターミナルアプリを開かなくても、VSCodeの画面内でコマンドを実行できます。

たとえば、次のような用途があります。

  • Gitコマンドを実行する
  • npmやNode.jsのコマンドを実行する
  • Pythonプログラムを実行する
  • JavaやC/C++をビルドする
  • ファイルやフォルダーを操作する
  • SSHコマンドを実行する
  • 開発サーバーを起動する

プログラム編集とコマンド操作を同じ画面で行えるため、開発作業を効率化できます。

VSCodeでターミナルを開く方法

VSCodeのターミナルは、メニューまたはショートカットキーから開けます。

メニューからターミナルを表示する

VSCode上部のメニューから、

「表示」→「ターミナル」

を選択すると、画面下部にターミナルパネルが表示されます。

一方、

「ターミナル」→「新しいターミナル」

を選択すると、新しいターミナルが作成されます。

「ターミナルを表示する操作」と「新しいターミナルを作成する操作」は少し意味が異なるため、使い分けるとよいでしょう。

ショートカットキーで開く

WindowsやLinuxでは、次のショートカットキーでターミナルを表示できます。

Ctrl + `

「`」はバッククォートです。

macOSでは、一般的に次のショートカットを使用します。

Control + `

頻繁にターミナルを利用する場合は、ショートカットキーを覚えておくと便利です。

VSCodeのデフォルトターミナルを変更する方法

VSCodeでは、標準で起動するターミナルを「デフォルトプロファイル」として設定できます。

もっとも簡単なのは、「Terminal: Select Default Profile」を使用する方法です。

コマンドパレットを開く

WindowsやLinuxでは、

Ctrl + Shift + P

macOSでは、

Command + Shift + P

を押してコマンドパレットを開きます。

既定のプロファイルを選択する

コマンドパレットに、

Terminal: Select Default Profile

と入力します。

日本語表示では、「ターミナル: 既定のプロファイルを選択」のように表示される場合があります。

実行すると、利用可能なターミナルプロファイルが表示されます。

Windowsの場合は、環境によって次のような候補が表示されます。

PowerShell
Command Prompt
Git Bash
WSL

使用したいものを選択してください。

新しいターミナルを開く

デフォルトプロファイルを変更しても、すでに開いているターミナルが自動的に切り替わるわけではありません。

変更後は、現在のターミナルを終了してから新しいターミナルを作成します。

新しく開いたターミナルから、設定したプロファイルが使用されます。

ターミナル画面からデフォルトプロファイルを変更する方法

コマンドパレットを使用せず、ターミナルパネルから変更することもできます。

ターミナル右上のメニューを開く

VSCode下部のターミナルパネルを開きます。

新規ターミナルを作成する「+」ボタン付近にあるドロップダウンメニューを開きます。

「既定のプロファイルを選択」を実行する

メニューから、

Select Default Profile

または、

既定のプロファイルを選択

を選択します。

その後、PowerShell、Command Prompt、Git Bashなどから使用したいシェルを選択します。

WindowsでPowerShellからコマンドプロンプトへ変更する方法

Windows環境では、PowerShellがデフォルトターミナルとして設定されているケースが一般的です。

コマンドプロンプトへ変更することもできます。

Command Promptを選択する

コマンドパレットを開き、

Terminal: Select Default Profile

を実行します。

表示された一覧から、

Command Prompt

を選択します。

その後、新しいターミナルを作成します。

コマンドプロンプトでは、一般的に次のような表示になります。

C:\Users\username>

WindowsでGit Bashをデフォルトにする方法

Git for Windowsなどをインストールしている環境では、Git BashをVSCodeのターミナルとして利用できます。

Git Bashを選択する

コマンドパレットから、

Terminal: Select Default Profile

を実行します。

一覧に、

Git Bash

が表示されていれば、それを選択します。

新しいターミナルを開くとGit Bashが起動します。

Git Bashで利用できる代表的なコマンド

Git Bashでは、Windows環境でもLinuxに近いコマンドを使用できます。

たとえば、次のようなコマンドです。

ls
pwd
rm
touch
grep

Linux系のコマンドに慣れている場合は、Git Bashをデフォルトターミナルにすると使いやすくなるでしょう。

settings.jsonからターミナル設定を変更する方法

VSCodeのターミナル設定は、GUIだけでなくsettings.jsonから変更することもできます。

細かな設定を行いたい場合に便利です。

settings.jsonを開く

コマンドパレットを開き、

Preferences: Open User Settings (JSON)

を実行します。

すると、VSCodeのユーザー設定を記述するsettings.jsonが開きます。

Windowsのデフォルトプロファイルを設定する

Windowsでは、

terminal.integrated.defaultProfile.windows

を使用します。

PowerShellをデフォルトにする

{
    "terminal.integrated.defaultProfile.windows": "PowerShell"
}

Git Bashをデフォルトにする

Git Bashがプロファイルとして認識されている場合は、次のように設定できます。

{
    "terminal.integrated.defaultProfile.windows": "Git Bash"
}

設定名は、VSCodeに登録されているプロファイル名と一致させる必要があります。

独自のターミナルプロファイルを作成する方法

VSCodeでは、独自のターミナルプロファイルを登録できます。

Windowsでは、

terminal.integrated.profiles.windows

を使用します。

PowerShellの独自プロファイルを作る

たとえば、次のように設定できます。

{
    "terminal.integrated.profiles.windows": {
        "My PowerShell": {
            "source": "PowerShell"
        }
    },
    "terminal.integrated.defaultProfile.windows": "My PowerShell"
}

terminal.integrated.profiles.windowsで独自プロファイルを作成し、

terminal.integrated.defaultProfile.windows

でデフォルトとして指定しています。

sourceはWindowsで利用する設定

sourceはWindowsでシェルを自動検出するときに利用できます。

代表的にはPowerShellやGit Bashで使用されます。

一方、macOSやLinuxでは、基本的にpathを使ってシェルを指定します。

PowerShellを-NoProfileで起動する方法

PowerShell起動時に、PowerShellのプロファイルスクリプトを読み込ませたくない場合は、-NoProfileオプションを指定できます。

argsで起動オプションを指定する

{
    "terminal.integrated.profiles.windows": {
        "PowerShell -NoProfile": {
            "source": "PowerShell",
            "args": [
                "-NoProfile"
            ]
        }
    },
    "terminal.integrated.defaultProfile.windows": "PowerShell -NoProfile"
}

argsには、シェル起動時に渡す引数を指定します。

PowerShellの初期化スクリプトが原因で起動が遅い場合や、設定の影響を受けずに起動したい場合に便利です。

macOSのデフォルトターミナルを変更する方法

macOSでも、基本的な変更方法はWindowsと同じです。

コマンドパレットから変更する

コマンドパレットを開き、

Terminal: Select Default Profile

を実行します。

環境によって、次のようなシェルが表示されます。

zsh
bash
fish

利用したいものを選択します。

settings.jsonから設定する

macOSでは、

terminal.integrated.defaultProfile.osx

を使用します。

たとえば、fishをデフォルトにする場合は次のように設定します。

{
    "terminal.integrated.defaultProfile.osx": "fish"
}

設定キーはmacosではなくosxである点に注意してください。

Linuxのデフォルトターミナルを変更する方法

Linuxでは、

terminal.integrated.defaultProfile.linux

を使用します。

zshをログインシェルとして登録する

たとえば、zshをログインシェルとして起動する場合は次のように設定できます。

{
    "terminal.integrated.profiles.linux": {
        "zsh (login)": {
            "path": "zsh",
            "args": [
                "-l"
            ]
        }
    },
    "terminal.integrated.defaultProfile.linux": "zsh (login)"
}

-lは、zshをログインシェルとして起動するためのオプションです。

ターミナルのフォントサイズを変更する方法

VSCodeでは、ターミナルの文字サイズをエディターとは別に設定できます。

settings.jsonで変更する

たとえば、文字サイズを16にする場合は次のように設定します。

{
    "terminal.integrated.fontSize": 16
}

ターミナルの文字が小さくて見づらい場合に便利です。

ターミナルのフォントを変更する方法

ターミナル専用のフォントも設定できます。

fontFamilyを設定する

たとえばCascadia Codeを使用する場合は、次のようにします。

{
    "terminal.integrated.fontFamily": "Cascadia Code"
}

指定したフォントがパソコンにインストールされていない場合は、期待どおりに表示されないことがあります。

ターミナルの行間を変更する方法

文字が詰まって見える場合は、ターミナルの行の高さを変更できます。

lineHeightを設定する

{
    "terminal.integrated.lineHeight": 1.2
}

値を大きくすると行間が広くなります。

フォントサイズとあわせて調整すると、読みやすい表示にできます。

ターミナルのスクロール履歴を増やす方法

大量のビルドログや実行結果を確認したい場合は、スクロール履歴を増やすと便利です。

scrollbackを設定する

{
    "terminal.integrated.scrollback": 10000
}

scrollbackには、ターミナルに保持する履歴行数を指定します。

必要以上に大きな値を設定する必要はありませんが、ログを頻繁に確認する場合は増やしておくと使いやすくなります。

ターミナルのカーソルを変更する方法

ターミナルのカーソル形状も変更できます。

ブロック型カーソルにする

{
    "terminal.integrated.cursorStyle": "block"
}

カーソルの見た目を自分の好みに合わせて変更できます。

Shell Integrationを設定する方法

VSCodeには「Shell Integration」という機能があります。

Shell Integrationを利用すると、VSCodeがターミナル内で実行されたコマンドやカレントディレクトリなどを認識しやすくなります。

Shell Integrationで利用できる機能

Shell Integrationを利用すると、次のような機能を活用できます。

  • コマンドの検出
  • コマンド間の移動
  • カレントディレクトリの検出
  • コマンド装飾
  • Quick Fix
  • Sticky Scrollとの連携

対応シェルでは、原則としてVSCodeがShell Integrationの自動有効化を試みます。

ただし、シェルのバージョンや起動方法、設定内容によっては、自動的に有効にならない場合があります。

Shell Integrationを無効にする

必要に応じて、次の設定で無効化できます。

{
    "terminal.integrated.shellIntegration.enabled": false
}

特別な理由がなければ、基本的には有効のままで問題ありません。

ユーザー設定とワークスペース設定を使い分ける方法

VSCodeの設定には、ユーザー設定やワークスペース設定など複数のスコープがあります。

ユーザー設定

ユーザー設定は、基本的にVSCode全体へ適用されます。

たとえば、すべてのプロジェクトでGit Bashを使いたい場合は、ユーザー設定に指定します。

ワークスペース設定

ワークスペース設定は、特定のプロジェクトだけに適用できます。

たとえば、

Web開発プロジェクト → Git Bash
Windows向け開発 → PowerShell
Linux系プロジェクト → WSL

のように使い分けられます。

Remote環境の設定にも注意する

Remote SSH、WSL、Dev Containersなどを利用している場合は、Remote側の設定が影響することがあります。

「ユーザー設定では正しく設定したのに反映されない」という場合は、ワークスペース設定やRemote設定を確認するとよいでしょう。

TaskやDebug用のターミナルを変更する方法

普段操作するターミナルと、VSCodeのTaskやDebugで使用するシェルを分けることもできます。

automationProfileを使用する

設定には、

terminal.integrated.automationProfile.<platform>

を使用します。

たとえばmacOSで、通常はfishを使い、TaskやDebugでは/bin/shを使用する場合は次のように設定できます。

{
    "terminal.integrated.defaultProfile.osx": "fish",
    "terminal.integrated.automationProfile.osx": {
        "path": "/bin/sh"
    }
}

複雑なシェル初期化処理がTaskやDebugへ影響している場合に役立ちます。

特定のターミナルをショートカットで開く方法

VSCodeでは、特定のターミナルプロファイルをショートカットキーから直接起動することもできます。

keybindings.jsonを設定する

たとえば、Git Bashをショートカットで開く場合は次のように設定できます。

{
    "key": "ctrl+shift+t",
    "command": "workbench.action.terminal.newWithProfile",
    "args": {
        "profileName": "Git Bash"
    }
}

これにより、指定したキーを押すだけでGit Bashを起動できます。

ただし、すでに別のコマンドへ割り当てられているショートカットと競合しないように注意してください。

ターミナル設定が反映されない場合の対処法

設定を変更しても反映されない場合は、いくつかの原因が考えられます。

新しいターミナルを開く

既存のターミナルには、新しい起動設定が反映されない場合があります。

設定変更後は、現在のターミナルを終了し、新しいターミナルを開いてください。

プロファイル名が正しいか確認する

たとえば、

{
    "terminal.integrated.defaultProfile.windows": "My PowerShell"
}

と指定している場合は、「My PowerShell」というプロファイルが実際に登録されている必要があります。

存在しない名前を指定すると、正常に起動できない原因になります。

pathが正しいか確認する

独自プロファイルでpathを指定している場合は、その実行ファイルが存在するか確認します。

たとえば、

{
    "path": "C:\\example\\bash.exe"
}

というパスが実際に存在しなければ、ターミナルは起動できません。

ユーザー設定とワークスペース設定を確認する

ユーザー設定ではPowerShellを指定していても、ワークスペース設定側でGit Bashが指定されている場合があります。

設定画面で、

@modified terminal.integrated

と検索すると、変更済みのターミナル関連設定を確認しやすくなります。

Remote環境を使用している場合は、Remote設定も確認しましょう。

Windowsでおすすめのターミナル設定例

WindowsでGit Bashを普段使いする場合は、まずGUIからGit Bashをデフォルトプロファイルに設定する方法が簡単です。

さらに表示設定も調整する場合は、たとえば次のように設定できます。

{
    "terminal.integrated.defaultProfile.windows": "Git Bash",
    "terminal.integrated.fontSize": 14,
    "terminal.integrated.fontFamily": "Cascadia Code",
    "terminal.integrated.scrollback": 10000,
    "terminal.integrated.shellIntegration.enabled": true
}

Git BashやCascadia Codeなどは、パソコンにインストールされている必要があります。

VSCodeのターミナル設定で覚えておきたい項目

主な設定項目をまとめると、次のようになります。

設定項目用途
terminal.integrated.defaultProfile.windowsWindowsの既定ターミナル
terminal.integrated.defaultProfile.osxmacOSの既定ターミナル
terminal.integrated.defaultProfile.linuxLinuxの既定ターミナル
terminal.integrated.profiles.windowsWindowsのターミナルプロファイル
terminal.integrated.profiles.osxmacOSのターミナルプロファイル
terminal.integrated.profiles.linuxLinuxのターミナルプロファイル
terminal.integrated.fontSizeターミナルの文字サイズ
terminal.integrated.fontFamilyターミナルのフォント
terminal.integrated.lineHeight行の高さ
terminal.integrated.scrollbackスクロール履歴
terminal.integrated.shellIntegration.enabledShell Integrationの有効・無効
terminal.integrated.automationProfile.*TaskやDebug用シェル

まとめ

VSCodeのターミナル設定を変更するもっとも簡単な方法は、「Terminal: Select Default Profile」から使用したいシェルを選択することです。

WindowsではPowerShell、Command Prompt、Git Bash、WSLなどを利用でき、macOSやLinuxではbash、zsh、fishなどを設定できます。

より細かくカスタマイズしたい場合は、settings.jsonで、

terminal.integrated.defaultProfile.*
terminal.integrated.profiles.*

などを設定します。

さらに、フォントサイズ、フォント、行間、スクロール履歴、Shell Integration、TaskやDebug用のシェルなども変更できます。

ターミナル設定を自分の開発環境や作業スタイルに合わせて調整することで、VSCodeでの開発作業をより快適に進められるようになります。

以上、VSCodeのターミナル設定を変更する方法についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次