Windows Terminalのsettings.json
への設定
"commandline": "C:\\cygwin64\\bin\\env.exe CHERE_INVOKING=t /bin/bash --login -i",
"icon": "C:\\cygwin64\\Cygwin-Terminal.ico",
"startingDirectory": "%HOME%"
"name"
や"hidden"
はお好みで。
bashのオプション --login
は、bashをログインシェルとして起動させる。そうしないと /etc/profile が実行されず、環境変数 PATH などがセットされない。
オプション -i
は、起動するbashを対話的なシェルとする。
bashを直接起動せず、envを使ってCHERE_INVOKING
をセットした上でbashを起動するのは、/etc/profile でカレントディレクトリが ${HOME} にされてしまうのを防ぐため。
この設定で、エクスプローラーの右クリックメニュー「Open in Windows Terminal」で起動すると、そのフォルダでbashが起動する。
"startingDirectory"
には、それ以外の場合の初期ディレクトリを設定しておく。
確認バージョン
Windows Terminal バージョン: 1.7.1033.0
BASH_VERSION: 4.4.12(3)-release x86_64-unknown-cygwin
Visual Studio Codeのsettings.json
への設定
Visual Studio Code のsettings.json
の設定も同様でよい。
{
"terminal.integrated.profiles.windows": {
"Cygwin bash": {
"path": "C:\\cygwin64\\bin\\env.exe",
"args": [
"CHERE_INVOKING=t",
"/bin/bash",
"--login",
"-i"
]
}
},
"terminal.integrated.defaultProfile.windows": "Cygwin bash"
}
参考リンク
Windows ターミナルの全般的プロファイル設定 | Microsoft Docs
Integrated Terminal in Visual Studio Code