最近组了台台式机,日常主力机从Mac OS切到了Windows,Windows下的终端之前一直是被吐槽的对象,不过自从有了WSL后,Windows下的开发体验有了极大的提升,终端体验已经完全能赶得上Mac、Linux。贴两张调整后的终端截图:


安装ho my posh
直接在Windows store搜索安装即可

修改配置文件
安装完成后打开Windows terminal,命令行输入$PROFILE获取配置文件位置,类似Linux的.zshrc、.bashrc
>> $PROFILE
C:\Users\wow\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
直接使用notepad编辑$PROFILE文件,若文件不存在直接新建
❯❯ notepad C:\Users\wow\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
输入如下内容
# 终端主题,可以修改montys.omp.json比如改成gmay.omp.json切换其他主题
C:\\Users\\wow\\AppData\\Local\\Programs\\oh-my-posh\\bin\\oh-my-posh.exe init pwsh --config $env:POSH_THEMES_PATH\montys.omp.json | Invoke-Expression
# 插件类似zsh的各种插件
Import-Module posh-git # 引入 posh-git
Import-Module PSReadLine # 历史命令联想
# 设置预测文本来源为历史记录
Set-PSReadLineOption -PredictionSource History
# 设置 Tab 为菜单补全和 Intellisense
Set-PSReadLineKeyHandler -Key "Tab" -Function MenuComplete
# 每次回溯输入历史,光标定位于输入内容末尾
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
# 设置向上键为后向搜索历史记录
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
# 设置向下键为前向搜索历史纪录
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
安装字体
保存重新载入后,再打开就会发现主题已修改,但有些乱码字符,很明显是某些字体没有安装,如果在Linux、Mac下折腾过终端对这些肯定都很熟悉。
安装字体, 可以直接在终端使用oh-my-posh安装,可能需要代理
# 安装字体
❯❯ oh-my-posh font install
# 安装失败,如果有代理,可以设置代理后尝试重试
❯❯ set HTTP_PROXY=http://ip:port
❯❯ set HTTPS_PROXY=http://ip:port
如果安装失败也可以直接浏览器下载字体解压安装,比如安装JetBrainsMono可以直接去github下载字体包,下载后解压安装
进入终端配置,修改字体和主题
进入power shell -> 外观
修改想要的主题和新安装的字体,保存后乱码问题就解决了,如果没解决换其他字体

安装插件
上面说到安装了两个插件,进入终端的时候会提示插件没有安装可以执行以下命令安装
❯❯ Install-Module PSReadLine -Force
❯❯ Install-Module posh-git -Force
至此Windows-terminal基本调教完成,看着舒服多了。
wsl安装oh-my-zsh
最后把wsl ubuntu子系统切成zsh并安装oh-my-zsh,进入Linux终端,安装zsh
# 安装zsh
$ sudo apt intall zsh
# 切换当前用户默认shell
$ chsh -s /usr/bin/zsh
后续安装zsh可以参考我之前写的在Mac下安装zsh的文章