MSYS2を使う設定

最終更新日: 2021-03-15
  • settings.json に次を足す
1
2
3
4
5
6
7
8
"terminal.integrated.shell.windows": "C:\\msys64\\msys2_shell.cmd",
"terminal.integrated.shellArgs.windows": [
    "-defterm",
    "-here",
    "-use-full-path",
    "-no-start",
    "-mingw64"
],
  • 意味合い
    • -defterm: ターミナルのタイプ
    • -here: カレントディレクトリをワーキングディレクトリとする
      • CHERE_INVOKING=1 と同じ
    • -use-full-path: Windows の PATH を継承する
      • MSYS2_PATH_TYPE=inherit と同じ
    • -no-start: msys2_shell.cmdLOGINSHELL を直に起動する(これがない場合 start で起動する)
    • -mingw64: シェルのタイプ
  • 余談
    • bash.exe を直蹴りする場合と異なり、-l は不要
    • これは msys2_shell.cmd の中で --login を付けてくれてる為
  • ヘルプ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
Usage:
    msys2_shell.cmd [options] [login shell parameters]

Options:
    -mingw32 | -mingw64 | -msys[2]   Set shell type
    -defterm | -mintty | -conemu     Set terminal type
    -here                            Use current directory as working
                                     directory
    -where DIRECTORY                 Use specified DIRECTORY as working
                                     directory
    -[use-]full-path                 Use full current PATH variable
                                     instead of trimming to minimal
    -no-start                        Do not use "start" command and
                                     return login shell resulting
                                     errorcode as this batch file
                                     resulting errorcode
    -shell SHELL                     Set login shell
    -help | --help | -? | /?         Display this help and exit

Any parameter that cannot be treated as valid option and all
following parameters are passed as login shell command parameters.