--- title: "[VS Code]用Shell launcher建立Shell選項(以MSYS2為例)" description: "[VS Code]用Shell launcher建立Shell選項(以MSYS2為例)" # image: https://hackmd.io/screenshot.png tags: VS Code,MSYS2 # robots: noindex, nofollow langs: zh-hant --- # [VS Code]用Shell launcher建立Shell選項(以MSYS2為例) 要讓VS Code終端中啟動多種Shell,可以安裝[Shell launcher]擴充功能並進行配置來達成。 他提供了`shellLauncher.launch`的命令,能顯示一個快速選擇項,允許選擇已配置的終端Shell。 在`setting.json`中,每個OS都有不同的設定鍵名 - `shellLauncher.shells.linux`: For Linux - `shellLauncher.shells.osx`: For macOS - `shellLauncher.shells.windows`: For Window ## 以MSYS2為例 在VS Code的喜好設定中,加入以下設定,即可新增MSYS2三個子系統的Shell: ```json { "shellLauncher.shells.windows": [ { "shell": "C:\\Windows\\System32\\cmd.exe", "label": "cmd" }, { "shell": "D:\\msys64\\usr\\bin\\bash.exe", "label": "MSYS2 (MSYS)", "launchName": "MSYS2 (MSYS)", "args": ["--login", "-i"], "env": { "MSYSTEM": "MSYS", "CHERE_INVOKING": "1", "MSYS2_PATH_TYPE": "inherit" } }, { "shell": "D:\\msys64\\usr\\bin\\bash.exe", "label": "MSYS2 (MINGW64)", "launchName": "MSYS2 (MINGW64)", "args": ["--login", "-i"], "env": { "MSYSTEM": "MINGW64", "CHERE_INVOKING": "1", "MSYS2_PATH_TYPE": "inherit" } }, { "shell": "D:\\msys64\\usr\\bin\\bash.exe", "label": "MSYS2 (MINGW32)", "launchName": "MSYS2 (MINGW32)", "args": ["--login", "-i"], "env": { "MSYSTEM": "MINGW32", "CHERE_INVOKING": "1", "MSYS2_PATH_TYPE": "inherit" } } ] } ``` [Shell launcher]: https://marketplace.visualstudio.com/items?itemName=Tyriar.shell-launcher