MSYS 2
如果用习惯了 Linux 上的 POSIX 兼容的命令行工具, 在切换到 CMD/Powershell 的编码风格无疑是痛苦的, 经典的方案是 MinGW/Cygwin 这样的转换工具, 这里我们使用一个比较新的类 MinGW 工具 MSYS2
, 它不仅包含了 MinGW, 也有自己的一套 Linux 虚拟环境, 还从著名的 Arch Linux 借用了包管理器 pacman
, 个人感觉比 MinGW 的包管理器 (类 apt
)好用不是一点点, 也有国内的镜像可供选择.
MSYS 2: Installation
MSYS2
首页上就有下载链接, 直接下载安装即可.- 安装后就可以在开始菜单里找到 MSYS 2 虚拟环境了 (还附送了 MinGW 32/64)
- 但是谁会喜欢黑底白字还是宋体的英文呢? 建议配合 Windows Terminal 食用, 这里有和 WT 配合的文档, 具体来讲, 在 Windows Terminal 里的设置中如下的修改, 不用重启 WT 就能在其中新建 MSYS2标签页了!
"defaultProfile": "{17da3cac-b318-431e-8a3e-7fcdefe6d114}",
"profiles": {
"list":
[
// ...(你原来的shells, 如CMD/PS)
{
"guid": "{17da3cac-b318-431e-8a3e-7fcdefe6d114}",
"name": "MINGW64 / MSYS2",
"commandline": "C:/msys64/msys2_shell.cmd -defterm -here -no-start -mingw64",
"startingDirectory": "C:/msys64/home/%USERNAME%",
"icon": "C:/msys64/mingw64.ico",
"fontFace": "Lucida Console",
"fontSize": 9
},
{
"guid": "{2d51fdc4-a03b-4efe-81bc-722b7f6f3820}",
"name": "MINGW32 / MSYS2",
"commandline": "C:/msys64/msys2_shell.cmd -defterm -here -no-start -mingw32",
"startingDirectory": "C:/msys64/home/%USERNAME%",
"icon": "C:/msys64/mingw32.ico",
"fontFace": "Lucida Console",
"fontSize": 9
},
{
"guid": "{71160544-14d8-4194-af25-d05feeac7233}",
"name": "MSYS / MSYS2",
"commandline": "C:/msys64/msys2_shell.cmd -defterm -here -no-start -msys",
"startingDirectory": "C:/msys64/home/%USERNAME%",
"icon": "C:/msys64/msys2.ico",
"fontFace": "Lucida Console",
"fontSize": 9
},
// ...
]
}
- 现在你就可以在 WT 中打开并使用 MSYS 2 了! Give it a try!
- Windodws 中设置环境 HOME 到用户目录
- Note: 在 MSYS 2 (MinGW 同样)中, 你的原磁盘文件都会被翻译成 Linux 风格的路径!
- e.g.:
C:\path\to\file => /c/path/to/file
- e.g.:
Pacman 换源
为了更快的获得软件包, 建议设置 pacman
镜像, 可以使用清华的 TUNA镜像或者是 BFSU 的 TUNA 镜像的镜像
简而言之, 就是在 pacman 的 mirror list 里加入对应的镜像源
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch`
管理员模式并且刷新 `pacman` 缓存:
pacman -Sy
fish Shell
fish
是一个现代化的用户友好的 shell, 总之就是脚踢 bash
, 拳打 zsh
!
Installation
- 安装
fish
pacman -S fish
- 将默认的 shell 从
bash
改成fish
, 修改 MSYS 2 的启动脚本, 它应该在.../msys64安装路径/msys2_shell.cmd
这个位置:
set "LOGINSHELL=fish" # 原来是bash
- 并且你可能会想把 Windows 原来的 PATH 导入到 Linux 环境里, 同样修改上述启动脚本:
set MSYS2_PATH_TYPE=inherit # 原来是被注释的
- 安装
git
, 这一步可能是可选的, 因为oh-my-fish
可能需要非 Windows 的 git 实现.
pacman -S git
- 进一步, 你可能需要配置
git
的全局代理, 否则无法 clone repository
git config --global http.proxy yourproxy:port
- 安装
oh-my-fish
, 一个fish
的简易包管理器
curl -L https://get.oh-my.fish | fish
-
你基本上配置好了
fish
了! 现在你有了omf
(即 oh-my-fish 的缩写), 可以用来安装一些主题和插件!
omf install agnoster
omf theme agnoster
其他软件
- vim
- emacs
- fish
- make
- git