配置 MSYS2 作为 Windows Terminal 的默认 shell

海云青飞 使用 Windows Terminal 的重要原因是在 Windows Explorer 任意目录右键,可以 Open in Terminal,再把 MSYS2 shel 作为 WT 的默认 shell,就可以在当前目录执行 Msys shell 命令

Windows 10 ,按 Windows 键,搜索 windows terminal,如果本机尚未安装,就可按照提示安装

Windows Terminal 创建新 shell

运行 Windows Terminal 后,按照下面步骤新增 Msys2 shell

  • 点击标题栏右边的向下指示符,选择 Settings
  • 左边侧栏,下边,点击 Add a new profile
  • 选择一个已经存在的 shll,点击 Duplicate,即基于原存 shell 创建新 shell
  • 主要设置项
    • Name: 如 MSYS / MSYS2
    • Command line: C:/msys64/msys2_shell.cmd -defterm -here -no-start -use-full-path -msys
    • Starting directory: C:/msys64/home/%USERNAME%
    • Icon: C:/msys64/msys2.ico
  • 点击 Save 保存

如果 Msys2 是用 scoop 安装的,则将上面路径中 C:/msys64 替换为类似下面:

C:/Users/tuenhai.com/scoop/apps/msys2/current

命令选项解释

  • -msys 将启动 MSYS 环境

  • -use-full-path-full-path

    使 msys2 可以使用当前 shell 中的 path(在 wt 中相当于cmd 拉起的 msys2,即添加了 Windows PATH)。默认 MSYS2_PATH_TYPE 是 minimal

  • -no-start 不使用 start 命令,并且返回登录 shell 的 errorcode 作为批处理的 errorcode

  • -defterm 设置终端类型,没有设置会使用 mintty

  • -here 使用当前目录作为工作目录,防止登录脚本将工作目录更改为用户的主目录。不同的 shell 表现不同,目前 fish 没有这个参数也是这个行为(zsh 未测试)

Windows Terminal 设置默认 shell

  • Windows Terminal 的 Settings 界面,左侧边栏,点击上边的 Startup
  • Default Profile,从下拉列表选择
  • Save

相关内容

2024-09-16


独立思考最难得,赞赏支持是美德!(微信扫描下图)